MongoDB概念直接访问文件或访问导入的数据(访问RAW数据)

时间:2010-12-18 07:19:39

标签: mongodb data-mining raw-data database

我想尝试使用MongoDB访问数百万行RAW数据(多个不同的文件)

如果我使用MySQL,我必须将这些RAW数据导入/转换为MySQL表,这非常耗时。

我的问题是,如果我使用MongoDB,是否必须将这些RAW数据导入/转换为MongoDB数据库集合? 如果我必须这样做,使用MongoDB有什么好处?节省时间的?

是否可以使用MongoDB直接访问RAW数据?

我有一个朋友使用MongoDB来访问apache日志文件(access_log)。但我不知道他是否将access_log文件中的数据转换为MongoDB或直接访问accesss_log文件。

我仍然对MongoDB的概念感到困惑

谢谢

1 个答案:

答案 0 :(得分:2)

MongoDB是数据库,所以它真的是存储数据,而不是“原始文件”......

要“直接”访问您的文件,我想您需要文件导入MongoDB(但这很简单。)

<强> GridFS的

MongoDB有一个名为GridFS的文件系统“用于在MongoDB中存储大文件的规范。”

默认情况下,MongoDB对文档有4mb的限制(如何在MongoDB中存储数据),因此GridFS旨在存储更大的文件。

例如,使用command line tools只需要一行来导入文件:

$ ./mongofiles put myfile.txt

或者您可以使用支持GridFS的many available drivers之一。

或者不要存储文件......

当然,如果您不想导入文件,只需将文件位置(文件名和路径)存储在任何数据库中。

然而,听起来好像你的朋友没有在MongoDB中存储apache日志文件,而是在MongoDB中存储日志(数据)...

更多信息

您可以在此处详细了解如何使用GridFS:http://learnmongo.com/posts/getting-started-with-mongodb-gridfs/