Накатав коротеньку статтю як підходити до проектування документно-орієнтованих баз даних. Досвідченні розробники, що користуються NoSQL рішеннями не знайдуть нічого нового, а ось початківцям мабуть буде цікаво.
Хочу поділитись чудовою книжкою про MongoDB. Книжка хороша тим, що є дуже малою, всього 32 сторінки, водночас інформативною та корисною.
MongoDB це документно орієнтована база даних, яка належить до групи NoSQL технологій. Вона є досить простою та достатньо стабільною.
І до теми. Недавно вийшла MongoDB 1.8, зміни:
* Journaling
* Sharding performance improvements
* Replica set enhancements, including support for authentication
* Spherical geo search
* Covered and sparse indexes
* B-tree index self-compaction
* New map/reduce options for incremental updates
* Tab completion in the shell
* mongostat --discover
Рік Коупланд, SourceForge.net виступив з доповіддю на тему «Як Python, TurboGears, і MongoDB перетворять SourceForge.net», на PyCon 2010 сьогодні в Атланті, штат Джорджія.
Коупланд обговорював бажання SourceForge відмовитись від використання PHP коду і почати переробляти зовнішній вигляд сайту з яким стикаються клієнти, використовуючи Python, TurboGears, і MongoDB. Код PHP був обраний SourceForge найкращою технологією ще у далекому 1998 році, і SourceForge вважає, що поєднання Python і NoSQL це найсучасніші технології на даний момент.
Цікаво, що Коупланд розповідає про те, що їхнє небажання використовувати Memcached виникло через перевантаження мережі, серіалізацію і десеріалізацію об'єкту. Коупланд вважає, що MongoDB може мати таку ж продуктивність, як і Memcached, використовуючи локальні допоміжні пристрої.
Нещодавно зібрались в одному місці ведучі розробники основних ключ-значення сховищ (key-value stores) з відкритим кодом. Чому це важливо? Тому що сховища типу «ключ-значення» є основою для рівня збереження даних у обчислювальних «хмарках» (computing clouds). Всім відомий SQL просто не може надати такого рівня масштабованості, який надається ключ-значення сховищами.
NOSQL це конференція в якій взяли участь представники таких проектів:
— Jay Kreps, Linkedin
— Avinash Lakshman, Facebook
— Cliff Moon, Powerset
— Ryan Rawson, Stumbleupon
— Doug Judd, Zvents
— Chris Anderson, couch.io
— Jon Travis, Springsource
— Dwight Merriman, 10gen
Infinite Scalability — Jonas S Karlsson, Google
Майже всі слайди та відео доступні на одного з учасників.
Якщо цікавитесь масштабованістю та архітектурами таких монстрів як Facebook, Amazon та інших, обов'язково перечитайте та перегляньте матеріали конференції.