Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在使用 Cloudera Sqoop 将数据从 Oracle 数据库获取到 HDFS。除了像 ® 和 © 这样的字符在 HDFS 中被转换为 ®Â© 之外,一切都很好。(但是在 Oracle 中,数据的存储没有任何问题)。有什么方法可以将这些字符原样存储在 HDFS 中?
Sqoop 版本:1.3
谢谢, Karthikeya
您在 Oracle 数据库中使用哪种格式的字符?由于 Hadoop 使用 UTF-8 格式,如果它们不同,则应转换 Oracle 数据库中的数据。
我强烈建议检查 HDFS 上的实际字节,而不是查看表示。我见过太多的情况,其中数据存储得很好(实际上由 Sqoop 自动转换为 UTF8),而只是表示/终端仿真器/用于读取数据的其他任何东西都弄乱了编码。从 HDFS 下载文件并简单hexdump -C地验证编码是否确实被破坏。
hexdump -C