Проблема A: как сохранить запрос для элементов, добавленных людьми, за которыми вы хорошо работаете, с растущими наборами данных?
начиная с набора данных (кто мои последователи / за кем я следую); Можно сохранить эти значения в виде кортежей и сегментировать их по нескольким базам данных SQL (хотя я сомневаюсь, что настоящая сегментация действительно необходима даже для баз данных размером с твиттер). Это дало бы список людей, за которыми следят. Во-вторых, можно легко запросить таблицу для последователей -> предметов, отсортированных по подписчикам; а также сегментируется при необходимости с учетом огромных наборов данных.
Проблема Б: мы видим географически разбросанный трафик. большая база пользователей в Нидерландах и Бразилии. любое решение, вероятно, должно было бы учитывать базы данных в нескольких центрах обработки данных.
можно указать основную базу данных (кластер) и подчиненную базу данных (кластер), а также реплицировать данные с главного на подчиненное. Однако это означает, что данные всегда сохраняются в базе данных master. Запросы данных могут выполняться локально.
Другой вариант - запустить базу данных (кластеры) в настройке мастер-мастер; но это, как правило, больше проблем, чем стоит.