有没有办法使用JDBC作为Hadoop的MapReduce的输入资源?



我在PostgreSQL数据库中有数据,我想获取、处理并保存到HBase数据库中。是否可以在Map操作中以某种方式分发JDBC操作?

是的,您可以通过DBInputFormat:实现

CCD_ 2使用CCD_ 3连接到数据源。由于JDBC被广泛实现,DBInputFormat可以与MySQLPostgreSQL和其他几个数据库系统一起工作。个别数据库供应商提供JDBC驱动程序,允许第三方应用程序(如Hadoop)连接到他们的数据库。

DBInputFormat是一个InputFormat类,它允许您从数据库中读取数据。InputFormat是Hadoop对数据源的形式化;它可以指以特定方式格式化的文件、从数据库读取的数据等。DBInputFormat提供了从数据库扫描整个表的简单方法,以及从针对数据库执行的任意SQL查询中读取的方法。

链接

我认为您正在寻找Sqoop,它旨在从SQL服务器导入HDFS堆栈技术。它将从JDBC连接获得的数据放入HDFS中,从而在HadoopNameNodes中进行拆分。我相信这就是你想要的。

SQl到hadOOP=SQOOP,明白了吗?

Sqoop可以导入HBase。请参阅此链接。

最新更新