问题标签 [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.
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" }
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 中的错误吗?
mongodb - MongoDb 插入(Perl 驱动程序)与 mongoimport 不一致
我在 mongo 中有一个集合,我在其中插入来自 Perl(使用 MongoDb)和 mongoinsert 的数据。问题是数字的数据类型变得不一致。
例如,在 Perl 中,我这样做:
我有一个使用 mongoimport 导入的 JSON 文件,其中包含以下行:
现在,如果我对集合进行搜索,我会得到以下信息:
有没有办法强制 Perl 驱动程序将 _id 作为 32 位数字插入?或强制 mongoimport,将其写为 64 位(NumberLong)?
您对如何保持 _id 字段一致有其他建议吗?
json - 使用 mongoimport 导入超过 1 个 json 文件
我是新手mongodb
,想了解如何将json
文件从一台服务器导入到另一台服务器。我尝试了以下命令mongoimport -d test -c bik check.json
,它对我来说很好。现在我想知道当有多个json
文件时如何一次导入所有文件。我找不到任何相关的文档,这是不可能的。请帮助我这是否可能以及如何
json - 无法使用 mongoimport 插入 JSON
我想使用 JSON 批量更新到 mongo 集合。
但是使用我在 mongo shell 中的语法会产生:
当我在没有大括号的情况下尝试它时,它不会产生错误但不会更改表格:
我到处搜索,但找不到使用 JSON 的示例。请帮忙!
ruby-on-rails - MongoDB IDEA中的数据库导入导出
我打字
在终端它连接到 mongodb。我在那里有很多数据库和集合。我想导出我的
及其收藏
到新文件夹中的桌面。通过复制该文件夹并粘贴到另一台计算机上,我想导入它
及其收藏。现在当我输入
那么应该有
在我的第二台电脑上。我怎样才能做到这一点。我也使用 mongodump。谁能给我这个想法?
mongodb - mongoDB mongoimport错误..获取文件不存在错误
我是MongoDB的新手。当我尝试 mongoimport 时,出现以下错误。
我将文件放在 c:\mongo\data\db\mongo.csv ... 任何人都可以帮助我。
mongodb - 将长值导入 mongodb
如何NumberLong
使用 将 a 导入 MongoDB mongoimport
?
不幸的是,json 文件中的这些条目会导致错误:
结果:
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 一样?我完全处于静止状态。
performance - mongoimport 性能随着时间的推移而下降
我正在使用mongoimport
将一些json
文件导入到我的 MongoDB 数据库中。我有 5 个文件,每个文件大约有 2M 个文档,并且该集合有 4 个常规索引和 2 个多键索引。
当我开始导入第一个文件时,我看到每秒插入约 500 个文档,但一段时间后性能开始下降。我现在正在导入第三个文件,我看到每秒不到 50 个文档的吞吐量。似乎随着集合大小的增加,导入会降低。这是怎么回事?我该如何改进呢?