perl - MongoFiles、GridFS 和 Perl

标签 perl mongodb gridfs

我一直在使用 perl、MongoDB 和 GridFS 进行一些宠物开发,并且想知道 - perl 是否可以与 Mongofiles 交互(除了使用系统命令导航并以这种方式调用它,嘿) - 比如。 .well...cpan 库?还是 Mongo 的当前 CPAN 模块的扩展?

举个我想做的例子:

我希望能够将文件存储到我的 mongoDB 中并将文件检索到我的 mongoDB - 例如,从命令行,一旦我导航到其中包含 mongofiles 的目录,我就可以执行

mongofiles put "C:\Users\Me\cool.txt"

它会将文件存储到数据库中!假设我从驱动器中删除了 cool.txt。现在当我执行时:

mongofiles get "C:\Users\Me\cool.txt"

它从数据库中检索文件并将其放入我的目录中!我只想能够从 Perl 访问这个 mongofiles 功能。即使这意味着我的脚本在目录中有一个 mongofiles 的副本。

最佳答案

您想使用 GridFS。

这是用于此的 perl API: http://api.mongodb.org/perl/current/MongoDB/GridFS.html

这里是一个插入的例子:

use MongoDB::GridFS;

my $grid = $database->get_gridfs;
my $fh = IO::File->new("myfile", "r");
$grid->insert($fh, {"filename" => "mydbfile"});

并检索:

use MongoDB::GridFS::File;

my $outfile = IO::File->new("outfile", "w");
my $file = $grid->find_one({"filename" => "mydbfile"});;
$file->print($outfile);

关于perl - MongoFiles、GridFS 和 Perl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11145284/

相关文章:

perl - 如何让 perl 脚本的每个实例都有自己唯一的 ID?

Perl print %hash - 需要一些帮助来理解这个

mongodb - loopback mongodb 身份验证失败

node.js - Mongoose js批量查找

perl - 为什么 "bob"== "godzilla"在 Perl 中?

perl - 为什么在没有粗逗号和严格的 `use` 行上允许使用前导连字符选项?

javascript - Meteor:异步函数回调中出现异常:onAfterAction

python - Pymongo GridFS 输入类型/属性错误

mongodb - GridFS比普通FS快吗?

node.js - MongoDB的filemd5是否能够设置readPreference