Ну, я искал хорошее решение для БД для моей идеи запуска. Я не буду создавать еще одну тему «Какая БД самая лучшая ?!», но я спрошу еще одну вещь.
Итак, я не нашел ни одной хорошей масштабируемой по горизонтали БД, написанной на C ++. Почему С ++? Конечно, есть Cassandra, если вам нужно хранилище документов, и Voldemort, если вам нужно хранилище значений ключей. Но оба они написаны на Java, поэтому небольшому проекту придется платить больше за большие объемы оперативной памяти за не подкачку JWM. Это не достаточно хорошо.
С другой стороны - мы можем написать собственную собственную DHT-систему (без передачи NAT - если вы думаете, что ваш проект будет размещен на многих серверах по всему миру - эта тема не об этом). Я полагаю, что это будет немного медленнее, чем у Кассандры, но я избавлюсь от Java и получу от этого прибыль. Итак, я буду использовать smt как MongoDB или Tokyo Cabinet. (Тест скорости, похоже, дает почти те же результаты, поэтому я нашел самые быстрые хранилища, которые я нашел).
Итак, вопросы:
Небольшой проект не может платить за большой объем оперативной памяти, но нуждается в эффективном решении и должен иметь возможность стать большим проектом, который нуждается в горизонтальном масштабировании. Мы должны:
a) создайте немасштабируемый материал, и если он будет работать отлично, вам понадобится масштабируемый сервер, перепишите его, используя что-то вроде Cassandra.
б) писать с использованием сложных огромных инструментов (на Java) и иметь низкую производительность.
c) написать что-то самостоятельно, используя немасштабируемую базу данных и собственную DTH, и улучшать ее при разработке.
Ява действительно RAM-монстр?
Что лучше для проекта с высокой загрузкой (если Cassandra не имеет горизонтальной масштабируемости): MongoDB или Cassandra?
Есть ли у Кассандры потребность в уровне кэша? (как при использовании Redis) Или у него есть свои алгоритмы?
Заранее спасибо.
Добавить:
Что я действительно прошу? Cassandra, кажется, немного медленнее и, как я уже сказал, будет «Ram-monster», который хорош для домашних приложений, но не очень хорош для серверов, но может быть масштабирован по горизонтали. И это то, что я действительно прошу: собственный DHT + mongodb или cassandra?