【问题标题】:Dumping Twitter Streaming API tweets as-is to Apache Cassandra for post-processing将 Twitter Streaming API 推文原样转储到 Apache Cassandra 以进行后期处理
【发布时间】:2011-08-23 00:45:30
【问题描述】:

我正在使用 Twitter 流 API 来监控多个关键字/用户。我打算将我从 twitter 直接获得的推文 json 字符串原样转储到 cassandra 数据库,并稍后对它们进行后期处理。

这样的设计实用吗?当我有数百万条推文时,它会扩大规模吗?

我稍后会做的事情包括获得最受关注的用户、热门话题标签等。我想按原样保存流,以便以后挖掘它们以获取我现在可能不知道的任何新信息。

【问题讨论】:

    标签: database api twitter streaming cassandra


    【解决方案1】:

    重要的不是推文的数量,而是它们到达的速度。 Cassandra 每秒可以轻松处理数千次写入,这应该没问题(Twitter 目前每秒总共生成大约 1200 条推文,而您可能只会得到其中的一小部分)。

    但是,每秒的推文是高度可变的。在写入量激增之后,您可能会看到范围查询有所放缓。请参阅 Cassandra under heavy write load part ipart ii 上的 Acunu 博客文章,了解有关该问题的一些讨论和解决方法。

    除了存储原始 json 之外,我还会提取一些您几乎肯定需要的通用特征,例如用户 ID 和主题标签,并将它们分开存储。这将为您以后节省大量的处理工作。

    另一个需要考虑的因素是计划存储的数据将如何随时间增长。 Cassandra 可以很好地扩展,但您需要制定一个策略来保持集群之间的负载平衡以及如何随着数据库的增长添加节点。如果您没有提前计划如何将令牌分配给新节点,添加节点可能会是一个痛苦的经历。等到节点过载后再添加新节点是使集群崩溃的好方法。

    【讨论】:

      【解决方案2】:

      您可以在 cassandra 中轻松存储数百万条推文。

      为了处理推文并获取诸如最受关注用户之类的统计信息,标签查看来自 DataStax 的brisk,它建立在 cassandra 之上。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-03-29
        • 2013-05-29
        • 2011-08-22
        • 1970-01-01
        • 2012-06-15
        • 2015-04-10
        • 2018-11-03
        • 2015-12-10
        相关资源
        最近更新 更多