ďťż
 
Przyspieszenie wyszukiwania ? ďťż
 
Przyspieszenie wyszukiwania ?
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

Przyspieszenie wyszukiwania ?



Borgson - 13-11-2006 00:45
Przyspieszenie wyszukiwania ?
  Witam serdecznie.
Mam nastepujacy problem.

Mamy serwer MySQL 5.0

Problem wyglada nastepujaco:
mam tabele table_main , ktora zawiera 1,5 mln rekordow i pola 2 wazne
dla mnie :
pole1, pole2. Pierwsze to pole varchar 255, drugie to pole Text.

Teraz tak, pole1 moze przyjac jedna z 8000 wartosci, takze mam w tym
miejscu zalozony index (b drzewo chyba)

Pole2 to Text i jest od 400B do 1KB.

Druga tabela ma 122 rekordy i teraz tak.
Dla kazdego z tych 122 rekordow sprawdzam pierwsza tabele i szukam w
pole2 wartosci z pierwszej tabeli, jezeli znajde to wpisuje do nowej
tabeli pole1 z 1 tabeli i id rekordu z 2 tabeli.
Niestety to zapytanie dziala strasznie wolno :(

Ostatnio jak odpalilem strone ktora miala to wykonac zautomatyzowane
zadanie dla 1,5 mln rekordow to zrezygnowalem po 30 minutach :(

Nie wiem jak to inaczej ugryzc,

aha, zalozylem index pelnotekstowy na pole2 ale to tylko pogorszylo
sprawe :(
Chyba ze robie cos zle.

Ponizej moje komendy :
"INSERT INTO ww1_231006_small (`datetime`,`datehour`,`cs-uri-stem`,
`time-taken`) SELECT t.`datetime`, t.`datehour`, t.`cs-uri-stem`,
t.`time-taken` FROM ww1_231006_main AS t WHERE t.`cs(cookie)` LIKE
'%username%';"

SELECT `datetime`,`datehour`,`cs-uri-stem`,`time-taken` FROM
ww1_231006_main WHERE MATCH (`cs(cookie)`) AGAINST ('%username%');

Prosze o wszelka pomoc.

Pozdrawiam, Piotr





Mikolaj Rydzewski - 13-11-2006 00:45

  Borgson <mrquesti@wp.pl> wrote:

> Ponizej moje komendy :
> "INSERT INTO ww1_231006_small (`datetime`,`datehour`,`cs-uri-stem`,
> `time-taken`) SELECT t.`datetime`, t.`datehour`, t.`cs-uri-stem`,
> t.`time-taken` FROM ww1_231006_main AS t WHERE t.`cs(cookie)` LIKE
> '%username%';"

Tak na pierwszy rzut oka to pozbadz sie like '%username%' bo to
najlepszy sposob na zarzniecie bazy wlasnie.

--
Mikolaj Rydzewski <miki@ceti.pl> http://ceti.pl/~miki/
PGP KeyID: 8b12ab02
There are three kinds of people: men, women, and unix.




Filip Rembiałkowski - 13-11-2006 00:45

  Borgson napisał(a):

> mam tabele table_main , ktora zawiera 1,5 mln rekordow i pola 2 wazne
> dla mnie :
> pole1, pole2. Pierwsze to pole varchar 255, drugie to pole Text.
>
> Teraz tak, pole1 moze przyjac jedna z 8000 wartosci, takze mam w tym
> miejscu zalozony index (b drzewo chyba)

jeśli to stały zbiór wartości to zmień typ na ENUM.
wiele rzeczy będzie szybciej działać.




Paweł Matejski - 13-11-2006 00:46

  Borgson wrote:
> Witam serdecznie.
> Mam nastepujacy problem.
>
> Mamy serwer MySQL 5.0
>
> Problem wyglada nastepujaco:
> mam tabele table_main , ktora zawiera 1,5 mln rekordow i pola 2 wazne
> dla mnie :
> pole1, pole2. Pierwsze to pole varchar 255, drugie to pole Text.
>
> Teraz tak, pole1 moze przyjac jedna z 8000 wartosci, takze mam w tym
> miejscu zalozony index (b drzewo chyba)
>
> Pole2 to Text i jest od 400B do 1KB.
>
> Druga tabela ma 122 rekordy i teraz tak.
> Dla kazdego z tych 122 rekordow sprawdzam pierwsza tabele i szukam w
> pole2 wartosci z pierwszej tabeli, jezeli znajde to wpisuje do nowej
> tabeli pole1 z 1 tabeli i id rekordu z 2 tabeli.
> Niestety to zapytanie dziala strasznie wolno :(
>
> Ostatnio jak odpalilem strone ktora miala to wykonac zautomatyzowane
> zadanie dla 1,5 mln rekordow to zrezygnowalem po 30 minutach :(
>
> Nie wiem jak to inaczej ugryzc,
>
> aha, zalozylem index pelnotekstowy na pole2 ale to tylko pogorszylo
> sprawe :(
> Chyba ze robie cos zle.

Tu piszesz pole1, pole2, a niżej ich jakoś nie widzę.

> Ponizej moje komendy :
> "INSERT INTO ww1_231006_small (`datetime`,`datehour`,`cs-uri-stem`,
> `time-taken`) SELECT t.`datetime`, t.`datehour`, t.`cs-uri-stem`,
> t.`time-taken` FROM ww1_231006_main AS t WHERE t.`cs(cookie)` LIKE
> '%username%';"
>
> SELECT `datetime`,`datehour`,`cs-uri-stem`,`time-taken` FROM
> ww1_231006_main WHERE MATCH (`cs(cookie)`) AGAINST ('%username%');

cs(cookie) to pole z () w nazwie?

--
P.M.





Borgson - 13-11-2006 00:46

  > Tak na pierwszy rzut oka to pozbadz sie like '%username%' bo to
> najlepszy sposob na zarzniecie bazy wlasnie.

no niestety właśnie muszę przeszukać to pole i właśnie niestetyw
taki sposób :(

> jeśli to stały zbiór wartości to zmień typ na ENUM.
> wiele rzeczy będzie szybciej działać.

Zaraz tego spróbuję, wielkie dzięki, mam nadzieję że pomoże :]

> Tu piszesz pole1, pole2, a niżej ich jakoś nie widzę.

pole1 i pol2 były pomocniczym opisie nazwy pola ... z resztą nazwa
pola nie ma nic do rzeczy do wyszukiwania więc nie za bardzo widze w
jaki sposób twoje pytania mogą mi pomóc :/ ?

> cs(cookie) to pole z () w nazwie?

Jakie to ma znaczenie :) ?

Dzieki i pozdrawiam, Piotr
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    [mysql] Wyszukanie =?ISO-8859-2?Q?rekord=F3w=28powiazane_tabel?==?ISO-8859-2?Q?e=29?= [MySQL/PHP] Wyszukiwanie rekordu przez kolumnę wskazaną przez zmienną =?iso-8859-2?Q?[MS_SQL]Najcz=EAsciej_wyszukiwane_frazy?= Re: [mysql] wyszukiwanie =?ISO-8859-2?Q?ca=B3ych_hasel?= Oracle SQL Developer - Wyszukiwanie w calej bazie [PostgreSQL] wyszukiwanie przy sporej ilosci danych Wyszukiwanie "do daty" w zakresie dat i ID [MySQL] Dostaję podwójny wynik wyszukiwania. Co jest ? wyszukiwanie pełnotekstowe full-text - problemy Zapytanie SQL, wyszukiwanie strony tablicy
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • bajkomoda.xlx.pl
  • Cytat

    Decede mihi sole - nie zasłaniaj mi słonca.
    Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści
    Hoc fac - tak czyń.
    A tergo - od tyłu; z tyłu.
    I czarne włosy posiwieją. Safona

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com