URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 88925
[ Назад ]

Исходное сообщение
"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"

Отправлено opennews , 04-Мрт-13 02:53 
Представлен (http://hamsterdb.com/news/show/id/60) релиз NoSQL БД HamsterDB 2.1.0 (http://hamsterdb.com), в первую очередь ориентированной для встраивания в приложения функций постоянного хранения или кэширования записей, но поддерживающей работу и в режиме обособленной NoSQL БД с доступом по сети.  Код проекта написан на языке C++ и поставляется под лицензией GPLv2+ с исключением (http://hamsterdb.com/licensing) для возможности связывания с  проектами под несовместимыми с GPL лицензиями (Apache, BSD, Zlib и т.п.). Биндинги для использования HamsterDB доступны для языков C/C++, Python, .NET, Java, Erlang и ADA.


Среди особенностей HamsterDB можно отметить поддержку транзакций, наличие средств для восстановления и ведения журнала изменений, возможность хранения дублирующихся ключей (в том числе в отсортированном виде), очень быструю реализацию курсора для перемещения по записям, возможность частичного чтения и записи данных, поддержку как работы в роли постоянного хранилища, так и в роли хранимой в оперативной памяти БД (In-Memory DB). Формат файла с БД не привязан к архитектурным особенностям процессоров и может использоваться без изменений на различных платформах, включая x86, x64, PowerPC, SPARC, ARM и RISC.


Записи хранятся в виде отсортированного дерева  B+Tree, поддерживающего помещение ключей переменной длины. Используемые в HamsterDB алгоритмы и структуры данных оптимизированы для гарантированного достижения высокой производительности для всех возможных сценариев применения.  Например, по возможности минимизируются операции доступа к диску и обращения к системным вызовам, структуры данных реализованы с учётом особенности работы кэша в современных CPU, для оптимизации медленного ввода/вывода используется кэширование в памяти. Благодаря использованию 64-разрядных указателей, размер файлов с базой практически не ограничен.


Для логического разделения баз в HamsterDB используется понятие окружений, которые позволяют хранить несколько разных БД  в одном файле. HamsterDB может использоваться как в виде связываемой с приложением библиотеки (не требует дополнительных зависимостей), так и в форме сервера. Сервер HamsterDB базируется на использовании небольшого http-сервера, который может запускаться отдельно или встраиваться в приложения. Доступны средства для тонкой настройки и тюнинга БД (размер кэша, ключей, страниц и т.п.).


HamsterDB можно рассматривать как стабильный  и зрелый проект, развивающийся с 2004 года. Для тестирования качества кода создано более 45000 проверок и 1800 unit-тестов.  HamsterDB активно используется во многих популярных десктоп-приложениях, встраиваемых устройствах, телефонах и даже в облачных системах.

Из изменений (http://hamsterdb.com/dl/RELEASE-NOTES-2.1.0.html) в HamsterDB 2.1.0 выделяется поддержка транзакций для окружений с хранением БД в памяти. Кроме того, значительно переработан API, проведена значительная ревизия и чистка. Большинство изменений в API связано с переименованием констант и функций с целью достижения единой схемы наименования. Удалены функции с поддержкой файловых фильтров, сжатия и шифрования хранимых данных. Формат хранилища не изменился. В состав включены две новые утилиты: ham_export для экспорта БД в компактном бинарном формате и  ham_import для создания окружения БД из ранее сохранённого бинарного дампа или слияния содержимого дампа с существующей БД. Кроме функций резервного копирования утилиты ham_export/ham_import рассматриваются как инструменты для переноса содержимого БД в процессе обновления версий HamsterDB в будущем.

URL: http://hamsterdb.com/news/show/id/60
Новость: http://www.opennet.me/opennews/art.shtml?num=36282


Содержание

Сообщения в этом обсуждении
"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено бедный буратино , 04-Мрт-13 02:53 
Блин, и как я про неё не знал ранее. Ну, лучше поздно, чем никому. Спасибище!

"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено AnonuS , 04-Мрт-13 03:53 
> ... в первую очередь ориентированной для встраивания в приложения функций постоянного хранения или кэширования записей ...
> ... активно используется во многих популярных десктоп-приложениях, встраиваемых устройствах, телефонах и даже в облачных системах.

Интересно почему в "Амароке" не "Хомячёк", а "Мускуль" ?


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено Michael Shigorin , 04-Мрт-13 03:56 
> Интересно почему в [KDE4] не "Хомячёк", а "Мускуль" ?

Боюсь, выбирали про другое и не слышавшие школьники (буквально).

http://www.opennet.me/openforum/vsluhforumID3/86831.html#61


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено AnonuS , 04-Мрт-13 04:40 
Мишаня, ты меня расстроил :-)

Коммент твой по ссылке прочитал, но не понял откуда ты эту инфу про школьников почерпнул.


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено Michael Shigorin , 04-Мрт-13 11:26 
> Коммент твой по ссылке прочитал, но не понял откуда ты эту инфу
> про школьников почерпнул.

Из первых рук.


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено б.б. , 04-Мрт-13 05:30 
я тоже про hamster не слышал, хотя могу пяток базёнок похожих назвать. и когда целенаправленно искал - не нашёл. вот что значит "если нет в debian, значит - на задворках мировой истории".

"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено Michael Shigorin , 04-Мрт-13 14:21 
> вот что значит "если нет в debian, значит - на задворках мировой истории".

Значит, нет в debian, на складах мировой истории.

PS: :)


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено Veter , 04-Мрт-13 17:11 
В частной переписке разрабы кдешного аконади честно отписываются - они из очень бедной страны (не помню точно, что-то вроде Афганистана) и этот проект им только для того, чтобы их заметили и пригласили работать хоть куда-нибудь в европы и америки. Это был ответ на мое предложение сделать бэкенд на эскулайт - выяснилось, мускуль они немного видели, потому его и выбрали, а других систем хранения не знают и знать не хотят. Другой вопрос, кто решил сделать это поделие одной из основных подсистем КДЕ.

"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено viral , 04-Мрт-13 20:38 
> В частной переписке разрабы кдешного аконади честно отписываются - они из очень
> бедной страны (не помню точно, что-то вроде Афганистана)

Пруф или не было. Если ты посмотришь в AUTHORS в исходниках этого аконади, то по именам легко заметишь, что авторы из европы (Гермашка, например) и штатов в основном.


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено Veter , 05-Мрт-13 09:22 
Письмо за давностью лет не сохранил (как можно увидеть по первой ссылке, баг я вешал весной 2009 г), но тогда у аконади было двое авторов (студенты, один вроде в Германии учился) - Tobias Koenig и Volker Krause. Если очень интересно, думаю, можно нагуглить по соцсетям, например.
О сути см. https://bugs.kde.org/show_bug.cgi?id=188536 и http://lists.debian.org/debian-russian/2010/02/msg00158.html

"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено viral , 05-Мрт-13 10:09 
> Tobias Koenig и Volker Krause.

Типичные афганские имена.

Из рассылки:
> Недавно был топик про КДЕ4 и аконади. В общем, делают сабж пара человек из афганистана, имхо абсолютно невменяемых.

И опять же без ссылок и каких-либо пруфов. Я представляю это так — кто-то в топике про KDE сделал вброс и кучка людей повелось, даже не удосужившись проверить, а теперь спустя годы это "всем известно что".

Но заметь, я не спорю с тем, что писали неопытные студенты, или с тем, что аконади говно (сам я его всегда отключал). Мне нужен пруф именно на вот это:
> они из очень бедной страны (не помню точно, что-то вроде Афганистана) и этот проект им только для того, чтобы их заметили и пригласили работать хоть куда-нибудь в европы и америки


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено jOKer , 04-Мрт-13 04:12 
Перерыл все исходники, но так я и не нашел заявленной поддержки питона... видимо предполагается, что питоновцам хватит и ctypes. Если так, то кушайте без меня - и без того хватает проблем, что бы их еще плодить на проблемах с биндингами.

Хотя конечно весьма жаль: идея встраиваемой NoSQL БД с транзакциями для питоновых проектов была бы очень даже ничего.

А вот для жабки и дотнета авторы постарались на славу; постарались так, что сразу видно что эта база для:

1) сишников
2) сишников
3) жабовцев и дотнетчиков
4) немножко для всех остальных, но тут пусть они выкручиваются сами


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено AnonuS , 04-Мрт-13 05:08 
Товарищ Джокер, что это за "плачь Ярославны" ты нам тут преподносишь? Неужели слабо байндинги написать, если тебе так нужен "Хомячёк"?

"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено jOKer , 04-Мрт-13 05:29 
Хм.. а вам доводилось писать биндинги под СУБД? Считаете что это так легко и не будет проблем с преобразованием сложных типов? Ню-ню...

А так, между нами:
>Биндинги для использования HamsterDB доступны для языков C/C++, Python, .NET, Java, Erlang и ADA

С/С++ - есть
.NET - есть
Java -есть
Python - нет
Erlang - нет, обеспечивается сторонним проектом на гитхабе
ADA - я не в курсе, может и есть

Ну и для кого эта БД?


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено б.б. , 04-Мрт-13 05:44 
> Python - нет

Они убили хомячка!


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено Michael Shigorin , 04-Мрт-13 14:20 
> Хм.. а вам доводилось писать биндинги под СУБД?

Мне кажется, это была неудачная попытка потроллить на тему "тебе надо, ты и делай".

Для того, чтобы понять эту фразу -- надо хотя бы разик попробовать её в деле на себе.


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено jOKer , 04-Мрт-13 17:11 
Михаил, это была попытка довести до товарища мысль, что глазами потребителя все делается очень просто и быстро. Но стоит начать делать, так тут же приходит понимание, что "под капотом" куда больше деталей чем тебе изначально казалось, и что все не так легко, как ты полагал изначально (а тем более писал от анонимуса).

"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено AnonuS , 05-Мрт-13 02:37 
Не надо ля-ля !

Код открыт, для Жабки байндинги готовые есть, бери и делай по аналогии, если тебе они действительно до зарезу нужны, а иначе дамская истерика получается.


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено Аноним , 05-Мрт-13 05:28 
Я с трудом себе могу представить что нибудь более бесполезное для сооружения питоновских иайндингов чем жаба-байндинг :)

На самом деле там есть С - стало быть кому реально надо - реально можно :)

PS: Навеяло Хомячок: Скажи нет змеям! :)


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено AnonuS , 05-Мрт-13 05:40 
> PS: Навеяло Хомячок: Скажи нет змеям! :)

:-)


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено uldus , 04-Мрт-13 08:42 
> Перерыл все исходники, но так я и не нашел заявленной поддержки питона

Плохо искали: https://github.com/cruppstahl/hamsterdb-python


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено jOKer , 04-Мрт-13 17:23 
>> Перерыл все исходники, но так я и не нашел заявленной поддержки питона
> Плохо искали: https://github.com/cruppstahl/hamsterdb-python

Вы правы, действительно это оно.

Меня просто ввел в заблуждение, тот факт, что в архиве с кодом СУБД уже лежали биндинги к яве и дотнету, а к питону не было... Уже пробую, спасибо за подсказку


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено userd , 04-Мрт-13 20:55 
как оно?

"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено Igel , 04-Мрт-13 09:18 
http://labs.codernity.com/codernitydb/ - не? =)

"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено jOKer , 04-Мрт-13 17:19 
Очень интересно! Спасибо за ссылку.

"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено Аноним , 04-Мрт-13 09:59 
> Хотя конечно весьма жаль: идея встраиваемой NoSQL БД с транзакциями для питоновых проектов была бы очень даже ничего.

bdb


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено Аноним , 05-Мрт-13 05:31 
> bdb

+100500

Оно конечно не модно говорить что тулза наших отцов (а кому и дедов!) - делает то же самое в 100500 раз быстрее почти не имеет глюков и применяется в каждом первом железе ... но ведь святая правда же! :)


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено arisu , 05-Мрт-13 21:26 
> bdb

As of July 2011, Oracle's list price for commercial Berkeley DB licenses varies between 900 and 13,800 USD per processor.

есть мнение, что автор hdb не настолько зажрался.


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено Аноним , 06-Мрт-13 00:13 
> commercial

Ключевое слово.

Авторы всех этих хомячковых поделок могут есть что угодно, но до bdb им как муравью до Бреста.


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено Michael Shigorin , 06-Мрт-13 02:37 
> Авторы всех этих хомячковых поделок могут есть что угодно, но до bdb
> им как муравью до Бреста.

...сказал человек, явно ни разу не сопоставлявший bdb и hdb как бэкенды под нагруженным openldap, например...


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено Аноним , 06-Мрт-13 05:53 
> бэкенды под нагруженным openldap, например

Этот пример может показывать что угодно. Например, рукожопие авторов бэкенда или админов.


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено Michael Shigorin , 06-Мрт-13 20:39 
>> бэкенды под нагруженным openldap, например
> Этот пример может показывать что угодно.
> Например, рукожопие авторов бэкенда или админов.

Если что, на "bdb index corruption" гугль вываливает пять миллионов результатов, а на hdb всё заработало в штатном режиме.  Что может показывать Ваш комментарий -- опустим.


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено userd , 06-Мрт-13 16:27 
Михаил, а Вы сопоставляли?
А если сопоставляли, прошу поделиться результатами.

"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено Michael Shigorin , 06-Мрт-13 20:46 
> Михаил, а Вы сопоставляли?

Да.

> А если сопоставляли, прошу поделиться результатами.

bdb был выкинут из-за развалов индексов под нагрузкой -- в 2005 в пользу ldbm за неимением лучшего, затем использовали уже написанный к тому времени hdb backend.  См. тж. http://www.openldap.org/faq/data/cache/44.html

Надо у Нетча уточнить, что было в последний раз...


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено Алексей , 06-Мрт-13 04:13 
Забудьте про оракловый BDB, есть ведь отличная современная альтернатива - Tokyo Cabinet и Kyoto Cabinet.

"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено arisu , 06-Мрт-13 09:48 
> Забудьте про оракловый BDB, есть ведь отличная современная альтернатива - Tokyo Cabinet
> и Kyoto Cabinet.

вот только hdb как минимум фичастей.


"Релиз встраиваемой NoSQL БД HamsterDB 2.1.0"
Отправлено fidaj , 04-Мрт-13 16:24 
а где http://vschart.com/compare/berkeley-db/vs/ ?