Avatar billede ibleif Nybegynder
18. april 2005 - 16:55 Der er 9 kommentarer og
1 løsning

Optimering (Indexer?)

Hejsa alle...

Jeg har en tabel som er simpelt opbygget..
ID - autonummeringsfelt
Tekst - char(255)

Jeg skal lave en del kald på at se, om en bestemt tekst-streng findes i tabellen (i tekst-feltet), og det tager simpelthen for lang tid. De tekst-strenge som der skal testes på er ofte op til de 255 karakter lange.

Tabellen indeholder er ca. 10 MB stor og indeholder 40000+ poster.

Har hørt lidt om indexer, er det noget der kan hjælpe mig? Har mange flere SELECT end INSERT, som vist skulle være godt ved indexer? (Ved ikke rigtigt noget om det!) Har ikke rigtigt mulighed for at påvirke serverens hardware eller lign, da det er en hosted løsning.

Nogen gode foreslag?

// Ibleif
Avatar billede fsconsult.dk Nybegynder
18. april 2005 - 17:02 #1
det ville hjælpe at vide hvilken database vi taler om ... MySQL, MS SQL eller noget 3. ?
Avatar billede arne_v Ekspert
18. april 2005 - 17:40 #2
Hvis dit søgeord står først i Tekst feltet så kan et index på det hjælpe, men
ellers skal du nok over i noget fulltext (forudsat at din database understøtter
det)
Avatar billede ibleif Nybegynder
18. april 2005 - 19:32 #3
Det er en MySQL database. Troede det var et generelt db-problem dette her. Derfor jeg oprettede i denne kategori.

Versionen på databasen er: 3.23.58, hvis det betyder noget.

arne_v: Det er ikke et søgeord som en del af teksten, det er altid det som jeg skal bruge = HELE tekst-feltet. (Hvis du forstår!?)

// Ibleif
Avatar billede arne_v Ekspert
18. april 2005 - 19:37 #4
så skal du bare have et index på det felt
Avatar billede ibleif Nybegynder
18. april 2005 - 20:27 #5
Det lyder godt! Prøver jeg i morgen!

Er der nogen der kort kan forklare hvad index gør og hvordan det hjælper? Eller det var måske en idé til en ny artikel arne_v ?? :D

// Ibleif
Avatar billede arne_v Ekspert
18. april 2005 - 20:39 #6
Du ved godt hvordan et index virker.

Du skal finde noget om CREATE INDEX i din MySQL bog. Du har 2 muligheder:
1) bladre bogen igennem fra side 1 til 1000 og lede efter det
2) slå op i index og se at det står på side 631 og så slå op på den

Et index på et felt fungerer fungerer på stort set samme måde. En struktur
hvor du hurtigt kan finde en bestemt værdi og oplysninger om hvor resten af
data ligger i tabellen.
Avatar billede ibleif Nybegynder
19. april 2005 - 10:23 #7
Ok.. takker! Jeg prøver at lege med det!

Vær sød at ligge et svar, så er der point....

// Ibleif
Avatar billede arne_v Ekspert
19. april 2005 - 10:57 #8
kommer her
Avatar billede arne_v Ekspert
30. april 2005 - 17:00 #9
så mangler du bare at acceptere svaret
Avatar billede ibleif Nybegynder
04. august 2005 - 11:59 #10
Det tog jo ikke speciel lang tid! :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester