3

我是 Couchbase 和 NoSql 的新手,所以我想知道使用 Couchbase 作为 NLog 日志记录的目标是否可行。我写了一个快速而肮脏的 Couchbase/NLog 目标,它确实将信息记录在指定的存储桶中。所以写信给 CB 就完成了,而且工作正常。

我看到的问题是从存储桶中获取/读取数据。我不知道键名……它们只是随机的向导。我只想转储数据,而 CB 1.8 不支持从 .NET 客户端获取所有密钥。

因此,如果我想制作一个查看器应用程序来查看存储桶中的数据,我该从哪里开始呢?

4

3 回答 3

2

您必须将每个密钥及其元数据存储在 ram 中。我怀疑你想对日志这样做。

您可能想要存储在 ElasticSearch 中。有一个叫做 Nest 的 .net 客户端,或者你可以只做 json 帖子。Elasticsearch 在文档和内存之间没有 1:1 的关系。

于 2013-11-05T18:00:25.673 回答
1

使用 map reduce 视图,您可以使用下面的 doc.key 获取所有键的列表,或者如果您想要键 (id) 和完整文档,则只需发出 doc。这仅适用于 couchbase 2.0 及更高版本。

function (doc, meta) {
 if(meta.type == 'json') {
   emit(doc.key, null);    
 }
}

您可以使用 cbbackup 工具转储所有数据访问http://www.couchbase.com/docs//couchbase-manual-2.0/couchbase-backup-restore-backup-cbbackup.html

Couchbase 还支持在管理控制台中使用 XDCR 将数据复制到弹性搜索节点/集群。访问http://docs.couchbase.com/couchbase-elastic-search/

于 2013-10-21T12:43:20.147 回答
0

使用 Couchbase Server 3.x,您现在可以从 RAM 中弹出元数据和文档数据。此功能允许 Couchbase Server 3 存储非常大的数据集,并允许您在 RAM 中以增量方式索引更新,即使在大型或高速数据集上也是如此。

此外,正如其他人所指出的,Couchbase 服务器具有适用于 Lucidworks Solr、ElasticSearch、Splunk 等的插件。

试试 Couchbase 3.0,亲自看看吧!

http://www.couchbase.com/nosql-databases/downloads

于 2015-01-05T19:57:27.463 回答