2

我有 78,000 个单独的 JSON 文件,这些文件是使用 Python 脚本创建的,该脚本会抓取社区论坛并从每个帖子中提取信息。它们由简单的键值对组成,如下所示:

{
    "name": "Chris Wilson",
    "item": "Darth Vader speaker phone",
    "price": "$100",
    "notes": "Great condition!"
}

有些键对所有文件都是通用的——例如 ——而许多其他键只出现在一些name文件中。price(我正在爬取的站点允许用户定义字段。)我希望能够按我想要的任何字段进行搜索、排序和分组。

通常,我会将每个文件加载到 SQLite 数据库中并从那里查询。考虑到众多领域,这将是非常乏味的。

根据我对 NoSQL 框架的了解,这似乎是一个非常适合基于文档的系统而不是传统关系数据库的项目。我尝试学习 CloudDB,但我能找到的大多数文档都假设您从空数据库开始,而不是从预制文档本身开始。

是否有一个好的、相当简单(或至少有据可查)的解决方案来索引和查询大量字典对象?我更喜欢 Python,但也乐于尝试使用 Node 或其他任何东西。

谢谢!

PS 如果您对 Darth Vader 手机感兴趣,请告诉我。

4

2 回答 2

2

这听起来像是 MongoDB 的完美用例。设置 MongoDB 并将您的 JSON 文件直接导入到集合中mongoimport --file <filename>

他们也有很好的 python 支持。

一些文档链接:

http://docs.mongodb.org/manual/reference/mongoimport/#cmdoption-mongoimport--file

http://docs.mongodb.org/ecosystem/drivers/python/

于 2013-04-18T15:59:56.367 回答
1

您可能想查看Julian Hyde 的博客,他最近使用 Apache Drill 发布了一些关于 SQL over JSON 的文章。

于 2013-04-18T15:51:14.373 回答