A Databricks másodpercek alatt állítana helyre 100 terabájtos adatbázisokat

A Databricks Lakebase Postgres új, ág alapú helyreállítási módszere másolás és napló-visszajátszás helyett metaadat-művelettel állítja vissza az adatbázist. A vállalat szerint egy 100 terabájtos adatbázis helyreállítása így másodpercek alatt megtörténhet.
- A Lakebase Postgres az adatbázis másolása helyett időpontra mutató ágat hoz létre.
- A Databricks szerint egy 100 TB-os adatbázis helyreállítása másodpercek alatt megtörténhet.
- A hagyományos helyreállítás új példányt, pillanatfelvétel-másolást és WAL-visszajátszást igényel.
- Az új ág saját számítási kapacitással és kapcsolati karakterlánccal rendelkezik.
- A Databricks felmérésében a válaszadók 30 százaléka legalább háromórás kiesést tapasztalt.
A hagyományos visszaállítás órákig is eltarthat
A kezelt online tranzakciós adatbázisoknál a visszaállítás jellemzően új példány létrehozásával kezdődik. Ezután a rendszernek a biztonsági mentést az objektumtárolóból az adatbázis lemezére kell másolnia, végül pedig vissza kell játszania a tranzakciós naplókat a kívánt időpontig.
A Databricks leírása szerint ez a folyamat a rendszer méretével együtt lassul és drágul. Nagy adatbázisoknál a helyreállítás többórás kiesést okozhat. Egy magas rendelkezésre állású másodlagos példány segíthet, ha az elsődleges gép meghibásodik, de nem feltétlenül véd a hibás írásokkal vagy a véletlenül törölt adatokkal szemben, ha ezek már a másodlagos példányra is eljutottak.
A hagyományos, időpontra történő helyreállítás három fő lépése az új példány üzembe helyezése, a legutóbbi használható pillanatfelvétel visszaállítása és a WAL naplók visszajátszása a kiválasztott időpontig. A nagy köteteknél az adatok egy része kezdetben még az objektumtárolóból érkezik, ezért az adatbázis elérhetősége nem jelenti azt, hogy a teljes szükséges munkakészlet már helyben található.
Felmérés mutatja a helyreállítás kockázatait
A Databricks által idézett felmérésben 50, legalább 1 terabájtos éles Postgres-adatbázist használó fejlesztőt kérdeztek. Az elmúlt 12 hónapban 59 százalékuk tapasztalt kritikus éles üzemzavart, 30 százalékuk pedig legalább három órás kiesésről számolt be. Néhány esetben a leállás fél napnál is tovább tartott.
- Mindössze 21 százalék állította, hogy 60 percen belül helyre tudott állni.
- 40 százalék jelentős üzleti fennakadást jelzett.
- 52 százalék negatív ügyfél-visszajelzést tapasztalt.
- 72 százalék csak „némileg magabiztosnak” érezte magát egy újabb hiba gyors elhárításával kapcsolatban.
A Lakebase a másolás helyett ágat hoz létre
A Lakebase Postgres architektúrája szétválasztja a számítási kapacitást és a tartós tárolást. A Postgres továbbra is a számítási rétegen futtatja az SQL-lekérdezéseket, kezeli a zárolásokat és létrehozza a WAL-bejegyzéseket, de az adatok tartós másolatának tulajdonosa külön tárolási réteg.
A WAL-t a safekeeper komponensek fogadják, és egy tranzakció akkor válik tartóssá, amikor a safekeeperek egy kvóruma visszaigazolja a bejegyzést. A pageserver ebből állítja elő az oldalverziókat, az objektumtároló pedig a megváltoztathatatlan, hosszú távú előzményeket őrzi.
Hiba esetén a felhasználó kiválaszt egy korábbi időpontot. Ezt előzetesen lekérdezésekkel is ellenőrizheti, majd a vezérlősík az időpontot a tárolási előzmények megfelelő pontjához rendeli, létrehozza az új ágat, és számítási kapacitást csatol hozzá. Az ág saját kapcsolati karakterlánccal rendelkezik, önállóan lekérdezhető, és nem a teljes adatbázis másolataként készül el.
A helyreállítás mérete kevésbé számít
A Databricks szerint a Lakebase branch alapú visszaállítása nem adatmozgatási feladat. Az új ág egyszerűen arra a már létező, megváltoztathatatlan előzményre mutat, amely a kiválasztott időpontig tartalmazza az adatokat. Emiatt a vállalat állítása szerint egy 100 terabájtos adatbázis visszaállítása ugyanolyan gyors lehet, mint egy 10 gigabájtosé, a művelet pedig másodpercek alatt elvégezhető.
Ez a felhasználók számára rövidebb helyreállítási időt jelenthet nagy éles adatbázisoknál is. Az ág külön számítási kapacitással működik, így a visszaállított adatbázis a termelési ágtól függetlenül vizsgálható, miközben a rendszernek nem kell új lemezre másolnia az adatokat és a teljes WAL-előzményt visszajátszania.
Databricks: Lakebase Postgres branch-based restores for fast recovery at scale


