2011-11-20 80 views
2

我正在构建一个完整的“向外扩展”解决方案,以向我们的客户提供深入的实时分析。Hadoop和分析?

客户主要拥有多达200台服务器,每台服务器最多有400个会话正在进行,同时提供80000个会话。 我希望我可以提供会话分析,并使用BI工具(例如Tableau)提供图形和查询界面(基本上汇总查询)。

我希望每个会话都是4分钟长,并在4分钟内触发20个事件。每个事件可以是大约5个字段,主要是整数。我会在会话期间记录开始日期,结束日期以及基本上一些计数器(例如点击次数)。这是每秒约8000插入。

我虽然关于Hadoop,因为RDBMS显然不会很容易扩展(如果你说服我,PostgreSQL可以在5000-8000美元的机器上处理这个负载)将会使用PostgreSQL。

但是,我读过Hadoop具有太多延迟,因为它是面向批处理的,所以它可能不适合分析。你怎么看 ?

网络营销行业用于提供数据库和查询的解决方案是什么?

谢谢!

回答

3

事实上,Hadoop的核心是面向批处理的,这使得定期报告更好,而不是实时数据分析。

一种选择是使用专用于事件处理的图形和日志记录系统。在这种情况下,它看起来像Graphite这样的工具将完美满足您的需求。有一个post on the Etsy engineering blog描述了如何使用它。

如果您喜欢Hadoop,您可以使用基于Hadoop构建的内容,例如OpenTSDB,它使用HBase

+0

石墨看起来不错,但不适合分析材料(过滤器/连接...)。无论如何感谢您指出! – SCO

4

推特已开源Storm,他们称之为Hadoop of realtime processinguse casestream processingdistributed rpc符合上述要求。请注意,这不依赖于Hadoop。 Here是关于Storm的演示文稿。然后有HStreaming,它位于Hadoop,S4,Streambases之上。

Plain Hadoop适合批处理,不适用于实时分析。以上是用于实时分析的s/w的一些。其中一些位于Hadoop之上(如HStreaming),另一些则不在。有些是免费的,有些是商业的。有许多变体,基于详细的需求研究,由不同的软件支持的功能,以及最终可以完成s/w的概念证明。

0

它确实是hadoop(井图缩小),如果是批处理。 不过,hadoop也是一个分布式的fs系统。 随着实时数据进入您的群集,您可以让工作节点在它变为可用时处理它。例如,如果您想每5分钟更新一次仪表板,您可以设置一个从hdfs中读取的恶魔,从个别跟踪服务器读取所有新添加的日志文件,并更新Web应用程序读取其存储的地址数据。

在一天结束时,使用map reduce将完成您的demmon完成的操作,但是这次使用当天的所有文件以及群集中的所有节点。