【问题标题】:how to import CSV files into mongo DB from Linux/HDFS如何将 CSV 文件从 Linux/HDFS 导入 mongo DB
【发布时间】:2017-01-31 01:11:07
【问题描述】:

我在 CestOS6.7 上使用 Mongo 版本 2.6.12。它是非集群的,即仅安装在一台服务器上。

我的项目需要将最终输出存储在 MongoDB 中。这些文件是存储在 Linux 和 HDFS 上的 CSV。有人可以指导我如何将 CSV 文件从 Linux/HDFS 导入 mongo DB。

Mongoimport 不起作用,因为它默认将输入作为 JSON 文件。我在 mongo-shell 中尝试过,它失败了

mongoimport news-output-20170125.csv --type csv

2017-01-30T19:18:25.275-0600 SyntaxError:意外的标识符

【问题讨论】:

  • 如果文件在 Linux 和 HDFS 上,为什么 HDFS 很重要?无论如何,Unexpected identifier 似乎是不言自明的。阅读文档...The csv parser accepts that data that complies with RFC 4180
  • 谢谢。我的文件都在 Linux 和 Hdfs 上。我需要一种将文件从其中任何一个导入到 mongodb 的方法。上面的文件在 linux 上,当我执行 mongoimport 时会出错。
  • 此外,该文件完全是 csv 格式,具有以下测试输入:Sally Whittaker,2018,McCarren House,312,3.75 Belinda Jameson,2017,Cushing House,148,3.52 Jeff Smith,2018,Prescott House,17-D,3.20 Sandy Allen,2019,Oliver House,108,3.48

标签: linux mongodb csv hadoop


【解决方案1】:

来自 Linux 的 Mongoimport 现在正在处理 CSV 文件。我正在从 mongo-shell 运行 mongoimport。因此出现了错误。

[mongoritter@**** ~]$ cat locations.csv
Name,Address,City,State,ZIP
Jane Doe,123 Main St,Whereverville,CA,90210
John Doe,555 Broadway Ave,New York,NY,10010
[mongoritter@**** ~]$ pwd
/home/mongoritter
[mongoritter@**** ~]$ mongoimport -d test -c test1 --type csv --file locations.csv –headerline
connected to: 127.0.0.1
2017-01-31T12:12:22.034-0600 imported 2 objects 

更多帮助,可以参考How to use mongoimport to import csv

现在,我将检查从 HDFS 导入的方式。我看过一个 mongo 文档,将检查这是否有效 https://www.mongodb.com/blog/post/using-mongodb-hadoop-spark-part-1-introduction-setup

谢谢, 希尔帕

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-07
    • 2015-01-30
    • 1970-01-01
    • 2015-02-06
    相关资源
    最近更新 更多