Fa'asa'olotoina o le rqlite 6.0, o le tufatufaina atu, fa'aletonu DBMS fa'avae ile SQLite

O le tuʻuina atu o le tufatufaina atu o le DBMS rqlite 6.0 o loʻo tuʻuina atu, lea e faʻaogaina ai le SQLite e avea o se masini teu oloa ma faʻatagaina oe e faʻatulagaina le galuega a se fuifui o mea e teu faʻatasi. O se tasi o foliga o le rqlite o le faigofie lea o le faʻapipiʻiina, faʻapipiʻiina ma le tausiga o se faʻasoa faʻafefete faʻafefeteina, e foliga tutusa ma etcd ma le Konesula, ae faʻaaogaina se faʻataʻitaʻiga faʻamatalaga faʻafesoʻotaʻi nai lo se ki / faʻasologa tau. O le tulafono o le poloketi o loʻo tusia i le Go ma tufatufaina i lalo ole laisene MIT.

Ina ia faʻatumauina uma nodes i se tuʻufaʻatasiga, o le Raft consensus algorithm e faʻaaogaina. E fa'aaoga e Rqlite le uluai faletusi SQLite ma le aveta'avale masani go-sqlite3, i le pito i luga o loʻo faʻalauiloaina ai se laulau e faʻatautaia ai talosaga a le tagata o tausia, faʻatinoina le toe faʻaogaina i isi nodes ma mataʻituina le ausia o le maliega i le filifiliga o se node taʻutaʻua.

Suiga i le database e mafai ona na o le node ua filifilia e avea ma taitai, ae o fesootaiga ma galuega tusitusi e mafai foi ona auina atu i isi nodes i le fuifui, lea o le a toe faafoi le tuatusi o le taitai e toe fai le talosaga (i le isi lomiga latou folafola e fa'aopoopo le fa'asalalauina otometi o talosaga i le ta'ita'i). O le fa'amamafa autu o le fa'apalepale fa'aletonu, o lona uiga o le fua o le DBMS e na'o le faitau fa'agaioiga, ma o galuega tusitusi o le fa'amaufa'ailoga lea. E mafai ona ta'e se fuifui rqlite mai se node e tasi ma e mafai ona faaaoga lenei fofo e maua ai le avanoa i SQLite i luga o HTTP e aunoa ma le tuuina atu o le faapalepale sese.

O faʻamatalaga SQLite i node taʻitasi e le o teuina i se faila, ae i le manatua. I le tulaga faʻavae ma le faʻatinoina o le Raft protocol, o loʻo teuina se ogalaau o tulafono SQLite uma e taʻitaʻia ai suiga i le database. O lenei ogalaau e faʻaaogaina i le taimi o le toe faia (toe faia i le tulaga o le toe gaosia o talosaga i isi node), amataina se node fou, poʻo le toe faʻaleleia mai le leiloa o le fesoʻotaʻiga. Ina ia faʻaitiitia le tele o le ogalaau, e faʻaaogaina le afifiina otometi, lea e amata pe a maeʻa se numera faʻamaonia o suiga ma taʻitaʻia ai se ata o loʻo faʻapipiʻiina i luga o le disk, e faʻatatau i le mea e amata ai ona teuina se ogalaau fou (o le tulaga o le database i le mafaufau. e tutusa ma le ata + o le ogalaau suiga faaputuputu).

Faiga o le rqlite:

  • Faigofie le faʻapipiʻiina o se fuifui, e aunoa ma le manaʻomia mo se faʻapipiʻi eseʻese SQLite.
  • Malosiaga e vave maua mai toe fa'afouga SQL teuina.
  • Sauni mo le faʻaaogaina i galuega galue (Production-grade).
  • Le i ai o se HTTP (S) API e mafai ai e oe ona faʻafouina faʻamatalaga i le faʻasologa o faʻaputuga ma fuafua le node taʻimua o le fuifui. E maua ai fo'i se fa'atonuga laina fa'atonu ma le mafai ona fa'aoga faletusi eseese o tagata fa'atau mo SQLite.
  • Avanoa o se 'au'aunaga mo le fa'ailoaina o isi pona, e fa'atagaina ai oe e fai fuifui ma le malosi.
  • Lagolago mo le fa'ailogaina o fa'amatalaga fa'amatalaga i le va o nodes.
  • Malosiaga e faʻatulagaina le tulaga o le siakiina o le talafeagai ma le tutusa o faʻamaumauga pe a faitau.
  • Filifiliga gafatia e faʻafesoʻotaʻi nodes i le faitau-naʻo le faiga, e le auai i le fuafuaina o maliega ma faʻaaogaina e faʻateleina ai le faʻalauteleina o le fuifui mo galuega faitau.
  • Lagolago mo lau oe lava ituaiga o fefaʻatauaiga e faʻavae i luga o le tuʻufaʻatasia o poloaiga i se talosaga e tasi (o fefaʻatauaiga e faʻavae ile BEGIN, COMMIT, ROLLBACK, SAVEPOINT ma RELEASE e le lagolagoina).
  • Lagolago mo le fatuina o faʻamaumauga vevela.

O le fa'asalalauga fou o lo'o fa'ailoa mai ai suiga tetele o le fausaga e fa'atatau i le fa'atuputeleina o le fa'atuatuaina o fuifui e ala i le fa'aleleia atili o le fa'agasologa o le fa'atonuina o le faitau ma le tusi talosaga i nodes sa'o. rqlite nodes e mafai nei ona fa'ateleina le tele o feso'ota'iga talafeagai ia i latou lava e fa'aogaina ai feso'ota'iga TCP na fa'atuina i le va o nodes e le Raft protocol. Afai o se talosaga e mana'omia ai le pule a le ta'ita'i ae e lafo atu i le node lona lua, e mafai e le node lona lua ona iloa le tuatusi o le ta'ita'i ma tu'u atu i le tagata o tausia e aunoa ma le fa'atinoina o le fa'atatauga a le Raft consensus.

O le suiga na faʻaumatia ai foi le manaʻoga mo se vaega tuʻufaʻatasiga metadata tuʻufaʻatasia ma faʻateʻaina eseʻese le taulimaina o le Raft state ma metadata. O node lona lua ua auina atu nei talosaga i le node ta'ita'i pe a mana'omia, pe a mana'omia ona latou su'e le tuatusi o le node ta'ita'i. O le API e maua ai le gafatia e maua ai faʻamatalaga e uiga i le tulaga o isi nodes i le fuifui. O le ".sysdump" poloaiga ua faʻaopoopoina i le faʻatonuga laina laina.

puna: opennet.ru

Faaopoopo i ai se faamatalaga