В настоящее время я запускаю свой веб-сайт на одном сервере с MongoDB. На моем сервере у меня есть два компонента (1) поисковый робот, который работает ежечасно и добавляет данные в мой экземпляр MongoDB (2) веб-сайт, который читает из индекса поискового робота, а также пишет пользователю БД персонализации. Я перехожу на Amazon EC2 для автоматического масштабирования, чтобы веб-сервер мог автоматически масштабироваться, поэтому я могу увеличивать количество серверов по мере увеличения веб-трафика. Мне не нужно автоматическое масштабирование моего сканера. Это создает проблему для того, как я использую MongoDB.Мне интересно, какой вариант лучше всего мне оптимизировать на
В краткосрочной перспективе БД, безусловно, сможет уместиться в памяти на всех машинах, поскольку ее размер будет меньше 2 ГБ. БД персонализации пользователя не может быть перестроена, поэтому важнее иметь это, в то время как индекс можно легко перестроить. Текущий индекс сканирования MongoDB содержит около 100 тыс. Записей, которые привязаны к ~ 15 различным столбцам. Это сделано для скорости, поскольку я работаю над сайтом онлайн-знакомств (который доступен для поиска разными способами).
Я могу придумать несколько вариантов
Я мало знаю о SimpleDB и / или DynamoDB. Судя по статьям, кажется, что DynamoDB был бы естественным выбором, но я не уверен в хорошей поддержке Perl, могу ли я иметь все столбцы, индексы и т. Д. У кого-нибудь есть опыт или есть какой-либо совет?