Analysis Services alapú BI rendszerek oldalra skálázása

Az Analyis Services-t skálázhatjuk felfelé és skálázhattuk oldalra is. Felfelé skálázás esetén erősebb vasat veszünk az üzleti intelligencia rendszer alá, oldalra skálázás esetén több kisebb szerverrel oldjuk meg a teljesítménynövelést.

Az oldalra skálázás előnye, hogy a sok kis hardveren futó üzleti intelligencia rendszer jellemzően sokkal olcsóbb, mint egy nagy vason futó. Hátránya pedig, hogy egy erőforrás igényes lekérdezés jobban ki tudja használni a nagygép teljesítményét, így gyorsabban fog futni, mintha valamelyik kisgépen futna.

Az oldalra skálázással növelhetjük a felösszegzések sebességét, hatékonyabbá vagy olcsóbbá tehetjük az adattárolást, javíthatunk a cache kezelésen és csökkenthetjük a lekérdezések válaszidejét. A most következő cikkben egy olyan forgatókönyvet vizsgálunk meg, ahol az oldalra skálázás célja nagyszámú üzleti intelligencia felhasználó hatékony kiszolgálása lesz.

Oldalra skálázás Analysis Services 2005 alapú üzleti intelligencia rendszerekben

Az Analysis Services 2005 alapú üzleti intelligencia rendszereket úgy skálázhattuk oldalra, hogy vettünk sok-sok kis szervert, mindegyikre feltelepítettük az Analysis Services-t, felmásoltuk rájuk az adatbázisok egy-egy példányát, majd felösszegzés után replikáltuk a frissült adatokat minden egyes oldalra skálázott szerverre. Ez mindamellett, hogy időigényes volt, még jó sok lemezt is megkövetelt, hiszen minden egyes gépen ott kellett lennie a teljes Analysis Services adatbázis egy-egy teljes példányának.

Oldalra skálázás Analysis Services 2008 alapú üzleti intelligencia rendszerekben

Az oldalra skálázás lényegesen egyszerűbbé vált az Analysis Services 2008-ban, ahhoz képest ahogy a 2005-ös verzióban megvalósítható volt. Az Analysis Services 2008 három olyan újdonságot is tartalmaz, amelyek együttesen járulnak hozzá ahhoz, hogy ne kelljen az OLAP adatbázisokat az oldalra skálázott szerverekre másolni, hanem elég legyen a központi helyen tárolt adatbázist a lekérdező szerverekkel megosztani:

Terheléselosztás az Analysis Services 2008-cal

Oldalra skálázott terheléselosztó környezet kialakítása az Analysis Services 2008-cal

E három, egyébként egymástól független újdonság pedig a következő:

  • Csak olvashatóvá (READ-ONLY) lehet tenni egy Analysis Services 2008 adatbázist
  • Végre megszűnt az a korlát, hogy az Analysis Services adatbázisoknak ugyanazon a vason kell lenniük, ahol az adatbázis kezelő fut
  • Attach-olni/detach-olni tudjuk az adatbázisokat

Az oldalra skálázás elméleti megvalósítási folyamata

(Azért csak elméleti, mert sajnos élesben még nem tudtam kipróbálni hogy működik-e, és itthon nincs SAN-om :-) )

  1. Fel kell összegezni az Analysis Services adatkockákat egy erre dedikált szerveren
  2. Le kell választani (detach) a felösszegzett adatbázist
  3. Át kell másolni a DATA foldert egy SAN-ra
  4. Be kell attach-olni a SAN-on lévő adatbázis fájlokat a lekérdező szervereken,
  5. Át kell őket állítani írható (READ/WRITE) módra, és kész.

Ezzel a megoldással elérhetjük, hogy nagyszámú konkurens felhasználót is jó válaszidőkkel tudjunk kiszolgálni.

A cikk itt véget is ér, de engedjen meg még egy kis kitérőt, és beszéljünk egy kicsit az Analysis Services adatbázisok read-only-vá tételéről. Miért fontos ez? Illetve máshogy kérdezve: Az Analysis Services adatbázis a felösszegzések után miért nem read-only? Hiszen ha nem írunk bele vissza, ha épp nem összegezzük fel, ha nem módosítunk rajta semmit akkor pont úgy viselkedik, mint egy read-only adatbázis.

Elméletben. Gyakorlatban azonban az Analysis Services él és működés közben módosítgatja maga alatt a fájlokat. Hiába nincs engedélyezve a visszaírás, hiába nem módosítunk rajta semmit.

Ebbe a problémába azok futottak bele először, akik a nagy Analysis Services adatbázisaikat a gyári mentés lassúsága miatt fájlmásolással mentették. Előfordult ugyanis, hogy másolás közben módosult egy-két fájl, így a mentés inkonzisztensé vált, és a mentett adatbázist többé már nem lehetett visszaállítani.

Ezért fontos tehát, hogy az Analysis Services adatbázisokat csak olvashatóvá (read-only) lehessen tenni. E nélkül ugyanis előfordulhatna, hogy a lekérdező szerverek alá bemásolt megosztott adatbázis inkonzisztenssé válna.

Összefoglalva: Az Analysis Services 2008 lehetőséget biztosít a sokfelhasználós OLAP adatbázisok oldalra skálázhatóságára. Azt, hogy ezzel hányan fognak élni Magyarországon még nem tudom, de a lehetőség mindenesetre mindenki előtt nyitva áll...

Felhasznált irodalom:

Kővári Attila - BI projekt

Új hozzászólás