Schrift
[thread]3673[/thread]

2 Fragen: 1: Wie erhöhe ich einen Wert um 1: 2: Wie kann ich eine ganze DB sichern? (Seite 3)



<< |< 1 2 3 4 >| >> 38 Einträge, 4 Seiten
.mike.
 2006-04-07 19:25
#34217 #34217
User since
2006-04-07
26 Artikel
BenutzerIn
[default_avatar]
zur ersten frage: gehts nicht auch einfacher mit AUTOINCREMENT ?
olruebe01
 2006-04-08 13:07
#34218 #34218
User since
2006-01-19
192 Artikel
BenutzerIn
[default_avatar]
@mike: Sagt mir nichts (Anfänger). Vielleicht kommt von den anderen noch was.

Muss ich eigentlich auch auf die Spalte einen Index setzen, nach der ich sortieren möchte? Ich dachte bisher, nur auf die Zeilen, die den Suchwert beinhalten. Aber wenn ich die Sortierung mit rein nehme, dauert die Abfrage ERHEBLICH länger. Das "Sortierfeld" hat bisher keinen Index.
Relais
 2006-04-08 14:26
#34219 #34219
User since
2003-08-06
2261 Artikel
ModeratorIn
[Homepage] [default_avatar]
[mysql]AUTOINCREMENT[/mysql]
Erst denken, dann posten --
27. Deutscher Perl- u. Raku -Workshop 12. bis 14. Mai 2025 in München.

Winter is Coming
Relais
 2006-04-08 14:30
#34220 #34220
User since
2003-08-06
2261 Artikel
ModeratorIn
[Homepage] [default_avatar]
[quote=olruebe01,08.04.2006, 11:07]Muss ich eigentlich auch auf die Spalte einen Index setzen, nach der ich sortieren möchte?[/quote]
Ein gemeinsamer Index über Suchfeld und Sortierfeld wäre vielleicht am sinnvollsten... bin mir dabei nicht ganz sicher, aber manche Datenbanken (MySQL...) optimieren maximal mit einem einzigen Index, daher könnte ein kokmbinierter Index es da vielleicht retten.

Du kannst je nach Datenbank auch auf Dein Sortierfeld einen CONSTRAINT machen, der die ganze Tabelle immer nach diesem Sortierfeld sortiert hält. Das verlangsamt das Schreiben auf die Tabelle etwas, aber dann brauchst Du später nicht mehr sortieren.
Erst denken, dann posten --
27. Deutscher Perl- u. Raku -Workshop 12. bis 14. Mai 2025 in München.

Winter is Coming
bloonix
 2006-04-09 12:23
#34221 #34221
User since
2005-12-17
1615 Artikel
HausmeisterIn
[Homepage]
user image
[quote=olruebe01,08.04.2006, 11:07]Muss ich eigentlich auch auf die Spalte einen Index setzen, nach der ich sortieren möchte?[/quote]
nicht, wenn die tabelle so klein ist, dass ein full-table-scan
schneller ist, als über einen index. wo die richtwerte für den
performanten einsatz von indizes einer mysql-datenbank liegen,
weiß ich leider nicht.
What is a good module? That's hard to say.
What is good code? That's also hard to say.
One man's Thing of Beauty is another's man's Evil Hack.
Relais
 2006-04-09 13:49
#34222 #34222
User since
2003-08-06
2261 Artikel
ModeratorIn
[Homepage] [default_avatar]
[quote=opi,09.04.2006, 10:23][quote=olruebe01,08.04.2006, 11:07]Muss ich eigentlich auch auf die Spalte einen Index setzen, nach der ich sortieren möchte?[/quote]
nicht, wenn die tabelle so klein ist, dass ein full-table-scan
schneller ist, als über einen index. wo die richtwerte für den
performanten einsatz von indizes einer mysql-datenbank liegen,
weiß ich leider nicht.[/quote]
Faustregel: "Ein Index ist erst dann sinnvoll, wenn die Anzahl der verschiedenartigen Werte in einer Spalte größer als 7 ist."

...so sagte mir ein Sybase-Optimierer vor äh - 7 - Jahren.
Erst denken, dann posten --
27. Deutscher Perl- u. Raku -Workshop 12. bis 14. Mai 2025 in München.

Winter is Coming
bloonix
 2006-04-09 14:07
#34223 #34223
User since
2005-12-17
1615 Artikel
HausmeisterIn
[Homepage]
user image
[quote=Relais,09.04.2006, 11:49]Faustregel: "Ein Index ist erst dann sinnvoll, wenn die Anzahl der verschiedenartigen Werte in einer Spalte größer als 7 ist."

...so sagte mir ein Sybase-Optimierer vor äh - 7 - Jahren.[/quote]
Unter Oracle gibt es beispielsweise Bitmap-Indizes, die sich für
Spalten eignen, auf denen es sehr wenig unterschiedliche Werte
gibt, wie zum Beispiel M(männlich) und W(weiblich) oder J(ja)
und N(nein).

Ein Bitmap-Index lohnt sich erst ab mehreren tausend Zeilen.
Ein normaler Index für eindeutige Werte kann schon ab 1.000
Zeilen die Abfragezeiten verkürzen, obwohl wir bei "uns" sogar erst
zwischen 10.000 und 100.000 Zeilen Indizes anlegen.\n\n

<!--EDIT|opi|1144578320-->
What is a good module? That's hard to say.
What is good code? That's also hard to say.
One man's Thing of Beauty is another's man's Evil Hack.
bloonix
 2006-04-09 14:18
#34224 #34224
User since
2005-12-17
1615 Artikel
HausmeisterIn
[Homepage]
user image
[quote=Relais,09.04.2006, 11:49]...so sagte mir ein Sybase-Optimierer vor äh - 7 - Jahren.[/quote]
dann gehörst du ja mittlerweile zum "alten eisen" ;-)\n\n

<!--EDIT|opi|1144578112-->
What is a good module? That's hard to say.
What is good code? That's also hard to say.
One man's Thing of Beauty is another's man's Evil Hack.
pq
 2006-04-09 19:34
#34225 #34225
User since
2003-08-04
12209 Artikel
Admin1
[Homepage]
user image
[quote=Relais,09.04.2006, 11:49]Faustregel: "Ein Index ist erst dann sinnvoll, wenn die Anzahl der verschiedenartigen Werte in einer Spalte größer als 7 ist."

...so sagte mir ein Sybase-Optimierer vor äh - 7 - Jahren.[/quote]
und es kommt auf die verteilung an. wenn du die werte a,b,c,d,e,f,g hast
und a-f nur selten vorkommen, g aber ganz häufig, bringt dir der index
bei der suche nach g nichts.

indizes sind eine wissenschaft für sich. du musst zum einen die verteilung
der werte berücksichtigen, du musst wissen, wie häufig nach was
abgefragt wird, und du musst wissen, wie häufig inserts im verhältnis
zu selects gemacht werden. wenn du häufig inserts hast, solltest du
mit indizes sparsam haushalten.\n\n

<!--EDIT|pq|1144597291-->
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
Relais
 2006-04-09 20:09
#34226 #34226
User since
2003-08-06
2261 Artikel
ModeratorIn
[Homepage] [default_avatar]
[quote=pq,09.04.2006, 17:34]wenn du häufig inserts hast, solltest du mit indizes sparsam haushalten.[/quote]
jo :)

Mann kann aber auch sowas notfalls noch mit Prozeduren hacken (falls die Datenbank das anbietet), um für Inserts nicht die Tabelle zu lähmen, dennoch schnell drauf zu suchen.
Erst denken, dann posten --
27. Deutscher Perl- u. Raku -Workshop 12. bis 14. Mai 2025 in München.

Winter is Coming
<< |< 1 2 3 4 >| >> 38 Einträge, 4 Seiten



View all threads created 2006-04-06 10:31.