ApacheSpark是一个很好的用例?

vfhzx4xs  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(363)

架构-关于架构的简要描述,我正在开发一个人们查询并等待答案的应答引擎(与搜索引擎不同)。后端查找自动答案,如果没有找到答案,则直接向接口发送带有置信度分数的代码片段。生成的任何代码片段和答案都存储在mongodb集合中。每个被要求的查询都会得到一个唯一的url和snippetid,这个id保存在mongodb中,每当用户从其他搜索引擎跳转到url时,就会进行一个从mongodb集合获取数据的查询。一开始这个架构运行得很好,但是现在数据在增加,我非常需要更好的架构。
我应该在hadoop中存储数据,并且可以编写mr程序来获取数据。
我应该用spark和shark吗
我应该坚持mongodb吗
我应该选择hbase还是hive

1bqhqjot

1bqhqjot1#

您混淆了体系结构和技术选择。虽然它们是相关的,但它们是独立的概念(你可以在这里找到我以前写过的几篇文章。)
不管怎么说,对于你的问题-一般来说,json是一种昂贵的格式,每次获取它时都需要重新解析(除非你总是希望它是一个“blob”),还有其他几种格式,如avro、google protobuff、orc、parquet等,它们支持模式演化,但也使用更高效、更快访问的二进制格式。
关于持久存储的选择-这在很大程度上取决于您的预期用途和预期负载。请注意,您提到的一些选项针对完全不同的用途(例如,可以用于实时查询的hbase与具有丰富分析界面(通过sql)但面向批处理的hive)

相关问题