码迷,mamicode.com
首页 > 数据库 > 详细

执行sh文件 进行MongoDB的业务逻辑导入

时间:2015-11-02 19:02:29      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:

将从HDFS中的数据转化为Json格式写入文件后,十个文件的文件名为 文件名_01 ...._02 ....03格式。 编写个简单的sh文件 通过for do循环让i+1 文件名对应上就可以的- -执行时要传入文件名称以及需要导入的数据文件的路径,之所以要传进去 也是为了方便项目后续更改目录嘛~

 

技术分享

.sh文件: 

技术分享 

然而并没有什么乱用! 发现 ./mongo -h 10.1.235.62 -port 27017 --eval "db."${name}".drop()" 不管用!  是--eval的问题。。。老版本是可以这样执行的,因为是个定时job,每次导入前必将先删除原有的集合嘛~ 折磨得不要不要的。。因为各种百度无果,很少有此类用法的文章,于是,就将代码改了- -每次将要执行该shell文件时 手动查询count() 如果大于0  就remove了该collection的数据好了~ 一样的~ 

技术分享

 

最后指定的命令就是在MongoDB的bin目录下: ./batchImport.sh DW_LABEL_DATAS_crm /home/MongoDB/mongodb/importDataFile

 

技术分享

这就完了了了。。。。。不过还是请求教--eval的用法 。。。貌似要写个js脚本。。。还请路过大神赐教。。

 

执行sh文件 进行MongoDB的业务逻辑导入

标签:

原文地址:http://www.cnblogs.com/yangsy0915/p/4930690.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!