Apache Cassandra Data Schema для потокового API Twitter - PullRequest
1 голос
/ 21 августа 2011

Мне известно о Twissandra , который является примером клона Twitter, использующего Cassandra, но мне было интересно узнать, не разделяет ли кто-нибудь схему Cassandra не для клонирования Twitter, а для хранения твитов, поступающих через Twitter Streaming API.

1 Ответ

6 голосов
/ 21 августа 2011

Это очень сильно зависит от того, какие запросы вы хотите делать с данными после того, как вы их загрузили - я вижу из вашего предыдущего вопроса «Сброс твитов Twitter Streaming API ...», вы, вероятно, просто хотите выполнить большую пакетную обработкуit.

Если это так, вам просто нужно позаботиться о балансировке нагрузки, убедившись, что каждый узел в кластере обрабатывает 1 / n нагрузки записи и содержит 1 / n данных - используяслучайное разбиение и вставка одной строки в твиты с идентификатором статуса в качестве ключа строки приведет к этому.

Однако, если вы хотите выполнять запросы типа «дай мне все твиты для данного пользователя», вам потребуется немногоболее сложная схема, так как схема, предложенная выше, потребует от вас сканирования всех данных.Вы можете вставить несколько твитов в строку, ключ строки - идентификатор пользователя, ключ столбца - идентификатор твита, а значение - твит.Затем вы можете использовать get_slice для ответа на этот запрос.

Хорошая (несколько связанная) запись в блоге: http://blog.insidesystems.net/basic-time-series-with-cassandra

...