Famoahana ny rqlite 6.0, DBMS zaraina, mandefitra amin'ny fahadisoana mifototra amin'ny SQLite

Ny famoahana ny fizarana DBMS rqlite 6.0 dia aseho, izay mampiasa SQLite ho toy ny motera fitehirizana ary mamela anao handamina ny asan'ny vondron'ny fitehirizana synchronized. Ny iray amin'ireo endri-javatra amin'ny rqlite dia ny fanamorana ny fametrahana, ny fametrahana ary ny fikojakojana ny fitehirizana fandeferana tsininy, somary mitovitovy amin'ny etcd sy Consul, fa mampiasa modely data relational fa tsy format key/value. Ny kaody tetikasa dia voasoratra ao amin'ny Go ary zaraina amin'ny alΓ lan'ny fahazoan-dΓ lana MIT.

Mba hitazonana ny nodes rehetra amin'ny fanjakana mirindra dia ampiasaina ny algorithm consensus Raft. Rqlite dia mampiasa ny tranomboky SQLite tany am-boalohany sy ny mpamily go-sqlite3 mahazatra, eo an-tampony dia misy sosona iray izay mandrindra ny fangatahan'ny mpanjifa, manao replication amin'ny nodes hafa ary manara-maso ny fahombiazan'ny marimaritra iraisana amin'ny fisafidianana ny node lehibe.

Ny fanovana amin'ny angon-drakitra dia tsy azo atao afa-tsy amin'ny node izay nofantenana ho mpitarika, fa ny fifandraisana amin'ny asa fanoratana dia azo alefa any amin'ny nodes hafa ao amin'ny cluster, izay hamerina ny adiresin'ny mpitarika hamerina ny fangatahana (amin'ny dikan-teny manaraka izy ireo. mampanantena fa hanampy ny fandefasana fangatahana ho azy amin'ny mpitarika). Ny fandeferana amin'ny lesoka no tena zava-dehibe, noho izany ny mizana DBMS amin'ny famakian-teny fotsiny, ary ny asa fanoratana dia ny bottleneck. Azo atao ny mampandeha kluster rqlite avy amin'ny node tokana ary ity vahaolana ity dia azo ampiasaina hanomezana fidirana amin'ny SQLite amin'ny HTTP tsy misy fandeferana diso.

Ny angona SQLite amin'ny node tsirairay dia tsy voatahiry ao anaty rakitra, fa ao anaty fitadidiana. Ao amin'ny ambaratonga sosona miaraka amin'ny fampiharana ny protocole Raft, dia tazonina ny diarin'ny baiko SQLite rehetra izay mitondra fiovana ao amin'ny tahiry. Ity log ity dia ampiasaina mandritra ny replication (famerenana amin'ny ambaratongan'ny fangatahana famerenana amin'ny node hafa), manomboka node vaovao, na miverina amin'ny fahaverezan'ny fifandraisana. Mba hampihenana ny haben'ny lozisialy dia ampiasaina ny fonosana mandeha ho azy, izay manomboka aorian'ny fanovana maromaro voatondro ary mitondra any amin'ny snapshot napetraka amin'ny kapila, mifandraika amin'ny hoe manomboka mitazona log vaovao (ny toetry ny tahiry ao amin'ny fitadidiana. dia mitovy amin'ny snapshot + ny log de change voaangona).

Toetran'ny rqlite:

  • Mora ny mametraka cluster, tsy mila fametrahana SQLite misaraka.
  • Fahaizana mahazo haingana fitahirizana SQL averina.
  • Vonona hampiasaina amin'ny tetikasa miasa (Production-grade).
  • Ny fisian'ny HTTP(S) API izay ahafahanao manavao ny angona amin'ny maodely batch ary mamaritra ny node voalohany amin'ny cluster. Izy io koa dia manome interface tsara andalana sy fahafahana mampiasa tranomboky mpanjifa isan-karazany natsangana ho an'ny SQLite.
  • Ny fisian'ny serivisy hamantarana ireo nodes hafa, ahafahanao mamorona clusters amin'ny fomba mavitrika.
  • Fanohanana amin'ny fanafenana ny fifanakalozana angona eo amin'ny nodes.
  • Fahaizana manamboatra ny haavon'ny fanamarinana ny maha-zava-dehibe sy ny tsy fitoviana amin'ny angona rehefa mamaky.
  • Fahaiza-manao azo atao hampifandray ny nodes amin'ny fomba vakiana fotsiny, izay tsy mandray anjara amin'ny famaritana ny marimaritra iraisana ary ampiasaina hampitomboana ny scalability ny cluster ho an'ny asa famakiana.
  • Fanohanana ny karazana fifampiraharahanao manokana mifototra amin'ny fampifangaroana baiko amin'ny fangatahana iray (tsy tohana ny fifampiraharahana mifototra amin'ny BEGIN, COMMIT, ROLLBACK, SAVEPOINT ary RELEASE).
  • Fanohanana hamorona backups mafana.

Ny famoahana vaovao dia mampiditra fiovana ara-javakanto manan-danja mikendry ny hampitombo ny fahatokisan'ny cluster amin'ny alΓ lan'ny fanatsarana ny fizotran'ny famandrihana famakiana sy fanoratana amin'ny node cluster marina. Ny rqlite nodes dia afaka mampifangaro fifandraisana lojika maromaro eo amin'izy ireo amin'ny alΓ lan'ny fifandraisana TCP napetraka eo anelanelan'ny nodes amin'ny protocol Raft. Raha mitaky fahefan'ny mpitarika ny fangatahana iray nefa alefa any amin'ny node faharoa, ny node faharoa dia afaka mamaritra ny adiresin'ny mpitarika ary mampita izany amin'ny mpanjifa nefa tsy manao kajikajy Raft consensus.

Ny fanovana ihany koa dia nanafoana ny filana singa fampifanarahana metadata misaraka ary nanafoana ny fikarakarana misaraka amin'ny fanjakana Raft sy ny metadata. Ny node faharoa izao dia mandefa fangatahana any amin'ny node mpitarika raha ilaina ihany, rehefa mila mitady ny adiresin'ny node mpitarika. Ny API dia manome fahafahana hahazo vaovao momba ny toetry ny nodes hafa ao amin'ny cluster. Ny baiko ".sysdump" dia nampidirina ao amin'ny interface line command.

Source: opennet.ru

Add a comment