我们计划将大量的度量数据放入某种nosql数据库中,可能是cassandra,也许是其他服务器上的其他内容.
我们希望在地图缩减样式中对数据进行计算(在机器所在的位置聚合数据,然后合并结果).
我使用Cassandra和Hadoop以及mapreduce进行了POC.启动mapreduce作业并获得结果的开销对我们的需求来说太高了.
在我们自己开始之前,还有其他任何强调性能的分布式Java框架吗?
解决方法:
在我们自己开始之前,还有其他任何强调性能的分布式Java框架吗? – 每个框架都会尝试强调性能作为维度之一.
I made a POC using Cassandra and Hadoop and mapreduce. The overhead starting the mapreduce jobs and getting the results was too high for our needs.
Cassandra是MR的输入源类型之一.使用MR将涉及地图任务开始/完成,改组和减少任务开始/完成的时间. MR设计用于批处理,而不是用于瞬时结果.可以进行一定程度的调整,但您应该寻找实时或流处理框架.
看看HStreaming(注意我还没用过它)
HStreaming enables to use the same MapReduce and Apache Pig algorithms and functions for real-time or batch processing. Existing code such as user-defined functions (UDF) can be migrated to stream processing with no or minimal changes. It brings your business a rapid development cycle and gives you the agility to adapt fast to changing business requirements.