Hirdetés
- mefistofeles: Az elhízás nem akaratgyengeség!
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- Elektromos rásegítésű kerékpárok
- sziku69: Szólánc.
- gban: Ingyen kellene, de tegnapra
- ldave: New Game Blitz - 2026
- GoodSpeed: Daikin FTXF35E / RXF35F Sensira 3,3 kW Inverteres klíma - a Sztori
- GoodSpeed: Windows 11 PRO FPP (Full Packaged Product) - Retail, Box, dobozos
- D1Rect: Nagy "hülyétkapokazapróktól" topik
Új hozzászólás Aktív témák
-
Drizzt
nagyúr
válasz
Orionk
#10365
üzenetére
Egyfelől van SQL topic, ez oda jobban illene.
Másfelől:
- Indexeket kell használni. Azt az oszlopot kell indexelni, ami a where feltételben szerepel elsősorban. Ebből is elsősorban azok lesznek gyorsak, amikor konkrét értékre vonatkozik a feltétel, vagy arra, hogy egy érték egy tartományban van-e. Ha több oszlop is van a keresésben, lehet kompozit indexeket definiálni. Ha pl.: van a,b,c oszlopra egy indexed, azt az olyan feltételekre lehet használni, ahol vagy csak a-ra, vagy a-ra és b-re, vagy a-ra, b-re, s c-re van megszorító feltétel megadva. Az index gyorsítja a keresést, de lassítja a beszúrást, törlést. Ezen kívül még fontos, hogy ha csak az indexben szereplő dolgokat fogsz kikeresni a select-tel, akkor az szinte biztosan csak memóriában fog történni, de a többi mező lekérdezéséhez már lehet a diszkhez kell fordulni, ami lassítani fog erősen. Másik megfontolás a select oszlopok számánál, hogy minden extra oszlop megnöveli a visszaadott adathalmaz méretét, emiatt ha a sávszélesség probléma az adatbázis és az alkalmazás szerver között, akkor ronthat a sebességen. Erre szoktak DTO-kat használni(olyan objektum, ami csak a teljese tábla oszlopainak egy részét tartalmazza. Azt, amire éppen minimálisan szükség van az adott probléma megoldásához.).
- Nem árt megnézni azt sem, hogy a lekérdezés tényleg fogja-e használni az elkészített indexet. Erre általában adatbázisonként különbözik, hogy milyen paranccsal, de le lehet kérdezni, hogy mi lesz a query excution plan. Abból kiderül, hogy fog-e használni indexet, vagy nem. Illetve melyiket. A kritikus lekérdezésekre szerintem mindig ellenőrizni kell.
- Ha gyakran használ az ember joint, akkor érdemes lehet elgondolkodni a joinolt tábla foreign key-ként használt oszlopának indexelésén. Ez nagyban felgyorsíthatja a join-ok sebességét.
- Ha a beszúrás és a törlés is nagyon gyakran történik meg és a tábla nagy, akkor érdemes lehet particionálni a táblát több részre. Mondjuk ha neveket tárolsz, akkor az egyik tabla csak a-b, a másik c-d, ... kezdetű neveket tartalmazza. Viszont ilyenkor pl. nehéz lesz jó foreign keyeket definálni a nevekre, s sok egyéb komplikáció előjöhet. Ha ilyen jellegű a probléma, akkor lehet érdemesebb valamilyen noSQL db-t választani RDBMS helyett. -
dzsavitcu
csendes tag
válasz
Orionk
#10365
üzenetére
Kérdeztek egy olyan feladatot, hogy képzeljem el, hogy egy nagyon nagy adatbázisom van, több millió rekorddal / sorral. Hogyan érném el, hogy gyorsak legyenek a lekérdezések, a SELECT-ek az adatbázisból?
Idexek használatával => arra a keresőfeltételre kell rakni plusz indexet ami gyakran van a query-ben.
+
selectnél nem select * hanem minden oszlopnevet kiírva
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Kicombosította az M5-ös SoC-családot az Apple
- MWC 2026: Bajnoki címre pályázik a Xiaomi Watch 5
- Apple MacBook
- Futás, futópályák
- Fejhallgató erősítő és DAC topik
- HiFi műszaki szemmel - sztereó hangrendszerek
- MWC 2026: nézni szabad, megérinteni nem
- ThinkPad (NEM IdeaPad)
- Meghozta a régóta várt asztali Ryzen APU-kat az AMD
- OLED TV topic
- További aktív témák...
- Előrendelés - 2026 MacBook Air retina M5 Chip - Bontatlan - 1 ÉV Apple Gyári garancia
- T14 Gen4 14" FHD+ IPS i5-1345U 16GB 256GB NVMe magyarított (lézerezett) vbil ujjolv IR kam gar
- P14s Gen2i 14" FHD IPS i7-1165G7 T500 16GB 512GB NVMe magyarított (lézerezett) bill ujjolv gar
- X12 Gen2 12.3" FHD IPS érintő Ultra 5 134U 16GB 256GB NVMe IR kam gar
- LG 32MR50C-B. 31.5 hüvelykes ívelt 1500R, 1920x1080 Full HD, 100Hz, AMD FreeSync, VA, Dönthető
- iKing.Hu - Használt, karcmentes Google Pixel 9 Pro Fold Obsidian színben, 256 GB tárhellyel, 6 hónap
- BESZÁMÍTÁS! Inno3D iChill X3 RTX 3080 Ti 12GB videokártya garanciával hibátlan működéssel
- Lenovo 40AH és 40A1 dokkoló, töltő is.
- ÁRGARANCIA!Épített KomPhone i5 12400F 16/32/64GB RAM RTX 5060 Ti 8GB GAMER PC termékbeszámítással
- Telenor 5G Indoor WiFi Router (FA7550) + töltő (ELKELTek)
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
