我目前有五个表,它们经常接收复制的数据。pl/sql用于基于复杂的业务逻辑转换、清理和聚合这些数据。然后将结果放在三个报告表中。
我对使用mongodb而不是关系数据库感兴趣。为此,必须将所有pl/sql业务逻辑翻译成另一种语言,如java。
然而,有人向我建议hadoop将是比mongodb更好的选择。我现在正在学习hadoop和mapreduce,但我感觉hadoop是用来分析数据(从数据中导出统计值,即客户操作之间的关联)而不是基于业务逻辑转换数据的。
为了用hadoop替换原样系统,我假设所有的pl/sql业务逻辑都必须转换成mapreduce函数。这个假设不正确吗?
不管我个人的情况如何,有没有hadoop(和mapreduce)不能处理的业务逻辑,pl/sql或java可以处理的?
2条答案
按热度按时间lx0bsm1f1#
首先,mongodb是一种nosql数据库,hadoop是一种并行处理框架。如果您真的有太大/太小字节的数据,那么使用并行处理框架是合理的。并咨询您的数据,是否可以使用nosql数据库+并行处理框架。
您可以将pl/sql业务逻辑转换为mapreduce函数
hadoop可以处理任何业务逻辑批量丢失,如果索引、集中处理(对于非事务系统)
我也会建议你看看Hive,它可能会帮助你。
eufgjt7s2#
我可以确认你可以使用mongodb+hadoop。您所要做的就是,将所有包中的整个转换逻辑放在一个侧面,然后标识输入、输出和流(依赖项),然后转换为map reduce。主要任务是从转换逻辑中标识键、值和规则。我希望你也能用Pig。使用sqoop进行提取。