问题标签 [mongoimport]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
5805 浏览

mongodb - 带有字符串_id和upsert的Mongoimport csv文件

我正在尝试使用 mongoimport 在_id 中使用字符串值更新数据。由于 id 看起来像整数(即使它们在引号中),mongoimport 将它们视为整数并创建新记录而不是更新现有记录。

我正在运行的命令:

mongoimport --host localhost --db database --collection my_collection --type csv --file mydata.csv --headerline --upsert

mydata.csv 中的示例数据:

{ "_id" : "0364", someField: "value" }

结果将是 mongo 插入这样的记录:{ "_id" : 364, someField: "value" }而不是使用 _id 更新记录"0364"

有谁知道如何使它_id视为字符串?

不起作用的事情:

  • 用双双引号""0364""、双引号和单引号"'0364'"或'"0364"'包围数据
  • 将空字符串附加到值:{ "_id" : "0364" + "", someField: "value" }
0 投票
1 回答
702 浏览

mongodb - 使用 mongoimport 与 mongo shell 加载 1970 年之前的日期值

我有一些我们将其转换为 json 的数据,因此可以将其导入 mongodb。

对于某些文档,我们需要有一个 1970 年之前的日期字段。所以我们基本上通过以下方式测试文档:

并插入了两个文件。

但是,当我们尝试使用 mongoimport 加载相同的文档时,我们会得到:

到现在为止还挺好 ...

我们已经为同一日期尝试了几种语法,并且所有这些形式都获得了相同的效果:

  • {“日期”:新日期(-2174520376)}
  • {“日期”:新日期(1901,2,3,22,33,44,000)}
  • {"date": new Date("1901 年 2 月 3 日 22:33:44")

测试系统运行 CentOS 64 位,带有来自 10gen RPM 存储库的 mongo-10gen-2.0.6-mongodb_1.x86_64 和 mongo-10gen-server-2.0.6-mongodb_1.x86_64。

我们如何解决这个问题?或者这是应该报告的 mongoimport 中的错误吗?

0 投票
1 回答
990 浏览

mongodb - MongoDb 插入(Perl 驱动程序)与 mongoimport 不一致

我在 mongo 中有一个集合,我在其中插入来自 Perl(使用 MongoDb)和 mongoinsert 的数据。问题是数字的数据类型变得不一致。

例如,在 Perl 中,我这样做:

我有一个使用 mongoimport 导入的 JSON 文件,其中包含以下行:

现在,如果我对集合进行搜索,我会得到以下信息:

有没有办法强制 Perl 驱动程序将 _id 作为 32 位数字插入?或强制 mongoimport,将其写为 64 位(NumberLong)?

您对如何保持 _id 字段一致有其他建议吗?

0 投票
13 回答
33499 浏览

json - 使用 mongoimport 导入超过 1 个 json 文件

我是新手mongodb,想了解如何将json文件从一台服务器导入到另一台服务器。我尝试了以下命令mongoimport -d test -c bik check.json,它对我来说很好。现在我想知道当有多个json文件时如何一次导入所有文件。我找不到任何相关的文档,这是不可能的。请帮助我这是否可能以及如何

0 投票
3 回答
1461 浏览

json - 无法使用 mongoimport 插入 JSON

我想使用 JSON 批量更新到 mongo 集合。

但是使用我在 mongo shell 中的语法会产生:

当我在没有大括号的情况下尝试它时,它不会产生错误但不会更改表格:

我到处搜索,但找不到使用 JSON 的示例。请帮忙!

0 投票
1 回答
2591 浏览

ruby-on-rails - MongoDB IDEA中的数据库导入导出

我打字

在终端它连接到 mongodb。我在那里有很多数据库和集合。我想导出我的

及其收藏

到新文件夹中的桌面。通过复制该文件夹并粘贴到另一台计算机上,我想导入它

及其收藏。现在当我输入

那么应该有

在我的第二台电脑上。我怎样才能做到这一点。我也使用 mongodump。谁能给我这个想法?

0 投票
2 回答
5415 浏览

mongodb - mongoDB mongoimport错误..获取文件不存在错误

我是MongoDB的新手。当我尝试 mongoimport 时,出现以下错误。

我将文件放在 c:\mongo\data\db\mongo.csv ... 任何人都可以帮助我。

0 投票
3 回答
3710 浏览

mongodb - 将长值导入 mongodb

如何NumberLong使用 将 a 导入 MongoDB mongoimport

不幸的是,json 文件中的这些条目会导致错误:

结果:

0 投票
2 回答
7662 浏览

python - 使用 Python 将 CSV 转换为 mongoimport 友好的 JSON

我有一个 300 mb 的 CSV,其中包含来自 Geonames.org 的 300 万行城市信息。我正在尝试将此 CSV 转换为 JSON 以使用 mongoimport 导入 MongoDB。我想要 JSON 的原因是它允许我将“loc”字段指定为数组而不是与地理空间索引一起使用的字符串。CSV 以 UTF-8 编码。

我的 CSV 片段如下所示:

与 mongoimport 一起使用的所需 JSON 输出(字符集除外)如下:

我已经尝试了所有可用的在线 CSV-JSON 转换器,但由于文件大小,它们无法正常工作。我得到的最接近的是Mr Data Converter(如上图所示),它会在删除文档之间的开始和结束括号以及逗号后导入到 MongoDb。不幸的是,该工具不适用于 300 mb 的文件。

上面的 JSON 设置为 UTF-8 编码,但仍有字符集问题,很可能是由于转换错误?

我花了最后三天学习 Python,尝试使用 Python CSVKIT,尝试了 stackoverflow 上的所有 CSV-JSON 脚本,将 CSV 导入 MongoDB 并将“loc”字符串更改为数组(不幸的是,这保留了引号),甚至尝试手动一次复制和粘贴 30,000 条记录。大量的逆向工程、反复试验等等。

有没有人知道如何在保持编码正确的同时实现上面的 JSON,就像上面的 CSV 一样?我完全处于静止状态。

0 投票
1 回答
1269 浏览

performance - mongoimport 性能随着时间的推移而下降

我正在使用mongoimport将一些json文件导入到我的 MongoDB 数据库中。我有 5 个文件,每个文件大约有 2M 个文档,并且该集合有 4 个常规索引和 2 个多键索引。

当我开始导入第一个文件时,我看到每秒插入约 500 个文档,但一段时间后性能开始下降。我现在正在导入第三个文件,我看到每秒不到 50 个文档的吞吐量。似乎随着集合大小的增加,导入会降低。这是怎么回事?我该如何改进呢?