Давайте попробуем выбрать аппаратно-программное решение.
В день добавляется новыйх 250 тыс. сообщений.
Средний размер сообщения - 200 байт.
В мегабайтах - 60.
Это наиболее суровая ожидаемая нагрузка.
Если предположить, что 70% сообщений добавляется в период 9-18 часов (70% = 175000 штук), получим 324 сообщения в минуту = ~5 сообщений в секунду.
Но скорость не важна, т.к. добавляться в базу они должны пачками, штук по 100 сразу и супербыстрое добавление не важно.
Через месяц в базе будет 7750000 (7.7 млн) сообщений, 1.8 гигов сырых данных.
Через год - 93 млн. сообщений, 22.2 гига данных.
Вопросы хардварно-софтварные:
1. Полнотекстовый поиск в 93 млн сообщениях средней длины 200 байт.
2. Аппаратное обеспечение для предложенной платформы.
Обычная задача многокритериальной оптимизации: чем дешевле, тем лучше и чем быстрее поиск, тем лучше. Поиск фраз состоящих из 1, 2, 3 слов должен идти, например, за секунду. Сортировка по свежести сообщений, по категории (С++/психология/путешествия).
Какая это должна быть DMBS? Какая архитектура (один сервер или несколько дешёвых компов на ATOM, партиционирование, репликация, шардинг). Как лучше всего организовать таблицу с 93 млн сообщениями, при условии того, что наибольшая нагрузка на неё идёт в режиме чтения последних 250000 сообщений (последние сутки), но хотелось бы добираться до сообщений за весь год (возможно, медленнее). Это называется репликация, как я понимаю - по ночам скидываем все данные на слейв-серверы, на мастер-сервере оставляем только последние несколько суток. Какая для этого поддержка есть в MySQL, Postgres? Как будет выглядеть операция «переместить пол-таблицы с наиболее старыми записями на другой сервер» на уровне языка SQL и процедур конкретных систем DMBS?
Вопросов бесконечная куча, но основные заданы. Не занимаюсь DBA, раньше разрабатывал in-memory NoSQL-решение на большом толстом сервере, но здесь бюджет не тот, чтобы покупать профессиональное оборудование. Бюджет на эти эксперименты позволяет поиметь максимум несколько недорогих обычных компов с толстыми сигейтами.
Похожие темы
- Форум Выбор СУБД... (2004)
- Форум организация среды разработки (2015)
- Форум Выбор текстового редактора (2014)
- Форум выбор СУБД (selecting DBMS) (2000)
- Форум Быстрое индексирование 140 млн. текстовых ключей (2004)
- Форум Поиск среди забэкапенных сайтов (2021)
- Форум Поиск дубликатов среди фотокарточек (2008)
- Форум Организация сообщений об ошибках? (2010)
- Форум [СУБД]организация хранения больших массивов чисел (2011)
- Новости IBM потратит на Linux $100 млн (2005)