【发布时间】:2017-09-06 11:51:38
【问题描述】:
我想使用 Java 中的 CsvBulkLoadTool 将 csv 数据文件放到 HBase 表中。
HBase 和 Phoenix 在 Ubuntu 虚拟机上运行。
当我从 Windows 运行 CsvBulkLoadTool.run() 时,我得到下一个异常:
java.lang.IllegalArgumentException: Pathname /C:/Users/My_User/.m2/repository/org/apache/htrace/htrace-core/3.1.0-incubating/htrace-core-3.1.0-incubating.jar from hdfs://vm:9000/C:/Users/My_User/.m2/repository/org/apache/htrace/htrace-core/3.1.0-incubating/htrace-core-3.1.0-incubating.jar is not a valid DFS filename.
顺便说一句,当我 java -jar 我的示例应用程序在 Ubuntu VM 上运行时,我得到了 nex 异常:
java.io.FileNotFoundException: File does not exist: hdfs://vm:9000/usr/local/phoenix-samples-1.0-SNAPSHOT-jar-with-dependencies.jar
/usr/local/phoenix-samples-1.0-SNAPSHOT-jar-with-dependencies.jar 是 Ubuntu vm 上的实际 jar 文件位置。
我使用了来自here 的CsvBulkLoadTool 样本。
此外,当我使用普通 JDBC 通过 Phoenix 连接和填充表时 - 一切正常。
【问题讨论】:
-
我认为 CSV 必须在 hbase 的 hdfs 内的实例上才能运行?是这样吗?
标签: java maven hadoop hbase phoenix