是否需要缓存从Twitter Streaming API和RESTful API获取的数据?

问题描述 投票:0回答:1

1。

我正在使用Twitter Streaming API来获取一些带有特定主题标签的推文。 我想从每个推文中提取一些元数据,并使用它们来更新一些本地数据结构。

有时很短时间内会有很多推文出现在我的电脑上。 我不确定处理速度是否快于推文流的速度。 我想保证可以成功接收所有推文,并且可以继续进行。

所以我想问我是否必须添加一些结构来缓存收到的推文? 如果是,您能否提供结构或工具方面的建议? 缓冲区,线程池或某些缓存软件(例如memecached或redis)?

2。

我还想使用Twitter搜索API(这是一种RESTful api)来获取一些推文。 我将在一个查询中获得100条推文。 在这种情况下是否需要缓存推文?

在收集到足够数量(约30,000)的推文之前,程序不会处理这些推文。 我是否应该使用map-reduce模式来处理如此数量的推文?

非常感谢!

caching twitter mapreduce redis
1个回答
1
投票

有时很短时间内会有很多推文出现在我的电脑上。 我不确定处理速度是否快于推文流的速度 。 我想保证可以成功接收所有推文,并且可以继续进行。

这正是消息代理的用途( 请参阅此问题 ),只需将这些tweet添加到队列中并使用它们即可。 这样,如果队列大小增加太多,您将能够垂直或水平扩展消费过程。

在收集到足够数量(约30,000)的推文之前,程序不会处理这些推文。 我是否应该使用map-reduce模式来处理如此数量的推文?

相对于联机处理,这是批处理,使用队列,您将能够同时执行这两个操作。 您的使用者进程仅需要每X秒(使用消息代理API)询问队列大小,并且当队列大于特定的三位数(此处为30K)时,使用者将开始使用它。

© www.soinside.com 2019 - 2024. All rights reserved.