Уведено је значајно издање иммудб 1.0 ДБМС, које гарантује непроменљивост и очување свих икада додатих података, као и пружа заштиту од ретроактивних промена и пружа могућност криптографског доказа о власништву података. У почетку је пројекат развијен као специјализовано НоСКЛ складиште које манипулише подацима у формату кључ/вредност, али почевши од издања 1.0 иммудб је позициониран као пуноправни ДБМС са СКЛ подршком. Код пројекта је написан у Го и дистрибуиран под лиценцом Апацхе 2.0.
Информације у иммудб-у се чувају помоћу структуре сличне блокчејну која гарантује интегритет целог ланца постојећих записа и не дозвољава промену већ ускладиштених података или замену/убацивање уноса у историју трансакција. Складиште подржава само додавање нових података, без могућности брисања или промене већ додатих информација. Покушај промене записа у ДБМС води само до чувања нове верзије записа; стари подаци се не губе и остају доступни у историји промена.
Штавише, за разлику од типичних решења заснованих на блокчејну, иммудб вам омогућава да постигнете перформансе на нивоу од милиона трансакција у секунди и може се користити за покретање лаких услуга или за уградњу његове функционалности у апликације у облику библиотеке.

Високе перформансе се постижу коришћењем ЛСМ (Лог-струцтуред мерге-трее) стабла са дневником вредности, које омогућава брз приступ записима са високим интензитетом додавања података. Да би се одржао интегритет складишта, додатно се користи структура дрвета под називом Меркле Трее, у којој свака грана верификује све основне гране и чворове захваљујући заједничком (стабло) хеширању. Имајући коначан хеш, корисник може да провери исправност целокупне историје операција, као и тачност прошлих стања базе података (хеш за проверу корена новог стања базе података израчунава се узимајући у обзир прошло стање ).
Клијентима и ревизорима се пружа криптографски доказ о власништву и интегритету података. Употреба криптографије са јавним кључем не захтева од клијента поверење сервер, и свака нова клијентска веза са СУБ повећава укупни ниво поверења у целокупно складиште. Јавни кључеви и листе опозива кључева се чувају у бази података, а Intel SGX енклаве се могу користити за шифроване операције.
Функционалност СУБД укључује SQL подршку, режим складиштења кључ/вредност, индексе, шардинг базе података, креирање снимака стања података, ACID трансакције са подршком за изолацију снимака (SSI), високе перформансе читања и писања, оптимизације за ефикасан рад на SSD дисковима и подршку за рад у облику сервер и уграђену библиотеку, подршку за REST API и веб интерфејс за управљање. Типичне примене где су потребни системи управљања базама података попут immudb укључују трансакције кредитним картицама, чување јавних кључева, дигиталних сертификата, контролних збирова и логова, као и креирање редундантног складишта за важна поља у традиционалним системима управљања базама података. Клијентске библиотеке за рад са immudb доступне су за Go, Java, .NET, Python и Node.js.
Кључна побољшања у издању иммудб 1.0:
- СКЛ подршка са могућношћу заштите редова од скривених модификација.
- ТимеТравел режим, који омогућава пребацивање стања базе података на одређену тачку у прошлости. Конкретно, време резања података може се подесити на нивоу појединачних потупита, што поједностављује анализу промена и поређење података.
- Подршка за ПостгреСКЛ клијентски протокол, који вам омогућава да користите постојеће апликације и библиотеке дизајниране за рад са ПостгреСКЛ-ом са иммудб-ом. Поред матичних клијентских библиотека, можете користити стандардне клијентске библиотеке Руби, Ц, ЈДБЦ, ПХП и Перл.
- Веб конзола за интерактивну навигацију података и администрацију ДБМС-а. Преко веб интерфејса можете слати захтеве, креирати кориснике и управљати подацима. Поред тога, доступно је окружење за учење Плаигроунд.


Извор: опеннет.ру


