The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Доступна документо-ориентированная СУБД MongoDB 3.0"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Доступна документо-ориентированная СУБД MongoDB 3.0"  +/
Сообщение от opennews (??) on 06-Мрт-15, 15:55 
Представлен (http://blog.mongodb.org/post/112603230233/announcing-mongodb...) релиз ориентированной на хранение документов высокопроизводительной и высокомасштабируемой СУБД MongoDB 3.0 (http://www.mongodb.org), занимающей нишу между быстрыми и масштабируемыми системами, оперирующими данными в формате ключ/значение, и реляционными СУБД, функциональными и удобными в формировании запросов. Код MongoDB написан на языке C++ и распространяется в рамках лицензии AGPLv3.

MongoDB поддерживает хранение документов в JSON-подобном формате, имеет достаточно гибкий язык для формирования запросов, может создавать индексы для различных хранимых атрибутов, эффективно обеспечивает хранение больших бинарных объектов, поддерживает журналирование операций по изменению и добавлению данных в БД, может работать в соответствии с парадигмой Map/Reduce, поддерживает репликацию и построение отказоустойчивых конфигураций.

В MongoDB имеются встроенные средства по обеспечению шардинга (распределение набора данных по серверам на основе определенного ключа), комбинируя который репликацией данных можно построить горизонтально масштабируемый кластер хранения, в котором отсутствует единая точка отказа (сбой любого узла не сказывается на работе БД), поддерживается автоматическое восстановление после сбоя и перенос нагрузки с вышедшего из строя узла. Расширение кластера или преобразование одного сервера в кластер производится без остановки работы БД простым добавлением новых машин.


Особенности (http://docs.mongodb.org/manual/release-notes/3.0/) нового выпуска:


-  Pluggable Storage Engine API, позволяющий сторонним разработчикам создавать движки хранения для MongoDB;
-  Возможность использования движка хранения WiredTiger (http://wiredtiger.com/), помимо штатного движка MMAPv1. WiredTiger может использоваться только на 64-разрядных системах и отличается высоким уровнем масштабуемости на многоядерных системах и предсказуемым временем обработки запроса, не зависящим от числа записей в базе, благодаря применению (http://source.wiredtiger.com/pdfs/WiredTiger-1page.pdf) алгоритма, не использующего блокировки, и активному кэшированию данных ОЗУ.  В WiredTiger  также реализована возможность блокировки записей на уровне документов и поддержка хранения данных в сжатом виде (для сжатия используется библиотека snappy (https://www.opennet.ru/opennews/art.shtml?num=30003)).

<center><a href="http://res.cloudinary.com/hrscywv4p/image/upload/c_limit,h_9... src="https://www.opennet.ru/opennews/pics_base/0_1425643266.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;max-width:100%;" title="" border=0></a></center>

При использовании WiredTiger поддерживаются все возможности  MongoDB, но для перехода на новое хранилище требуется изменение (http://docs.mongodb.org/manual/release-notes/3.0-compatibili...) дискового формата хранилища. Настройка нового движка осуществляется через набор опций storage.wiredTiger (http://docs.mongodb.org/manual/reference/configuration-optio...). В системах репликации и шардинга в кластере MongoDB могут комбинироваться и совместно использоваться узлы с разными движками хранения.


<center><a href="http://res.cloudinary.com/hrscywv4p/image/upload/c_limit,h_9... src="https://www.opennet.ru/opennews/pics_base/0_1425643672.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;max-width:100%;" title="" border=0></a></center>

-  В штатном движке хранения MMAPv1  обеспечена поддержка блокировки на уровне коллекций. Изменена стратегия распределения данных в хранилище, которая теперь построена на основе метода PowerOf2, подразумевающего использование записей, размер которых кратен степени двойки (32, 64, 128, 256, 512 ... 2MB). Подобный подход более оптимален для хранения документов большого размера, но больше расходует дисковое пространство (например, если документ больше 2 Мб для него выделяется N блоков по 2 Мб, даже если он занимает 2Мб 1 байт).
-  Увеличено число узлов в наборе репликации. В MongoDB 3.0 в одном наборе может присутствовать до 50 узлов. С большим размером реплик могут работать драйверы C# (.NET) 1.10, Java 2.13, Python  (PyMongo) 3.0+,  Ruby 2.0+ и Node.JS 2.0+. Работа c большими наборами реплик в драйверах C++, Perl, PHP пока не поддерживается;
-  Поддержка механизма аутентификации SCRAM-SHA-1 (http://docs.mongodb.org/manual/core/authentication/#authenti...) (RFC 5802 (https://tools.ietf.org/html/rfc5802)).
-  Добавлена новая система для анализа эффективности выполнения запросов. Расширен (http://docs.mongodb.org/manual/reference/explain-results/) формат данных о запросе и реализованы средства доскональной интроспекции как плана построения запроса, так и выполнения запроса. Для анализа запросов представлены новый метод db.collection.explain() (http://docs.mongodb.org/manual/reference/method/db.collectio...) и команда explain (http://docs.mongodb.org/manual/reference/command/explain/#db...);

-  Расширены (http://docs.mongodb.org/manual/reference/log-messages/) средства ведения диагностических логов, в которых обеспечена привязка записей к специфичным компонентам и операциям;
-  В  утилиты mongodump и mongorestore добавлена поддержка параллельной обработки нескольких коллекций (опция "--numParallelCollections"). В  mongodump добавлены опции для выборочного исключения коллекций из дампа (--excludeCollection и --excludeCollectionsWithPrefix);
-  Утилиты mongostat и mongotop теперь могут возвращать статистику в формате JSON (опция --json).


URL: http://blog.mongodb.org/post/112603230233/announcing-mongodb...
Новость: https://www.opennet.ru/opennews/art.shtml?num=41785

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Доступна документо-ориентированная СУБД MongoDB 3.0"  –4 +/
Сообщение от Аноним (??) on 06-Мрт-15, 15:55 
про память ни слова..
Оно все также бесконтрольно потребляет память?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

14. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +2 +/
Сообщение от Аноним (??) on 06-Мрт-15, 19:48 
"Memory-mapped files are the critical piece of the storage engine in MongoDB. By using memory mapped files MongoDB can treat the contents of its data files as if they were in memory.", - говорит нам мануал. База будет занимать ровно столько памяти, сколько есть при условии, что данных больше, чем RAM.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

17. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +1 +/
Сообщение от Аноним (??) on 06-Мрт-15, 20:39 
Товарисч, откройте для себя, как работает mmap файлов. Что значит "при условии"? Файлы просто мапятся в адресное пространство процесса, при этом выделения резидентной памяти под данные, находящиеся в этих файлах, не происходит.
Ответить | Правка | ^ к родителю #14 | Наверх | Cообщить модератору

24. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +/
Сообщение от Аноним (??) on 07-Мрт-15, 00:59 
Что значит "просто мапятся"? Процессор не умеет работать с диском напрямую. Ядро внутри себя связывает страницы виртуальной памяти процесса с блоками в файле. При обращении к ним программы происходит page fault, который ядро перехватывает и загружает данные с диска в оперативную память.

Предположим что происходит полный просмотр большой коллекции. Монга "потрогает" много страниц виртуальной памяти и заставит ядро выделить для этого много памяти физической и это будет выглядеть так как будто монга "съела" много оперативной памяти. Фактически это cached страницы с диска и могут быть освобождены при нехватке памяти в системе.

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

Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

27. "Доступна документо-ориентированная СУБД MongoDB 3.0"  –3 +/
Сообщение от Аноним (??) on 07-Мрт-15, 04:16 
> Так что товарисч в принципе прав монга есть всю память пока она не закончится
> либо все активно используемые коллекции не поместятся в оперативную  память.

Раньше "русский программер" означало что он потащит всю команду вверх, а перерь - это симол балласта. Читая твои посты - 100% понимаю почему :(

Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

28. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +/
Сообщение от Аноним (??) on 07-Мрт-15, 04:22 
>> Так что товарисч в принципе прав монга есть всю память пока она не закончится
>> либо все активно используемые коллекции не поместятся в оперативную  память.
> Читая твои посты - 100% понимаю почему :(

И дурак, и накололся :( Грёбанная монга и в правду ....

How do I configure the cache size?

MongoDB has no configurable cache. MongoDB uses all free memory on the system automatically by way of memory-mapped files. Operating systems use the same approach with their file system caches.

Мои извинения :(

Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

26. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +/
Сообщение от Аноним (??) on 07-Мрт-15, 04:14 
>База будет занимать ровно столько памяти, сколько есть при условии, что данных больше, чем RAM.

Добавь этот гениальный вывод в своё резюме, умник :)))))

Ответить | Правка | ^ к родителю #14 | Наверх | Cообщить модератору

2. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +4 +/
Сообщение от Аноним (??) on 06-Мрт-15, 16:01 
А оно никогда и не потребляло бесконтрольно память.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

18. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +3 +/
Сообщение от AlexAT (ok) on 06-Мрт-15, 20:59 
Чел просто рядом с монго видимо крутил другие сервисы, и удивляется - почему оно безбожно  вытесняет всё, что под руку попадает. Да потому, что монго трешит кеш в хлам. Место монго либо на отдельной физике, либо в виртуалке, но основное правило: рядом с нодой монго в пределах ОС никаких прочих конкурирующих за память сервисов быть не должно. Тогда производительность будет мягкой и шелковистой.

И это правило, кстати, не только на монго распространяется, а на любые жадные до кеширования сервисы.

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

21. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +/
Сообщение от Crazy Alex (ok) on 06-Мрт-15, 23:32 
Именно. Одна тяжелая серверная софтина на операционку - классика.
Ответить | Правка | ^ к родителю #18 | Наверх | Cообщить модератору

33. "Доступна документо-ориентированная СУБД MongoDB 3.0"  –1 +/
Сообщение от waf (ok) on 12-Мрт-15, 13:56 
А не знаю, был ли это сарказм или нет, но сейчас повсеместно вектор на виртуалки, так что да, одна операционка.
Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

3. "Доступна документо-ориентированная СУБД MongoDB 3.0"  –3 +/
Сообщение от fi (ok) on 06-Мрт-15, 16:21 
Ну что, Pg уже догоняют?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +/
Сообщение от svr on 06-Мрт-15, 16:48 
А какая связь с Pg?
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

7. "Доступна документо-ориентированная СУБД MongoDB 3.0"  –1 +/
Сообщение от бедный буратино (ok) on 06-Мрт-15, 16:54 
в pg есть шустрое бессхемное хранилище
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

9. "Доступна документо-ориентированная СУБД MongoDB 3.0"  –4 +/
Сообщение от Аноним (??) on 06-Мрт-15, 17:49 
Только крайне бестолковое. Во-первых нет такого богатого набора операций для работы с JSON, во вторых нет автоматического шардинга. В-третьих нет ни embedded документов, ни ссылок. А так вам и раньше никто не запрещал, например, хранить json в текстовом поле, этот новый тип — просто оптимизация.
Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

12. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +/
Сообщение от Moomintroll (ok) on 06-Мрт-15, 18:30 
> нет такого богатого набора операций для работы с JSON

Вы б погуглили на предмет типов данных JSON и JSONB в PostgreSQL.

Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

19. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +2 +/
Сообщение от Anonim (??) on 06-Мрт-15, 22:25 
>Только крайне бестолковое. Во-первых нет такого богатого набора операций для работы с JSON, во вторых нет автоматического шардинга. В-третьих нет ни embedded документов, ни ссылок. А так вам и раньше никто не запрещал, например, хранить json в текстовом поле, этот новый тип — просто оптимизация.

Плагиатите, батенька: http://habrahabr.ru/post/252129/#comment_8313631

Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

32. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +/
Сообщение от sarman email on 10-Мрт-15, 11:10 
> А какая связь с Pg?

Связь с pg такая, что один и тот же чувак принимал участие в движке mongo wild tiger, что комиттил в  постгрес (Dr Michael Cahill)

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

5. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +2 +/
Сообщение от Аноним (??) on 06-Мрт-15, 16:49 
>> В штатном движке хранения MMAPv1 обеспечена поддержка блокировки на уровне коллекций.

Она там и раньше была, добавили блокировку на уровне документа («document-level locking»).

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

30. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +/
Сообщение от Аноним (??) on 07-Мрт-15, 14:30 
>Она там и раньше была, добавили блокировку на уровне документа («document-level locking»).

Это только в проводном тигре.

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

8. "Доступна документо-ориентированная СУБД MongoDB 3.0"  –1 +/
Сообщение от Аноним (??) on 06-Мрт-15, 17:01 
Где можно почитать про пропадание данных в монге и развеять этот миф?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

10. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +2 +/
Сообщение от anonymous (??) on 06-Мрт-15, 17:52 
> Где можно почитать про пропадание данных в монге и развеять этот миф?

пропадают только на тех, что смотрят в интернет без firewall ? http://www.information-age.com/technology/security/123459001...

Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

11. "Доступна документо-ориентированная СУБД MongoDB 3.0"  –1 +/
Сообщение от ДяДя on 06-Мрт-15, 18:16 
Буквально везде ;-)
https://aphyr.com/posts/284-call-me-maybe-mongodb
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

13. "Доступна документо-ориентированная СУБД MongoDB 3.0"  –7 +/
Сообщение от Аноним (??) on 06-Мрт-15, 19:45 
Поздравляю всех коллег-идиотов, которые до сих пор используют Монгу направо и налево. Третий релиз - конечно, важная веха у продукта, который после релиза Postgres hstore стал крайне нишевым.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

15. "Доступна документо-ориентированная СУБД MongoDB 3.0"  –1 +/
Сообщение от Аноним (??) on 06-Мрт-15, 19:59 
У них разные ниши. Выше комментарий на эту есть. Подтягивайте матчасть, не стесняйтесь.
Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

16. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +/
Сообщение от Аноним (??) on 06-Мрт-15, 20:08 
> У них разные ниши. Выше комментарий на эту есть. Подтягивайте матчасть, не
> стесняйтесь.

Ой, я во-первый, обратите внимание указал, что Монга ща весьма нишевая штука, не то что было в 2011-2013, когда не было быстрого persistent key-value и, ради этой скорости, денормализировали все, что можно и что нельзя тоже.

Подскажите кейс, ну то есть нишу, плиз, где ща врывается монга.

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

20. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +/
Сообщение от Аноним (??) on 06-Мрт-15, 23:32 
Да хоть прямая работа с GeoJSON. На самом деле примеров полно, у PostgreSQL с его JSONB с этим сильно грустнее.
Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

22. "Доступна документо-ориентированная СУБД MongoDB 3.0"  –1 +/
Сообщение от Аноним (??) on 07-Мрт-15, 00:04 
Это надо для NodeJS?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

23. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +/
Сообщение от Аноним (??) on 07-Мрт-15, 00:22 
Драйвера есть для большинства популярных языков, не только JS.
Ответить | Правка | ^ к родителю #22 | Наверх | Cообщить модератору

29. "Доступна документо-ориентированная СУБД MongoDB 3.0"  –1 +/
Сообщение от Аноним (??) on 07-Мрт-15, 05:15 
Ещё драйвера надо ставить?
Ответить | Правка | ^ к родителю #23 | Наверх | Cообщить модератору

31. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +/
Сообщение от Аноним (??) on 07-Мрт-15, 15:48 
Как и у любой другой ДБ.
Ответить | Правка | ^ к родителю #29 | Наверх | Cообщить модератору

25. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +/
Сообщение от Аноним (??) on 07-Мрт-15, 01:52 
Графички вставки в монгу, у которой нет транзакций, супротив иннодб, доставляют неимоверно.

MongoDB как зеркало мировой СУБД-революции
http://arbinada.com/main/node/1283

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

34. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +/
Сообщение от Аноним (??) on 18-Мрт-15, 19:42 
Что у нее с транзакциями? Можно в транзакции сделать select for update одной записи, другой записи, обновить их и сделать commit или rollback?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

35. "Доступна документо-ориентированная СУБД MongoDB 3.0"  +/
Сообщение от AlexAT (ok) on 19-Мрт-15, 00:49 
> Что у нее с транзакциями? Можно в транзакции сделать select for update
> одной записи, другой записи, обновить их и сделать commit или rollback?

Запись атомарная, в том числе сета. Транзакций (ACID/MVCC) в оригинале нет. Но есть вариант MongoDB от Tokutek - TokuMX, где эти самые ACID/MVCC транзакции вполне себе есть.

Ответить | Правка | ^ к родителю #34 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру