LINUX.ORG.RU — Русская информация об ОС Linux

[#]  

MongoDB 1.6.0

MongoDB — документо-ориентированная система управления базами данных (СУБД) с открытым исходным кодом, не требующая описания схемы таблиц. Написана на языке C++.

Шардинг

Шардинг готов для использования в производстве, давая возможность масштабировать MongoDB горизонтально. При необходимости единственный экземпляр mongod может быть преобразован в распределённый кластер с нулевым временем простоя.

Replica Sets

Replica sets — новый метод репликации, который предоставляет возможность автоматически переключаться среди участников кластера.

Replica pairs объявлен устаревшим; использующим данный функционал рекомендуется перейти на использование replica sets.

Другие улучшения

  • Опция w (и wtimeout) форсирует запись на n серверов до успешного завершения операции (особенно хорошо работает с replica sets)
  • $or-запросы
  • Улучшенная многопоточность
  • $slice-оператор для возвращения части массива (подмассива)
  • 64 индекса на каждую коллекцию (в 1.4 было 40)
  • 64-битные целые могут быть представлены в командной оболочке посредством NumberLong
  • Команда findAndModify теперь поддерживает upserts (аналог SQL MERGE). Также теперь позволяется указывать поле, которое должно быть получено
  • $showDiskLoc — опция для отображения местонахождения документа на диске
  • Поддержка IPv6 и доменных сокетов UNIX
  • C++ клиент отделён от бинарного пакета

>>> Подробности

Метки: mongodb, nosql, opensource, базы данных

Aesthete ** (05.08.2010 22:51:47)
Проверено: catap (05.08.2010 23:51:22)
Juick

[#]  
kost-bebix (фотография)

Да, эта версия определенно годна для продакшна (конечно, ждем 1.6.1). Монго прекрасна, начинаю копаться в джаваскрипт-эмуляторе мап-редьюс, ибо это самое узкое место в данный момент.

kost-bebix ** (05.08.2010 23:56:30)
[#]  
Zenom (фотография)

Боженька, зачем ты сделал модным эти документ-ориентированные СУБД? Я же страдаю, разве ты не видишь? Ладно, если их уничтожить уже нельзя, то пожалуйста, лиши возможности модниц принимать решение об их использовании!

Zenom ** (06.08.2010 0:17:09)
[#] Ответ на: комментарий от Zenom 06.08.2010 0:17:09  

А есть альтернативы ?

Jetty ** (06.08.2010 0:26:42)
[#]  

Оно уже стало поддерживать базу данных более 2,5 ГБ на 32-х битах?

PS. У нас есть и CouchDB в продакшене. Шардинг и мэп-редьюс там давно.

pythonist * (06.08.2010 1:05:26)
[#] Ответ на: комментарий от Jetty 06.08.2010 0:26:42  
Zenom (фотография)

Там, где я вынужден использовать Cassandra наиболее логичным решением была бы РСУБД.

Zenom ** (06.08.2010 1:18:45)
[#]  

это научилось уже mapreduce в несколько потоков или все так же однопоточное?

JFreeM *** (06.08.2010 1:20:55)
[#]  
lystor (фотография)

> MongoDB 1.6.0

В Mandriva 2010, Ubuntu 10.10, Debian 6.0 Testing пока лежит MongoDB 1.4.4.

lystor * (06.08.2010 1:23:42)
[#] Ответ на: комментарий от lystor 06.08.2010 1:23:42  

В Gentoo 1.5.5 лежит.

keeper_b ** (06.08.2010 1:27:41)
[#]  
drakmail (фотография)

Выглядит заманчиво. Особенно радует наличие java биндингов. На досуге надо будет попробовать посмотреть.

drakmail *** (06.08.2010 2:02:26)
[#] Ответ на: комментарий от pythonist 06.08.2010 1:05:26  

Поподробнее про шардинг в couchdb можно?

catap **** (06.08.2010 2:03:36)
[#] Ответ на: комментарий от catap 06.08.2010 2:03:36  
JackDaniel (фотография)

Нету его из коробки, только сторонняя приблуда couchdb-lounge и она сырая еще очень сильно.

JackDaniel (06.08.2010 7:07:23)
[#]  
JackDaniel (фотография)

А в ней можно замутить из всего CAP только C(A|B) чтобы консистенция была?

JackDaniel (06.08.2010 7:14:26)
[#]  

Это чудо не собирается на big-endian платформах, и по словам авторов не будет.

anonymous (06.08.2010 7:16:37)
[#] Ответ на: комментарий от keeper_b 06.08.2010 1:27:41  

1.5.x - это dev. 1.4.x - stable.

Aesthete ** (06.08.2010 8:18:14)
[#]  

> документо-ориентированная система управления базами данных

Объясните дураку, что же это такое? Куда это можно присунуть, и где этого наоборот использовать не стоит?

anonymous (06.08.2010 9:57:29)
[#] Ответ на: комментарий от JackDaniel 06.08.2010 7:07:23  

картина мира восстановленна. ура!

catap **** (06.08.2010 10:02:58)
[#] Ответ на: комментарий от anonymous 06.08.2010 9:57:29  

Что за НЁХ?

Да, да, поддерживаю! Что это такое?

anonymous (06.08.2010 10:34:00)
[#]  
real_maverick (фотография)

кто нибудь пробовал полнотекст прикрутить на основе multikeys и что юзал для стемминга в этом случае?

real_maverick *** (06.08.2010 10:50:45)
[#] Ответ на: комментарий от real_maverick 06.08.2010 10:50:45  

Для полнотекстового поиска надо использовать специальные инструменты, а не пытаться натянуть его на систему хранения. Ничем хорошим это, обычно, не заканчивается.

baverman ** (06.08.2010 11:30:27)
[#] Ответ на: комментарий от Zenom 06.08.2010 0:17:09  
matumba (фотография)

> Боженька, зачем ты сделал модным эти документ-ориентированные СУБД?

Присоединяюсь к молитвам.
"Вразуми начальников и дилетантов, да обойдёт их стороной искушение применять молоток вместо отвёртки, ибо не есть сие благо".

matumba *** (06.08.2010 11:32:11)
[#] Ответ на: комментарий от real_maverick 06.08.2010 10:50:45  
KRoN73 (фотография)

>кто нибудь пробовал полнотекст прикрутить на основе multikeys

Ну, я планирую прикрутить Sphinx. Там, вроде, ничего сложного.

...

Меня больше интересует как бы для распределённой базы придумать единые 32-х битные уникальные ID. Чтобы можно было на разных машинах писать и не иметь коллизий.

KRoN73 ***** (06.08.2010 11:37:00)
[#]  

ораклокопец настает.

AVL2 ***** (06.08.2010 11:38:04)
[#] Ответ на: комментарий от matumba 06.08.2010 11:32:11  
KRoN73 (фотография)

>"Вразуми начальников и дилетантов, да обойдёт их стороной искушение применять молоток вместо отвёртки, ибо не есть сие благо".

Появился семигранный гаечный ключ для завинчивания специфических, но не редко встречающихся семигранных гаек. Но народ плачет и молится, матерясь на семигранные ключи и предпочитает завинчивать гайки по старинке - плоскогубцами.

KRoN73 ***** (06.08.2010 11:38:34)
[#] Ответ на: комментарий от KRoN73 06.08.2010 11:37:00  
theos (фотография)

>Чтобы можно было на разных машинах писать и не иметь коллизий.

Не знаю специфику задачи, а решение наподобии выдачи айпишников по маске (маска ограничевает диапазон) не подойдет?

theos ** (06.08.2010 11:43:19)
[#] Ответ на: комментарий от Zenom 06.08.2010 1:18:45  

У меня ситуация ровно наоборот: используется DB2 со странной схемой данных и монструозными селектами там, где идеально подошла бы, например, MongoDB. Это проблема не технологии, а менеджмента и архитектуры.

Digal (06.08.2010 11:43:24)
[#] Ответ на: комментарий от KRoN73 06.08.2010 11:38:34  
theos (фотография)

>специфических, но не редко встречающихся семигранных гаек.

Ну так расскажите нам скорее что это такие за семигранные гайки.

theos ** (06.08.2010 11:44:19)
[#] Ответ на: комментарий от KRoN73 06.08.2010 11:37:00  

>Меня больше интересует как бы для распределённой базы придумать единые 32-х битные уникальные ID. Чтобы можно было на разных машинах писать и не иметь коллизий.

отдать n-бит из этого идентификатора под номер ноды?

AVL2 ***** (06.08.2010 11:50:51)
[#] Ответ на: комментарий от baverman 06.08.2010 11:30:27  
Evgueni (фотография)

> Для полнотекстового поиска надо использовать специальные инструменты, а не пытаться натянуть его на систему хранения. Ничем хорошим это, обычно, не заканчивается.

Эээ, а как же оное в PostgreSQL?

Evgueni ***** (06.08.2010 11:51:59)
[#] Ответ на: комментарий от theos 06.08.2010 11:43:19  
KRoN73 (фотография)

>Не знаю специфику задачи

Да есть желание попробовать сделать распределённый форум. Типа, если одна машина откажет, с другой бы чтобы работало.

>а решение наподобии выдачи айпишников по маске (маска ограничевает диапазон) не подойдет?


Да, мысль. Надо подумать.

KRoN73 ***** (06.08.2010 11:54:20)
[#] Ответ на: комментарий от theos 06.08.2010 11:44:19  
KRoN73 (фотография)

>Ну так расскажите нам скорее что это такие за семигранные гайки.

Есть такие. Там, где не требуется транзакционная целостность, но где важны скорость и масштабируемость. Или быстрые модификации структуры.

KRoN73 ***** (06.08.2010 11:55:59)
[#] Ответ на: комментарий от Evgueni 06.08.2010 11:51:59  
KRoN73 (фотография)

>Эээ, а как же оное в PostgreSQL?

Я даже в mysql не использую fulltext. Тормозной он и неудобный. В то время, как sphinx среди двух миллионов сообщений на 4Гб находит результат за десятые и сотые доли секунды.

KRoN73 ***** (06.08.2010 11:57:04)
[#] Ответ на: комментарий от KRoN73 06.08.2010 11:55:59  
theos (фотография)

>но где важны скорость и масштабируемость

А где бы солидных тестов найти? А то после каждого теста, показывающего хорошее преимущество NoSQL шло жесткое разоблачение.

theos ** (06.08.2010 11:59:06)
[#] Ответ на: комментарий от theos 06.08.2010 11:59:06  
KRoN73 (фотография)

>А где бы солидных тестов найти?

Как реализую что-нибудь солидное - будет и солидный тест. Пока же хватает и поверхностных оценок для того, чтобы делать выводы о применимости:

http://www.linux.org.ru/jump-message.jsp?msgid=5111473&cid=5131669
http://www.linux.org.ru/jump-message.jsp?msgid=5139765&cid=5151850

KRoN73 ***** (06.08.2010 12:03:26)
[#] Ответ на: комментарий от KRoN73 06.08.2010 11:37:00  

> Меня больше интересует как бы для распределённой базы придумать единые 32-х битные уникальные ID

Если нод две, то тупо чет/нечет подойдет :)

anonymous (06.08.2010 12:09:13)
[#] Ответ на: комментарий от Digal 06.08.2010 11:43:24  

> используется DB2 со странной схемой данных и монструозными селектами

Кхе. И как вы монстроузные селекты собираетесь описывать понятием key/value? Кхе-кхе

anonymous (06.08.2010 12:10:32)
[#] Ответ на: комментарий от KRoN73 06.08.2010 11:57:04  

> Я даже в mysql не использую fulltext.

А зря. В отличии от mySQL в PostgreSQL ребята подошли с головой к данной проблеме. Очень толково сделали полнотекстовый поиск. Читать здесь:
http://rus-linux.net/lib.php?name=/MyLDP/subd/pgfts.html
http://www.sai.msu.su/~megera/postgres/talks/fts_pgsql_intro.html#ftsperf

anonymous (06.08.2010 12:13:27)
[#] Ответ на: комментарий от KRoN73 06.08.2010 11:57:04  
Evgueni (фотография)

>>Эээ, а как же оное в PostgreSQL?

>Я даже в mysql не использую fulltext.

А вы попробуйте, вдруг понравится (я не про MySQL очевидно :) - нашли с чем сравнивать) http://www.postgresql.org/docs/8.4/static/textsearch.html

Evgueni ***** (06.08.2010 12:29:05)
[#] Ответ на: комментарий от Evgueni 06.08.2010 12:29:05  
Evgueni (фотография)

Ну и тут: http://www.linux.org.ru/search.jsp?q=%D0%9F%D0%BE%D0%BB%D0%BD%D0%BE%D1%82%D0%...

В третьей ссылке KRoN73 в 2007 году уже объясняли почему в MySQL поиск плох, а в PostgtreSQL нет.

Evgueni ***** (06.08.2010 12:35:18)
[#] Ответ на: комментарий от Zenom 06.08.2010 0:17:09  

> зачем ты сделал модным эти документ-ориентированные СУБД?

как зачем? в них кукисы хранить удобно

anonymous (06.08.2010 12:54:11)
[#] Ответ на: комментарий от Evgueni 06.08.2010 11:51:59  

> Эээ, а как же оное в PostgreSQL?

Пробежал глазами по доке -- очень богатый и гибкий функционал. Удивился. Как раз то исключение из правила. Когда можно вмешаться в парсинг документов, определить свои веса для ключей (например модели товаров должны иметь наивысший приоритет).

Еще две бд назовешь с аналогичным по мощности фуллтекстовым поиском?

baverman ** (06.08.2010 13:06:40)
[#] Ответ на: комментарий от KRoN73 06.08.2010 11:38:34  
Denjs (фотография)

>>"Вразуми начальников и дилетантов, да обойдёт их стороной искушение применять молоток вместо отвёртки, ибо не есть сие благо". > >Появился семигранный гаечный ключ для завинчивания специфических, но >не редко встречающихся семигранных гаек. Но народ плачет и молится, >матерясь на семигранные ключи и предпочитает завинчивать гайки по >старинке - плоскогубцами.

скорее проблема в том, что вместо применения старинных, проверенных, и ничуть не уступающих по качеству 6-и гранных гаек, быдло-топ-менеджеры дадут команду использовать 7-и гранные. просто потому что так "красифше-наX" и "солиднее-мля"...

о том что-б этого не было и моляцца)

Denjs (06.08.2010 15:04:45)
[#] Ответ на: комментарий от Denjs 06.08.2010 15:04:45  
KRoN73 (фотография)

>о том что-б этого не было и моляцца)

У кого голова не плечах есть, тем молиться смысла нет :) Они итак решат, какие тут гайки лучше подойдут. А кто сам решить не может - тому и молитвы не помогут...

KRoN73 ***** (06.08.2010 15:06:45)
[#] Ответ на: комментарий от baverman 06.08.2010 11:30:27  
real_maverick (фотография)

> Для полнотекстового поиска надо использовать специальные инструменты, а не пытаться натянуть его на систему хранения.

поверь я с полнотекстом очень и очень сильно и плотно дружу в разных его инкарнациях и тут есть возможность его также прикрутить, что и собираюсь делать, интересно было - пробовал кто либо или нет.

real_maverick *** (06.08.2010 15:16:27)
[#] Ответ на: комментарий от KRoN73 06.08.2010 15:06:45  

> У кого голова не плечах есть, тем молиться смысла нет :) Они итак решат, какие тут гайки лучше подойдут. А кто сам решить не может

Понты такие понты.

tailgunner ***** (06.08.2010 15:17:43)
[#] Ответ на: комментарий от KRoN73 06.08.2010 11:37:00  
real_maverick (фотография)

> Ну, я планирую прикрутить Sphinx. Там, вроде, ничего сложного.

ага - я люсену :) (индекс часто и сильно меняется)

а стеминг? стандартный? я вот собираюсь от aot подтянуть напосмотреть

real_maverick *** (06.08.2010 15:19:05)
[#] Ответ на: комментарий от Evgueni 06.08.2010 11:51:59  
real_maverick (фотография)

> Эээ, а как же оное в PostgreSQL

pg'шный fts более чем унулое овно, юзабельное в простейших случаях

real_maverick *** (06.08.2010 15:20:34)
[#] Ответ на: комментарий от KRoN73 06.08.2010 15:06:45  
Denjs (фотография)

>У кого голова не плечах есть, тем молиться смысла нет :) Они итак решат, какие тут гайки лучше подойдут. А кто сам решить не может - тому и молитвы не помогут...

это бы конечно наверное так. но типичный "топ" в российских территориях - тварь практически неуправляемая, не прогнозируемая и не вменяемая. думать он часто не умеет, или думает о своем. его можно только приманить деньгами, а про суть вещей он судит по "солидности" презентации.

и нам, как техническим специалистам российских компаний, часто остается только молиться. потому что иного пути повлиять на ситуацию и решение топа - часто нет ))))

часто даже "документ на рецензирование", спускают как "уже утвержденный". А в нем такой бред сивой кАбылы написан, шопипец ))) вы думаете тут можно сделать что-то иное кроме как молиться?))) тогда вам редко повезло с компанией)

Denjs (06.08.2010 15:21:44)
[#] Ответ на: комментарий от real_maverick 06.08.2010 15:19:05  
KRoN73 (фотография)

>а стеминг? стандартный?

Ну да. И для поиска хватает, даже если юзеру и выскочит лишняя ссылка - переживёт, и для системных нужд, например, при автоматическом связывании материалов - всё равно часто потом более жёсткая проверка идёт и модераторы/редакторы в итоге всё равно должны поработать.

KRoN73 ***** (06.08.2010 15:35:22)
[#] Ответ на: комментарий от Denjs 06.08.2010 15:21:44  
KRoN73 (фотография)

>это бы конечно наверное так. но типичный "топ" в российских территориях - тварь практически неуправляемая

Ну так можно же тупо держаться от таких подальше :)

KRoN73 ***** (06.08.2010 15:35:54)
[#] Ответ на: комментарий от KRoN73 06.08.2010 15:35:22  
real_maverick (фотография)

> жёсткая проверка идёт и модераторы/редакторы в итоге всё равно должны поработать

повезло :)))

real_maverick *** (06.08.2010 15:38:51)

О Сервере - Правила форума
http://www.linux.org.ru/

Rambler's Top100 Рейтинг@Mail.ru