HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

Az SQL szerver finomhangolása


SQL Config 2. rész


Sorozatunk második részében tovább haladunk az SQL szerver konfigurációs beállításainak megismerésében. Kilenc újabb beállítással foglalkozunk, amelyek között akad egészen friss, az SP3-as javítócsomaggal érkezett opció is.

A sorozat jelenlegi részében az alábbi beállítási lehetőségekkel foglalkozunk:
Konfigurációs beállítás Minimum Maximum Alapértelmezett
cost threshold for parallelism 0 32767 5
max degree of parallelism 0 32 0
Cross DB Ownership Chaining 0 1 0
cursor threshold -1 2147483647 -1
default full-text language 0 2147483647 1033
default language 0 9999 0
fill factor 0 100 0
index create memory 704 2147483647 0
lightweight pooling 0 1 0
cost threshold for parallelism
Haladó beállítás.
Azt a pontot határozza meg a beállítás, amikor az SQL szerver létrehozza és végrehajtja a párhuzamos lekérdezéseket a többprocesszoros SMP gépeken. A beállításnak csak ilyen gépeken van értelme. Szintén nincs értelme ott, ahol a "max degree of parallelism" értéke 1, vagy az "affinity mask" beállítása csak egy processzornak engedélyezi az SQL műveletek végrehajtását. A megadott költségértéken egy normál lekérdezés másodpercekben mért futásidejét értjük.
A párhuzamosításnak igazán a nagy lekérdezések esetében látjuk hasznát. Megéri használni, mert behozza a párhuzamosítással járó többletköltségeket (előkészítés, szinkronizálás, futtatás). A beállításnak akkor van igazán értelme, ha kisebb és nagyobb lekérdezéseket vegyesen futtatunk. Ilyenkor a megadott költségérték húzza meg a határt futási idő szerint, hogy a kisebb lekérdezések egy processzoron, a nagyobbak párhuzamosan fussanak.
max degree of parallelism
Haladó beállítás.
Megadja, hogy hány processzor használható a párhuzamos lekérdezésekhez (maximum 32). Ha 1-re állítjuk, akkor ezzel megtiltjuk a párhuzamos lekérdezéseket. Ha értéke 0 vagy az elérhető processzorok számánál nagyobb, akkor minden elérhető processzor részt vesz a párhuzamosításban. Az elérhető processzorok számát az "affinity mask" beállítás tudja lekorlátozni.
Cross DB Ownership Chaining
Ez a beállítás az SQL 2000 szerver SP3 szervizcsomagban jelent meg. Engedélyezi, vagy tiltja az adatbázisok közötti tulajdonjogi láncolatot.
Alapértelmezésben állapota 0, azaz kikapcsolt, másik lehetséges állapot az 1-es, vagyis az egész adatbázisra kiterjedően lehetségesek a tulajdonjogi láncolatok. Ez a bekapcsolt állapot volt az alapértelmezett az SP3 javítócsomag előtt.
sp_dboption 'pubs', 'db chaining', 'TRUE'
Kikapcsolt esetben egyedi adatbázisokra a fenti példa szerint tárolt eljárás meghívásával kapcsolható be a tulajdonjogi láncolat. Az első paraméter az adatbázis, majd az opció, végül az igaz vagy hamis érték.
Adatbázisok közötti tulajdonjogi láncolat akkor jön létre, amikor egy forrásobjektum egy másik adatbázisban levő objektumtól függ.
Egy ilyen láncban, ha a forrásobjektum a forrásadatbázisban és a célobjektum a céladatbázisban ugyanannak a login-nak a tulajdona (owner), az SQL szerver nem vizsgálja meg a jogosultságot a célobjektumon.
Például, ha két adatbázist ugyanaz a login birtokol, a dbo felhasználók ezekben az adatbázisokban azonos login-hoz vannak megfeleltetve. Ha a tulajdonjogi láncolat be van kapcsolva ezekre az adatbázisokra, akkor a forrás objektumok a dbo sémában elérik a cél objektumokat mindkét adatbázis dbo sémájában.
cursor threshold
Haladó beállítás.
A kurzorküszöb beállítás segítségével megadhatjuk a sorok számát a kurzor készletben, hogy melyik kurzor kulcskészlet jöjjön létre aszinkron módon. Ha -1-et állítunk be – ami az alapértelmezett is egyben – akkor minden kulcskészlet szinkronban jön létre, amely előnyös a kisméretű kurzor készleteknél. Ha az érték 0, akkor a kurzor kulcskészletek aszinkron épülnek fel. Más értékek esetén a lekérdezés-optimalizáló összehasonlítja a kurzorkészlet sorainak előrelátható számát, és aszinkron felépíti a kulcskészletet, ha túllépi a "cursor threshold"-ban beállított számot. Ne állítsuk a kurzorküszöböt túl alacsonyra, mivel a kisméretű eredménykészletek jobb, ha szinkronban épülnek.
default full-text language
Haladó beállítás.
A beállítás segítségével alapértelmezett nyelv állítható be a full-text indexelt mezőkhöz. Nyelvi analízis végrehajtódik minden adaton, ami full-text indexelt, és az adat nyelvének alárendelt. Az alapértelmezett beállítás a szerver nyelve. Az opció akkor használatos, amikor nincs az sp_fulltext_column segítségével nyelv megadva az oszlophoz. Ha a megadott nyelvi csomag nem elérhető, akkor a semlegest használja a szerver. Ez utóbbi használatos akkor is, amikor az oszlop többnyelvű szöveget tartalmaz, vagy a használni kívánt nyelv nem támogatott.
Nyelvi beállítások értékei:
Nyelv Beállítás
Egyszerű kínai 2052
Tradicionális kínai 1028
Holland 1043
Angol UK 2057
Angol US 1033
Francia 1036
Német 1031
Olasz 1040
Japán 1041
Koreai 1042
Semleges 0
Spanyol modern 3082
Svéd alapértelmezett 1053
Magyar 1038
Független szoftverkészítők újabb nyelveket is hozzáadhatnak.
Ez a beállítás kiváltja az SQL szerver 7.0-ban meglévő "language neutral full-text" opciót. SQL 7.0-ról történő upgrade esetén az említett beállítás és az "Unicode local id" alapján állítódik be az alapértelmezett full-text nyelv.
default language
Az alapértelmezett nyelvi opció meghatározza, hogy az újonnan létrehozott login-ok nyelve milyen értékű legyen. Az elérhető nyelvek a syslanguages rendszertáblában találhatók meg.
fill factor
Haladó beállítás, változtatása a szerver újraindítását igényli.
A kitöltési faktor megadja, hogy az SQL szerver hogyan készítsen index lapokat, és mennyi helyet hagyjon üresen, amikor új indexeket hoz létre a meglévő adatokhoz. A fill factor százalékos érték kihat a teljesítményre, mert időt emészt fel a lapok felosztása a feltöltődéskor. A fill factor százalék csak az index létrejöttekor használatos. A lapok nincsenek karbantartva bármilyen telítettségi szinten. Az alapértelmezett kitöltési tényező 0, az érték 0-tól 100-ig mozoghat. Az alacsony fill factor-érték akkor előnyös, ha tudjuk, hogy még sok adat kerül a táblába, így bőven marad tároló-hely az index adatoknak anélkül, hogy a lapokat fel kellene osztani. Egy 100-as teljes kitöltésű lap abban az esetben megoldás, ha olyan táblához készül, amelybe már nem fogunk írni, tehát csak olvasható tábla lesz.
index create memory
Haladó beállítás, önkonfiguráló funkció.
Az indexek létrehozáshoz szükséges memóriamennyiséget jelenti. A legtöbb esetben nem kíván beavatkozást ez az önbeállítást végző opció. Ha azonban az index létrehozása során valami nehézséget tapasztalunk, akkor fontoljuk meg a beavatkozást, vagyis az érték növelését.
lightweight pooling
Haladó beállítás, változtatása a szerver újraindítását igényli.
Ezen beállítás segítségével csökkenthető a rendszer többletterhelése, ami a túlzott környezetváltásnak köszönhető, és néha előfordul többprocesszoros gépen. Amikor a nagymértékű környezetváltás előáll, akkor a lightweight pooling nagyobb áteresztőképességet nyújt, segítve a felhasználó / kernel körátvitelt Ha a beállítást 1-re módosítjuk, akkor az SQL szerver a szál módú ütemezésre vált át. Az alapértelmezett érték a 0.

Könyv
Ez a cikk megtalálható ebben a könyvben: Windows Software Offline 2003 évkönyv 462. oldal

Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!

Copyright © 1999-2012 Animare Software Kft. Minden jog fenntartva!
| Készült: Animare Stúdió | Adatvédelem | Kapcsolat |