sziasztok!
nem éppen linux téma, de szerintem sokan vannak ezen az oldalon, akik foglalkoztak/nak programozással, + nem ismerek segítőkészebb közösséget, úgyhogy itt kérdezek :)
szóval az a kérdésem, h mysql-ben van egy táblában 50 karakteres szövegmezőm, 14000 sorral. ilyen táblából van ~10db.
szóval ebben a szövegmezőben szeretnék keresni, de iszonyatosan lassú. hogy lehet indexelni, vagy optimalizálni a keresést (most LIKE fv van, ami azért nem egy sebességbajnok önmagában sem)?
egyébként is érdekel a téma, oracle-s könyvem van, abban van indexelés, de valaki le tudná írni röviden és világosan, h pontosan hogy indexel és mit egy szövegen?
előre is köszönöm a segítséget!
üdv: gábor
- 1083 megtekintés
Hozzászólások
"szóval ebben a szövegmezőben szeretnék keresni, de iszonyatosan lassú. hogy lehet indexelni, vagy optimalizálni a keresést (most LIKE fv van, ami azért nem egy sebességbajnok önmagában sem)?"
en ugyan PostgreSQL-t hasznalok, de talan
(es ebben kicsit sem vagyok biztos), MySQL-nel is: 'CREATE INDEX'.
reszletek: '\h CREATE INDEX'
Ujra hangsulyozom h ez _Postgre_ eseten, de remelem segit
"egyébként is érdekel a téma, oracle-s könyvem van, abban van indexelés, de valaki le tudná írni röviden és világosan, h pontosan hogy indexel és mit egy szövegen?"
Nem a szoveget, hanem a tablat indexeli, azon belul a mezot,
vagy a teljes rekordot
Lenyeg:
1)az adatbazis olyan sorrendben tarolja a bevitt recordot ahogy bevitted
azokat, ez nem rendezett sorrend => nehezen kezelheto => kereses lassu
2)ezert indexeles soran minden sornak ad egy sorszamot, megbedig azt, amely
a pozicioja lenne rendezettseg eseten
3)keresesnel ezeket az indexeket hasznalja, mert ezek rendezettek,
ezaltal a tabla sorait is kezelheti rendezettkent
4)tudjuk, hogy rendezett sorra k*vagyors keresési algoritmusok vannak,
a kereses gyorsabb:)
PtR
- A hozzászóláshoz be kell jelentkezni
aha, értem, köszi, kipróbálom
- A hozzászóláshoz be kell jelentkezni
Ha megvan az index, akkor a "like akarmi*" gyors lesz, de a "like *akarmi*" marad tetü lassú, mert ahhoz nem tudja az indexet használni.
---
If you have money, use Windows!
However, if you also have a brain, use Linux!
- A hozzászóláshoz be kell jelentkezni
Full text indexnek próbálj utánanézni a mysql doksiban, elméletben pont erre a problémára találták fel.
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni