这是我的用例:
- 我在Hadoop中存储了一些数据(HDFS文件,然后是Hive视图(,这些数据每天被摄入5次
- 我需要处理这些数据(服务A(
- 然后,我需要尽快将其放回Hadoop中(与社区共享结果(,并将其写入Oracle数据库(serviceB(
我该怎么做?
我曾想过使用Spark从Hadoop中获取数据,进行处理并写回。但如何更新我的Oracle数据库?限制条件:
- 无Scoop
- 服务A和服务B之间没有API调用(大数据(
- 没有从serviceA直接写入serviceB数据库
您可以使用Spark处理数据,并将结果存储回HDFS/Hive表中,一旦结果准备好,您就可以使用Sqoop 将数据导出到Oracle
您可以按照此简单指南将数据从配置单元导出到Oracle;或遵循Sqoop指南
如果使用spark。您可以使用spark JDBC进行编写。参见
来自文件:
// Saving data to a JDBC source
jdbcDF.write()
.format("jdbc")
.option("url", "jdbc:postgresql:dbserver")
.option("dbtable", "schema.tablename")
.option("user", "username")
.option("password", "password")
.save();