用于帮助挖掘排行榜分数流的开源工具
这不是一个完整的解决方案,但您可能希望将OrientDB作为您堆栈的一部分。Orient 是一个完全用 Java 编写的图形文档数据库服务器。
在图形数据库中,关系被认为是一等公民,因此可以很快地遍历这些关系。Orient 也是一个文档数据库,它允许您使用听起来像您需要的那种无模式架构。然而,我推荐 Orient 的真正原因是它的可扩展性。它支持通过套接字进行流式传输,并且整个数据库可以嵌入到另一个应用程序中。最后,它可以有效地扩展和/或可以完全通过内存工作。因此,凭借一些 Java 专业知识,您实际上可以针对内存中的数据库运行预设查询。
我们正在做类似的事情。在为社会科学研究合作创建应用程序/网站时,我们发现自己拥有极其复杂的数据模型。我们最终使用 Gremlin Traversal Language(Groovy 的一个子集,它的核心当然是 Java)编写了几个查询,然后通过 OrientDB 的二进制连接服务器公开这些查询。因此,客户端打开一个 TCP 套接字,发送一个简短的二进制消息,并在 Java 中直接针对内存数据库执行查询。
OrientDB 还支持用 Javascript 编写函数查询,您可以使用 Node.js 直接与 Orient 实例交互。
对于这种规模的东西,我想将 Orient 与 Hadoop 或类似的东西结合使用。您还可以将 Orient 与 esper 结合使用。
考虑:东方简介:http ://www.sitepoint.com/a-look-at-orientdb-the-graph-document-nosql/
关于 java 和 orient 的流式处理选项的讨论:https ://github.com/orientechnologies/orientdb/issues/1227
我最近阅读了一篇非常好的文章,该文章建议使用Twitter Storm来完成与您的任务非常相似的任务。