Si elosztott DBMS-t keres amely tárolási motorként használja az SQLite-t, hadd mondjam el Az rqlite az Ön számára, mivel lehetővé teszi a fürt munkájának megszervezését egymással szinkronizált tárolókból.
Az rqlite tulajdonságai közül A telepítés, a megvalósítás és a karbantartás egyszerűségét emelik ki elosztott tárhely hibatűrő, ami némileg hasonlít az etcd-re és a konzulra, de relációs adatmodellt használ kulcs / érték formátum helyett.
Az rqlite-ről
A Raft konszenzus algoritmust használják az összes csomópont szinkronban tartására. Rqlite használja az eredeti SQLite könyvtárat és a go-sqlite3 illesztőprogramot, amely mellett egy olyan réteget hajt végre, amely feldolgozza az ügyfélkéréseket, reprodukálja önmagát más csomópontokban, és figyeli a fő csomópont megválasztásával kapcsolatban elért konszenzust.
Az adatbázisban csak a vezetőként kiválasztott csomópont végezhet módosításokat, de az írási műveletekkel való kapcsolatok a fürt többi csomópontjára irányíthatók, amelyek visszaadják a vezető címét a kérés megismétléséhez (a következő verzióban azt ígérik, hogy hozzáadják a hívás automatikus továbbítását a vezetőhöz).
A fő hangsúly a hibatűrésre, tehát a DBMS skála csak olvasási műveletekben, és az írási műveletek jelentik a szűk keresztmetszetet. Lehetséges futtatni egy rqlite-fürtöt egyetlen csomópontból, és egy ilyen megoldás használható az SQLite elérésére HTTP-n keresztül, hibatűrés biztosítása nélkül.
SQLite adatok minden csomópontban nem fájlban, hanem memóriában vannak tárolva. A Raft protokoll megvalósításával a szint szintjén nyilvántartást vezetnek minden SQLite parancsról, amely az adatbázis változásához vezet.
Ez a rekord replikációra (replikáció a lekérdezés visszajátszási szintjén más csomópontokra), új csomópont indításakor vagy a kapcsolat elvesztése után történő helyreállításra szolgál.
A rekord méretének csökkentése érdekében automatikus csomagolást használnak, amely meghatározott számú változás után kezdődik, és egy pillanatkép megerősítéséhez vezet, amelyhez új rekord kezdődik (az adatbázis állapota a memóriában megegyezik a pillanatkép + felhalmozott változásnapló).
Az rqlite tulajdonságai közül:
- Könnyű fürt telepítés, külön SQLite telepítés nélkül.
- Képes gyorsan megszerezni a replikált SQL tárhelyet.
- Felhasználásra kész gyártási projektekben.
- A HTTP (S) API elérhetősége, amely lehetővé teszi az adatok frissítését kötegelt módban és a fürt vezető csomópontjának meghatározását. Parancssori felület és kliens könyvtárak is rendelkezésre állnak a különféle programozási nyelvekhez.
- Egy olyan szolgáltatás jelenléte más csomópontok meghatározásához, amely lehetővé teszi a fürtök dinamikus létrehozását.
- Támogatás a csomópontok közötti adatcsere titkosításához.
- Az adatok relevanciájának és konzisztenciájának ellenőrzésének szintjének testreszabása az olvasás során.
- Opcionális lehetőség csak olvasható csomópontok összekapcsolására, amelyek nem vesznek részt a konszenzus meghatározásában, és a fürt méretezhetőségének növelésére szolgálnak az olvasási műveletekhez.
- A parancsok egyetlen kérelemben történő egyesítésén alapuló natív tranzakciós forma támogatása (a BEGIN, COMMIT, ROLLBACK, SAVEPOINT és RELEASE alapú tranzakciók nem támogatottak).
Az rqlite 6.0-ról
Az új verzió jelentős építészeti változásokat vezet be, amelyek célja a klaszterek megbízhatóságának javítása javítva az olvasási és írási kérelmek irányítását a megfelelő fürtcsomópontokba.
Rqlite most bólint többszörös logikai kapcsolatot képes multiplexelni közöttük a Raft protokoll által a csomópontok között létrehozott TCP kapcsolatok segítségével. Ha a kérés a vezető csomópont jogosultságát igényli, de elküldi a másodlagos csomópontnak, a másodlagos csomópont meghatározhatja a vezető címét és továbbíthatja azt az ügyfélnek, anélkül, hogy elvégezné a Raft konszenzus számítását.
A módosítás eltávolította a metaadatok szinkronizálásához szükséges külön komponenst és a Raft különálló állapot- és metaadatok kezelését is.
A másodlagos csomópontok most csak szükség esetén küldenek kéréseket a vezető csomópontra, amikor meg kell találni a vezető csomópont címét. Az API lehetővé teszi, hogy információkat szerezzen a fürt többi csomópontjának állapotáról. Sysdump parancs hozzáadva a CLI-hez.
Végül ha érdekel, hogy többet tudjon meg róla vagy olvassa el a telepítési utasításokat és a felhasználói kézikönyvet, megteheti az alábbi linkről.