Serbestberdanek girîng a immudb 1.0 DBMS hate destnîşan kirin, ku neguhêrbûn û parastina hemî daneyên ku heya niha hatine zêdekirin garantî dike, û her weha parastina li dijî guhertinên paşverû peyda dike û delîlên krîptografî yên xwedîtiya daneyê peyda dike. Di destpêkê de, proje wekî hilanînek NoSQL-ya pispor hate pêşve xistin ku daneyan di forma sereke / nirxê de manîpule dike, lê bi berdana 1.0 immudb dest pê dike wekî DBMS-ya bêkêmasî ya bi piştgirîya SQL-ê tête cîh kirin. Koda projeyê di Go de hatî nivîsandin û di bin lîsansa Apache 2.0 de tê belav kirin.
Agahdariya di immudb de bi karanîna avahiyek mîna zincîra blokê tête hilanîn ku yekparebûna tevahiya zincîra tomarên heyî garantî dike û rê nade guheztina daneyên jixwe hilandî an veguheztin / danîna têketinek di dîroka danûstendinê de. Hilber tenê lê zêdekirina daneya nû piştgirî dike, bêyî ku jêbirin an guheztina agahdariya jixwe hatî zêdekirin. Hewldanek ji bo guhertina tomarên di DBMS de tenê dihêle ku guhertoyek nû ya tomarê winda neke û di dîroka guheztinê de berdest bimîne.
Digel vê yekê, berevajî çareseriyên bingehîn ên zincîra blokê, immudb dihêle hûn performansê di asta bi mîlyonan danûstendinan de her saniyeyê bi dest bixin û dikare were bikar anîn da ku karûbarên sivik dest pê bike an jî fonksiyona xwe di forma pirtûkxaneyê de bixe nav serlêdanan.

Performansa bilind bi karanîna dara LSM (darek hevgirtî ya birêkûpêk a têketinê) bi têketinek nirxan ve tête bidestxistin, ku bi lez û bez gihîştina tomaran bi zêdekirina daneya zêde peyda dike. Ji bo domandina yekrêziya hilanînê, avahiyek darê ya bi navê Dara Merkle jî tê bikar anîn, ku tê de her şax bi saya hevgirtinê (dara) hemî şax û girêkên jêrîn verast dike. Bi hashaya paşîn, bikarhêner dikare rastbûna tevahiya dîroka operasyonan, û her weha rastbûna rewşên berê yên databasê verast bike (haşa verastkirina root ya rewşa nû ya databasê li gorî rewşa berê tê hesibandin ).
Delîlên krîptografîk ên xwedîtî û yekparebûna daneyan ji xerîdar û mufetîşan re têne peyda kirin. Bikaranîna krîptografiya mifteya giştî ne hewce ye ku xerîdar bawer bike. server, û her girêdana xerîdar a nû bi DBMS-ê re asta giştî ya baweriyê di tevahiya depoyê de zêde dike. Mifteyên giştî û navnîşên betalkirina mifteyan di databasê de têne hilanîn, û enklavên Intel SGX dikarin ji bo operasyonên şîfrekirî werin bikar anîn.
Fonksiyona DBMS piştgiriya SQL, moda hilanîna mifte/nirx, endeks, parçekirina databasa, çêkirina wêneyên rewşa daneyan, danûstandinên ACID bi piştgiriya îzolekirina wêneyên wêneyî (SSI), performansa xwendin û nivîsandinê ya bilind, çêtirkirinên ji bo xebata bi bandor li ser ajokarên SSD, û piştgiriya ji bo xebata bi formê vedihewîne. server û pirtûkxaneyek çêkirî, piştgiriya REST API, û navrûyek webê ji bo rêveberiyê. Serlêdanên tîpîk ên ku DBMS-yên mîna immudb hewce ne, danûstandinên qerta krediyê, hilanîna mifteyên giştî, sertîfîkayên dîjîtal, kontrolên hesaban, û tomarên tomarê, û afirandina hilanîna zêde ji bo qadên girîng di DBMS-yên kevneşopî de ne. Pirtûkxaneyên xerîdar ji bo xebata bi immudb re ji bo Go, Java, .NET, Python, û Node.js hene.
Pêşveçûnên sereke di serbestberdana immudb 1.0 de:
- Piştgiriya SQL bi şiyana parastina rêzan ji guhertina veşartî.
- Moda TimeTravel, ku gengaz dike ku hûn rewşa databasê li xalek berê veguherînin. Bi taybetî, dema qutkirina daneyê dikare di asta jêrpirsiyarên kesane de were danîn, ku analîzkirina guhertinan û berhevdana daneyan hêsan dike.
- Piştgiriya ji bo protokola xerîdar PostgreSQL, ku destûrê dide te ku hûn serîlêdanên heyî û pirtûkxaneyên ku ji bo xebatê bi PostgreSQL re bi immudb-ê re hatine çêkirin bikar bînin. Ji bilî pirtûkxaneyên xerîdar ên xwecî, hûn dikarin pirtûkxaneyên xerîdar ên standard Ruby, C, JDBC, PHP û Perl bikar bînin.
- Console Web ji bo navîgasyon daneyên înteraktîf û rêveberiya DBMS. Bi navgîniya webê hûn dikarin daxwazan bişînin, bikarhêneran biafirînin û daneyan birêve bibin. Wekî din, hawîrdora fêrbûna Playground heye.


Source: opennet.ru


