Скриншоты – s.pr-cy.ru/screenshots/shots/habrahabr.ru проблема в записе, на чтение ещё более менее. Конечно может оказаться что мы просто не умеем её готовить, но в любом случае сложилось мнение что использовать базу для таких задач это перебор.
У нас 11 ТБ мелких файлов по 2–4 МБ, которые нужно ротейтить каждый день, причём выборку очень желательно делать не тупым перебором, а SQL-запросами, например. Что посоветуете?
Забыл указать, что данные нужно реплицировать на две ноды. Пока всё живёт на гластере, но это медленновато, особенно, когда нужно 200-300 тысяч файлов выбрать и удалить.
Попробуй-те elliptics — github.com/reverbrain/elliptics распределенная хранилка, как раз для такого типа данных. Хранилище типа append-only с дефрагментацией постфактум. У нас с модификациями отлично 2 млрд файлов по 10-12 Кб хранит.
Для разработчиков руби есть еще несколько хороших новостей.
1) mongo драйвер сильно переписан и будет официально поддерживаться командой mongo
2) Разработчик Mongoid в штате mongo
3) Mongoid 5.0 перейдет на использование официального драйвера вместо moped
4) Выпуск нового драйвера после релиза mongo 3.0
Mongo работает сейчас над унификацией драйверов для разных языков.
Пробовали. Без вариантов, упретесь в число apache вокеров. Для nginx тоже нет асинхронного модуля. Мы используем несколько вокеров tornado + nginx как балансер.
Кстати, Mongo-tools теперь написаны на go (т.е. mongodump, mongorestore и так далее), да и в сервисе MMS используются многие части на go, так что ситуация с go тоже очень даже приятная.
А кто уже узнавал, она совместима с прошлой версией?
Могу ли я просто обновить версию и надеятся, что она будет работать над старыми данными с помощью api вызовов от старого же кода?
Идут, но фишка в том, что если у вас терабайты данных — самым безопасным способом апгрейда будет dump & restore. А со сменой движка на WildTiger — это единственный способ апгрейда.
Вместе с каждой новой версией они еще должны давать 30TB NAS во временное пользование…
Анонс MongoDB 3