HamsterDB — система керування базами даних в стилі noSQL, в першу чергу орієнтована для вбудовування в застосування функцій постійного зберігання або кешування записів, але підтримує роботу також і в режимі відокремленої NoSQL БД з доступом по мережі. Код проекту написаний на мові і поставляється під ліцензією GPLv2+ з виключенням для можливості зв'язування з проектами під несумісними з GPL ліцензіями (Apache, BSD, тощо). Біндінг для використання HamsterDB доступні для мов C/, Python, .NET, Java, Erlang і Ada.
Тип | noSQL система керування базами даних |
---|---|
Перший випуск | 2004 |
Стабільний випуск | 2.1 (3 березня 2013 ) |
Платформа | x86, x64, PowerPC, SPARC, ARM, RISC |
Операційна система | багатоплатформний |
Мова програмування | |
Стан розробки | активний |
Ліцензія | GPLv2+ |
Вебсайт | hamsterdb.com |
Серед особливостей HamsterDB можна відзначити
- підтримку транзакцій,
- наявність засобів для відновлення та ведення журналу змін,
- можливість зберігання дубльованих ключів (у тому числі в відсортованому вигляді),
- дуже швидку реалізацію для переміщення по записах,
- можливість часткового читання і запису даних,
- підтримку роботи як в ролі постійного сховища, так і в ролі збереженої в оперативній пам'яті БД (In-Memory DB).
Формат файлу з БД не прив'язаний до архітектурних особливостей процесорів і може використовуватися без змін на різних платформах, включаючи x86, x64, PowerPC, SPARC, ARM і RISC.
Записи зберігаються у вигляді відсортованого дерева , котре підтримує ключі змінної довжини. Використовувані в HamsterDB алгоритми та структури даних оптимізовані для гарантованого досягнення високої продуктивності для всіх можливих сценаріїв застосування. Наприклад, по можливості мінімізуються операції доступу до диска і звернення до системних викликів, структури даних реалізовані з урахуванням особливості роботи кешу в сучасних CPU, для оптимізації повільного вводу/виводу використовується кешування в пам'яті. Завдяки використанню 64-розрядних вказівників, розмір файлів з базою практично не обмежений.
Для логічного поділу баз в HamsterDB використовується поняття оточень, які дозволяють зберігати кілька різних БД в одному файлі. HamsterDB може використовуватися як у вигляді зв'язаної з застосунком бібліотеки (не вимагає додаткових залежностей), так і у формі сервера. Сервер HamsterDB базується на використанні невеликого http-сервера, який може запускатися окремо або вбудовуватися в застосунки. Доступні засоби для тонкої настройки і тюнінгу БД (розмір кешу, ключів, сторінок тощо).
HamsterDB можна розглядати як стабільний і зрілий проект, який розвивається з 2004 року. Для тестування якості коду створено більше 45000 перевірок і 1800 unit-тестів. HamsterDB активно використовується у багатьох популярних десктоп-застосунках, вбудованих пристроях, телефонах і навіть в хмарних системах.
Примітки
- Релиз встраиваемой NoSQL БД HamsterDB 2.1.0 [ 7 березня 2013 у Wayback Machine.] // opennet.ru 03.03.2013
Посилання
- Офіційний сайт
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
HamsterDB sistema keruvannya bazami danih v stili noSQL v pershu chergu oriyentovana dlya vbudovuvannya v zastosuvannya funkcij postijnogo zberigannya abo keshuvannya zapisiv ale pidtrimuye robotu takozh i v rezhimi vidokremlenoyi NoSQL BD z dostupom po merezhi Kod proektu napisanij na movi C i postavlyayetsya pid licenziyeyu GPLv2 z viklyuchennyam dlya mozhlivosti zv yazuvannya z proektami pid nesumisnimi z GPL licenziyami Apache BSD tosho Binding dlya vikoristannya HamsterDB dostupni dlya mov C C Python NET Java Erlang i Ada HamsterDBTipnoSQL sistema keruvannya bazami danihPershij vipusk2004Stabilnij vipusk2 1 3 bereznya 2013 11 rokiv tomu 2013 03 03 Platformax86 x64 PowerPC SPARC ARM RISCOperacijna sistemabagatoplatformnijMova programuvannyaC Stan rozrobkiaktivnijLicenziyaGPLv2 Vebsajthamsterdb com Sered osoblivostej HamsterDB mozhna vidznachiti pidtrimku tranzakcij nayavnist zasobiv dlya vidnovlennya ta vedennya zhurnalu zmin mozhlivist zberigannya dublovanih klyuchiv u tomu chisli v vidsortovanomu viglyadi duzhe shvidku realizaciyu dlya peremishennya po zapisah mozhlivist chastkovogo chitannya i zapisu danih pidtrimku roboti yak v roli postijnogo shovisha tak i v roli zberezhenoyi v operativnij pam yati BD In Memory DB Format fajlu z BD ne priv yazanij do arhitekturnih osoblivostej procesoriv i mozhe vikoristovuvatisya bez zmin na riznih platformah vklyuchayuchi x86 x64 PowerPC SPARC ARM i RISC Zapisi zberigayutsya u viglyadi vidsortovanogo dereva kotre pidtrimuye klyuchi zminnoyi dovzhini Vikoristovuvani v HamsterDB algoritmi ta strukturi danih optimizovani dlya garantovanogo dosyagnennya visokoyi produktivnosti dlya vsih mozhlivih scenariyiv zastosuvannya Napriklad po mozhlivosti minimizuyutsya operaciyi dostupu do diska i zvernennya do sistemnih viklikiv strukturi danih realizovani z urahuvannyam osoblivosti roboti keshu v suchasnih CPU dlya optimizaciyi povilnogo vvodu vivodu vikoristovuyetsya keshuvannya v pam yati Zavdyaki vikoristannyu 64 rozryadnih vkazivnikiv rozmir fajliv z bazoyu praktichno ne obmezhenij Dlya logichnogo podilu baz v HamsterDB vikoristovuyetsya ponyattya otochen yaki dozvolyayut zberigati kilka riznih BD v odnomu fajli HamsterDB mozhe vikoristovuvatisya yak u viglyadi zv yazanoyi z zastosunkom biblioteki ne vimagaye dodatkovih zalezhnostej tak i u formi servera Server HamsterDB bazuyetsya na vikoristanni nevelikogo http servera yakij mozhe zapuskatisya okremo abo vbudovuvatisya v zastosunki Dostupni zasobi dlya tonkoyi nastrojki i tyuningu BD rozmir keshu klyuchiv storinok tosho HamsterDB mozhna rozglyadati yak stabilnij i zrilij proekt yakij rozvivayetsya z 2004 roku Dlya testuvannya yakosti kodu stvoreno bilshe 45000 perevirok i 1800 unit testiv HamsterDB aktivno vikoristovuyetsya u bagatoh populyarnih desktop zastosunkah vbudovanih pristroyah telefonah i navit v hmarnih sistemah PrimitkiReliz vstraivaemoj NoSQL BD HamsterDB 2 1 0 7 bereznya 2013 u Wayback Machine opennet ru 03 03 2013PosilannyaOficijnij sajt