在做sdb 导入操作时,通过more 查看数据,格式是比较正常的,样例数据如下:

CB20160630968101173208||0160630|73208|2|_*|3903|BZ|B3412|04347||1||09664.8900||0000|6968|6968|BI968101|BI579101|BI913101|BI579001|BI579101|00|N9|_9|X00|_0|N9||N9|N9||0010101|0010101|||016-06-30 09:47:44|001-01-01 00:00:00||N9|N9||N9|EST|111111|111111|||1||||10110000|05_FIN_EVT_DTL_CB0_A2|B_JBPF10|0160630

但是一旦做数据导入,导入命令如下
/data/sdbadmin/bin/sdbimprt --ignorenull true -j 18 --trim both -e "|" -r "\n" --type csv \
-s jushantest02 -p 11810 \
-c foo -l bar \
--file  /data/testdata/test.txt \
--fields "COL1 string,COL2 string,COL3 string,COL4 string,COL5 string,COL6 string,COL7 string,COL8 string,COL9 string,COL10 string,COL11 string,COL12 string,COL13 string,COL14 string,COL15 string,COL16 string,COL17 string,COL18 string,COL19 string,COL20 string,COL21 string,COL22 string,COL23 string,COL24 string,COL25 string,COL26 string,COL27 string,COL28 string,COL29 string,COL30 string,COL31 string,COL32 string,COL33 string,COL34 string,COL35 string,COL36 string,COL37 string,COL38 string,COL39 string,COL40 string,COL41 string,COL42 string,COL43 string,COL44 string,COL45 string,COL46 string,COL47 string,COL48 string,COL49 string,COL50 string,COL51 string,COL52 string,COL53 string,COL54 string,COL55 string,COL56 string,COL57 string,COL58 string,COL59 string,COL60 string,COL61 string,COL62 string,COL63 string,COL64 string,COL65 string,COL66 string,COL67 string"

发现导入数据库中的数据格式有问题
db.foo.bar.find()

{"_id": {"$oid": "57bc0f8a5dbe8e1f31000000"},"COL1": "CB20160630968101173208","COL2": "?5","COL3": "?20160630","COL4": "?173208","COL5": "?02","COL6": "?@_*",
..."COL64": "?CB_JBPF10","COL65": "?20160630\r"
}

大家可以发现,每个字段前面都出现了一个"?" 符号,证明这个字段切分符肯定不止"|"符号,并且在记录分割符上,应该是"\r\n",而不是"\n"
解决方法,首先通过tail 命令截取少量的样例数据
tail -1 test.txt > test2.txt

然后通过 od 命令将不可见字符打印出来,给大家一个od 的使用例子
echo "A" | tr -d "\n" | od -An -t dC

65

A 字符对应的ascii 表就是65,所以我们可以通过这个命令来抓取不可见字符
执行
cat test2.txt  | tr -d "\n" | od -An -t dC

打印的结果如下

   67   66   50   48   49   48   49   49   50   57   57   57   56   49   48   4952   57   50   53   53   57  124   27   53  124   27   50   48   49   48   4949   50   57  124   27   52   57   50   53   53   57  124   27   48   51  12427   64   95   42  124   27   50   48   49   48   57  124   27  124   27   6766   87  124   27   67   66   51   55   49   48  124   27   32  124   27   4956   55   55   56   55   54   51  124   27   48  124   27   48   49  124   2750  124   27   57   57   55   46   53   48   48   48  124   27   68  124   2757   57   56   57   57  124   27   57   57   56   57   57  124   27   57   5756   57   57  124   27   67   66   73   57   57   56   49   48   49  124   27124   27   67   66   73   48   53   54   49   48   49  124   27   67   66   7348   53   54   49   48   49  124   27   67   66   73   48   53   54   49   4849  124   27   67   66   73   48   53   54   49   48   49  124   27   48   4848  124   27   49   49   48  124   27   64   95   57  124   27   74   88   5048  124   27   64   95   48  124   27  124   27   90   78   57  124   27   48124   27   57   57   57   57   57   57   57   57   57   57   57   57   57   5757   57  124   27   57   57  124   27  124   27   90   78   57  124   27   50124   27   48   48   48   49   48   49   48   49  124   27   48   48   48   4948   49   48   49  124   27   49  124   27   48  124   27   50   48   49   4845   49   49   45   50   57   32   49   48   58   50   52   58   49   53  12427   48   48   48   49   45   48   49   45   48   49   32   48   48   58   4848   58   48   48  124   27   48  124   27   90   78   57  124   27   90   7857  124   27   48  124   27  124   27  116  116  121   97   97  124   27   6495   87   89  124   27   84   69   83   84  124   27   49   49   49   49   4949   49  124   27   49   49   49   49   49   49   49  124   27   48  124   2748  124   27   49   49  124   27   49  124   27   48  124   27   48  124   27124   27   84   48   53   95   70   73   78   95   69   86   84   95   68   8476   95   67   66   48   95   65   50  124   27   67   66   95   74   66   8070   49   48  124   27   50   48   49   48   49   49   50   57   13

通过仔细观察,可以发现字段分隔符应该为  124 27 两个字符
所以在使用sdbimprt 导入工具时,应该调整为以下命令
/data/sdbadmin/bin/sdbimprt --ignorenull true -j 18 --trim both -e "\124\27" -r "\r\n" --type csv \
-s jushantest02 -p 11810 \
-c foo-l bar\
--file  /data/testdata/test.txt \
--fields "COL1 string,COL2 string,COL3 string,COL4 string,COL5 string,COL6 string,COL7 string,COL8 string,COL9 string,COL10 string,COL11 string,COL12 string,COL13 string,COL14 string,COL15 string,COL16 string,COL17 string,COL18 string,COL19 string,COL20 string,COL21 string,COL22 string,COL23 string,COL24 string,COL25 string,COL26 string,COL27 string,COL28 string,COL29 string,COL30 string,COL31 string,COL32 string,COL33 string,COL34 string,COL35 string,COL36 string,COL37 string,COL38 string,COL39 string,COL40 string,COL41 string,COL42 string,COL43 string,COL44 string,COL45 string,COL46 string,COL47 string,COL48 string,COL49 string,COL50 string,COL51 string,COL52 string,COL53 string,COL54 string,COL55 string,COL56 string,COL57 string,COL58 string,COL59 string,COL60 string,COL61 string,COL62 string,COL63 string,COL64 string,COL65 string,COL66 string,COL67 string"

总结
一般开发者在做数据迁移时,最头疼的事情就是做数据格式的整理,所以在导入过程中遇到数据乱码或者是导入失败,首先应该通过od 命令检查数据真实的字符,是否存在不可见字符,如果是,则需要在导入时指定不同的切分符来完成数据的加载。

转载于:https://www.cnblogs.com/chenfool/p/5829645.html

sequoiadb sdbexprt 导入工具进阶使用相关推荐

  1. elasticdump安装_elasticsearch导出、导入工具-elasticdump

    elasticsearch导出.导入工具-elasticdump elasticsearch 数据导入到本地,或本地数据导入到elasticsearch中,或集群间的数据迁移,可以用elasticse ...

  2. Oracle exp/imp导出导入工具的使用

    一. 导出工具 exp 1. 它是操作系统下一个可执行的文件 存放目录/ORACLE_HOME/bin exp导出工具将数据库中数据备份压缩成一个二进制系统文件.可以在不同OS间迁移       它有 ...

  3. mysql数据万能导入工具下载_mysql数据导入工具下载 - 数据导入工具(EMS Data Export for MySQL) v3.7.0多语特别版下载 - 第九软件网...

    EMS Data Export for MySQL多语特别版是一款交叉平台的数据库导入工具,可以快速地从MS Excel 97-2007, MS Access, DBF, XML, TXT, CSV, ...

  4. 修改lastpass主密码后需重启firefox才能加载已保存的站点密码或用导入工具

    最近索尼事件闹得沸沸扬扬,预防黑客先从升级密码开始.由于开发的需要一般是用firefox作为默认的浏览器,很早以前就装了lastpass密码管理器作为必备附加组件,在注册时按一下Alt+G就会帮你生成 ...

  5. 在线手机号码VCF批量导入工具

    在线手机号码VCF批量导入工具 在线手机号码VCF批量导入工具 本工具可以将电话号码列表生成vcf格式,快速导入手机通讯录中. 请直接从excel中复制电话和姓名列,粘贴后点击生成即可,第一列为号码, ...

  6. 思迅商业之星v6数据导出_【 思迅软件基本档案导入工具 】思迅软件基本档案导入工具(数据导入工具)新版下载 - U大师...

    软件介绍 思迅软件基本档案导入工具是一款可以帮助正在使用易捷通V8.商业之星V6等的用户进行数据导入的工具,思迅软件基本档案导入工具旨在简化其他软件切换思迅软件时基本档案导入流程,提高数据转化效率,避 ...

  7. 通用Excel导入工具V1.0 使用说明

    通用Excel导入工具V1.0 使用说明 有时候我们的数据存放在Excel中(特别是对于用户来说更喜欢使用Excel收集一些常用数据),而系统又需要这些数据来处理其他业务,那么此时我们就需要将这些数据 ...

  8. K3s 工具进阶完全指南

    ❝ 本文转自 Escape,原文:https://www.escapelife.site/posts/754ba85c.html,版权归原作者所有.欢迎投稿,投稿请添加微信好友:cloud-nativ ...

  9. dll oem证书导入工具_恶意代码分析之反射型DLL注入

    01 技术概要 这是一种允许攻击者从内存而非磁盘向指定进程注入DLL的技术,该技术比常规的DLL注入更为隐蔽,因为除了不需要磁盘上的实际DLL文件之外,它也不需要任何Windows加载程序的辅助即可注 ...

最新文章

  1. 磨刀——python及相关工具
  2. springboot报错---@RunWith(SpringRunner.class)
  3. mysql as tmp,启动mysql时显示:/tmp/mysql.sock 不存在的解决办法
  4. JAVA学习篇--Java类加载
  5. Windows版本nginx
  6. React-如何在jsx中自动补全标签(vscode)
  7. 数学 二维向量(加法、减法、模、点乘、叉乘)
  8. Windows命令--wmic
  9. word文档如何画线条流程图_Word中流程图如何画 手把手教你制作!
  10. 伯克利大学计算机作业答案,W 同学_加州大学伯克利分校_计算机_录取成功案例分享...
  11. QQ聊天记录统计可视化分析
  12. php机器人聊天对话框,基于AIML的PHP聊天机器人
  13. 用PHOTOSHOP给图片打马赛克
  14. 非对称加密-区块链核心技术之一
  15. Android天气预报项目
  16. silk lobe资源公众号_小说免费阅读公众号:恐怖玄幻资源
  17. js遍历对象(js遍历对象的所有属性)
  18. linux rd类型文件,RD 文件扩展名: 它是什么以及如何打开它?
  19. 航空摄影测绘图制作,无人机航测成图
  20. Infocom2022视频相关文章

热门文章

  1. 关键词为什么迟迟不上首页?太令人“捉急”了!
  2. 网站推广专员浅析网站推广运营如何提升企业网站转化率?
  3. 网络营销——网络营销专员浅析不同企业之间的营销推广各有差异
  4. 快速提升网站收录量的技巧有哪些?
  5. php中@作用,@字符在PHP中有什么作用?
  6. 计算机辅助园林设计ps,计算机辅助园林设计III
  7. 远程连接计算机用户名怎样修改,更改服务器远程桌面用户名
  8. stm32怎么查看什么原因引起的nmi_为什么会有口臭,口臭是什么原因引起的,口臭是怎么回事...
  9. 开发日记-20190802 关键词 闲聊
  10. python 自定义装饰器 来验证函数参数