Tso tawm ntawm rqlite 6.0, ib qho kev faib tawm, ua txhaum DBMS raws li SQLite

Kev tso tawm ntawm DBMS rqlite 6.0 tau nthuav tawm, uas siv SQLite ua lub cav cia thiab tso cai rau koj los npaj cov haujlwm ntawm pawg ntawm synchronized cia. Ib qho ntawm cov yam ntxwv ntawm rqlite yog qhov yooj yim ntawm kev teeb tsa, kev xa tawm thiab kev saib xyuas ntawm qhov kev faib ua txhaum cai cia, qee qhov zoo ib yam li lwm yam thiab Consul, tab sis siv cov ntaub ntawv sib txheeb ntawm cov qauv siv cov ntsiab lus / tus nqi. Txoj haujlwm code yog sau rau hauv Go thiab faib raws li MIT daim ntawv tso cai.

Txhawm rau khaws tag nrho cov nodes hauv lub xeev synchronized, Raft pom zoo algorithm yog siv. Rqlite siv lub tsev qiv ntawv SQLite qub thiab tus qauv mus-sqlite3 tsav tsheb, nyob rau sab saum toj ntawm cov txheej txheem tsim tawm uas ua cov neeg thov kev thov, ua qhov rov ua dua rau lwm cov nodes thiab saib xyuas qhov ua tiav ntawm qhov kev pom zoo ntawm kev xaiv ntawm cov thawj coj.

Kev hloov pauv rau cov ntaub ntawv tsuas yog tuaj yeem ua los ntawm cov node uas tau xaiv los ua tus thawj coj, tab sis kev sib txuas nrog kev sau ntawv kuj tseem tuaj yeem xa mus rau lwm cov nodes hauv pawg, uas yuav xa rov qab tus thawj coj qhov chaw nyob rov qab thov (hauv cov ntawv tom ntej lawv cog lus tias yuav ntxiv kev xa mus tsis siv neeg thov rau tus thawj coj). Lub ntsiab tseem ceeb yog qhov ua txhaum cai, yog li DBMS ntsuas tsuas yog nrog kev nyeem ntawv, thiab sau cov haujlwm yog qhov tsis muaj dab tsi. Nws muaj peev xwm khiav ib pawg rqlite los ntawm ib qho ntawm ib qho thiab cov kev daws teeb meem no tuaj yeem siv los muab kev nkag mus rau SQLite hla HTTP yam tsis muaj kev ua txhaum cai.

Cov ntaub ntawv SQLite ntawm txhua qhov no tsis yog khaws cia hauv cov ntaub ntawv, tab sis hauv kev nco. Nyob rau theem txheej nrog rau kev siv ntawm Raft raws tu qauv, lub cav ntawm tag nrho cov SQLite cov lus txib uas ua rau kev hloov pauv hauv cov ntaub ntawv khaws cia. Lub cav no yog siv thaum lub sij hawm replication (replication nyob rau theem ntawm reproducing thov ntawm lwm cov nodes), pib ib tug tshiab node, los yog rov qab los ntawm ib tug poob ntawm kev sib txuas. Txhawm rau txo qhov loj ntawm lub cav, tsis siv neeg ntim khoom siv, uas pib tom qab tus naj npawb ntawm cov kev hloov pauv thiab ua rau lub snapshot raug kho ntawm disk, nyob rau hauv kev sib raug zoo nrog lub cav tshiab pib khaws cia (lub xeev ntawm cov ntaub ntawv hauv lub cim xeeb. yog zoo tib yam rau lub snapshot + cov ntaub ntawv hloov pauv).

Feature ntawm rqlite:

  • Ib qho yooj yim rau deploy ib pawg, tsis tas yuav tsum muaj kev sib cais SQLite installation.
  • Muaj peev xwm kom tau txais SQL replicated ceev ceev.
  • Npaj rau kev siv hauv cov haujlwm ua haujlwm (Qib ntau lawm).
  • Lub xub ntiag ntawm HTTP(S) API uas tso cai rau koj hloov kho cov ntaub ntawv nyob rau hauv batch hom thiab txiav txim siab tus thawj coj ntawm pawg. Nws kuj muab cov kab hais kom ua interface thiab muaj peev xwm siv ntau lub tsev qiv ntawv cov neeg siv khoom tsim rau SQLite.
  • Muaj cov kev pabcuam los txheeb xyuas lwm cov nodes, tso cai rau koj los tsim cov pawg dynamically.
  • Kev them nyiaj yug rau encrypting cov ntaub ntawv pauv ntawm nodes.
  • Muaj peev xwm teeb tsa theem ntawm kev txheeb xyuas qhov tseeb thiab qhov sib xws ntawm cov ntaub ntawv thaum nyeem ntawv.
  • Kev xaiv muaj peev xwm los txuas cov nodes hauv hom nyeem nkaus xwb, uas tsis koom nrog kev txiav txim siab kev pom zoo thiab siv los ua kom cov scalability ntawm pawg rau kev nyeem ntawv ua haujlwm.
  • Kev them nyiaj yug rau koj tus kheej daim ntawv ntawm kev ua lag luam raws li kev sib txuas lus txib hauv ib qho kev thov (kev lag luam raws li BEGIN, COMMIT, ROLLBACK, SAVEPOINT thiab RELEASE tsis txaus siab).
  • Kev them nyiaj yug rau tsim cov ntaub ntawv kub.

Qhov kev tso tawm tshiab qhia txog cov kev hloov pauv tseem ceeb ntawm kev tsim vaj tsev txhawm rau txhawm rau txhim kho pawg ntseeg los ntawm kev txhim kho cov txheej txheem ntawm kev nyeem ntawv thiab sau cov lus thov mus rau pawg pawg kom raug. rqlite nodes tau tam sim no multiplex ntau qhov kev sib txuas lus ntawm lawv tus kheej siv TCP kev sib txuas tsim los ntawm cov nodes los ntawm Raft raws tu qauv. Yog tias qhov kev thov yuav tsum muaj cai tswj hwm tus thawj coj tab sis raug xa mus rau qhov thib ob, qhov thib ob tuaj yeem txiav txim siab tus thawj coj qhov chaw nyob thiab xa mus rau tus neeg siv khoom yam tsis tau ua Raft pom zoo xam.

Qhov kev hloov pauv kuj tau tshem tawm qhov xav tau ntawm kev sib cais metadata synchronization tivthaiv thiab tshem tawm cais kev tuav ntawm Raft xeev thiab metadata. Cov nodes thib ob tam sim no xa cov lus thov mus rau tus thawj coj ntawm tus thawj coj tsuas yog thaum tsim nyog, thaum lawv xav paub qhov chaw nyob ntawm tus thawj coj node. API muab lub peev xwm kom tau txais cov ntaub ntawv hais txog lub xeev ntawm lwm cov nodes hauv pawg. Qhov ".sysdump" hais kom ua tau ntxiv rau cov kab hais kom ua interface.

Tau qhov twg los: opennet.ru

Ntxiv ib saib