将复杂的存储过程迁移到hive / Hbase或任何其他hadoop生态系统

时间:2015-03-19 00:27:26

标签: hadoop hive apache-spark hbase sqoop2

我们有ORACLE存储过程,如下所示:(伪代码)

创建STOREDPROCEDCED(参数)

BEGIN

SELECT STATMENTS;

调用游标并将其插入另一个表中;

呼吁其他存储程序;

END;

我们有很多像上面这样的存储过程。我们的数据增长,存储过程运行缓慢。我们希望将这些存储过程转换为HIVE或其他hadoop生态系统。请建议我们在这种情况下支持hadoop生态系统。

1 个答案:

答案 0 :(得分:0)

答案实际上取决于整个图片的样子:存储在数据库中的内容,它是如何到达的,存储过程正在做什么以及如何访问结果。我不认为你能够将这么大的问题变成一种在stackoverflow上负责的格式。

要回答具体问题,您似乎正在使用存储过程进行ETL。在Hadoop中有许多等价物,最着名的是:普通map-reduce,pig / hive脚本,spark。他们不会在数据库中处理数据,因此您需要先将数据导入Hadoop。

如果您使用游标和插入处理数据可能是您的程序运行缓慢的原因。您是否考虑过聘请顾问,他可以建议优化处理的方法,而无需在Hadoop上从头开始重写所有内容?