exchange如何导入hive 中文数据?

为了更快地定位、解决问题,麻烦参考下面模版提问 ^ ^

提问参考模版:

  • nebula 版本: 1.x nightly
  • 部署方式(分布式 / 单机 / Docker / DBaaS):docker
  • 硬件信息
    • 磁盘( 必须为 SSD ,不支持 HDD)
    • CPU、内存信息:Mac电脑
  • 出问题的 Space 的创建方式:执行 describe space xxx;
  • 问题的具体描述

hive里面数据:
image

nebula导入后 里面的数据(中文字符串 显示问题 还是转换问题?):
fetch prop on tagA 1,2,3,4;

exchange工具版本 1.1.0
exchange工具导入的时候的截图:

exchange内没有对中文做特殊转换,在spark-shell中用scala去读取hive数据 看中文能否正常显示?

显示正常
image

好的,应该是spark做Encoders.kryo序列化时导致中文未正确解码

我在控制台 人工插入一条带中文的语句 查询没有问题

已破解,exchange中用到了StringEscapeUtils进行转义符号的处理,同时把中文转换成了Unicode。已提pr修复,待合入可以拉取最新exchange使用。

目前采用了匹配方式来处理转义,若有其他特殊需要转义的符号欢迎补充~~

5 个赞

看pr已经merge了 https://github.com/vesoft-inc/nebula-java/pull/230
我今天试试

是的 欢迎反馈

好的

目前看中文导入没问题

1 个赞