couchbase - couchbase中的键值存储是什么

标签 couchbase

我是 coucbase 的新手,我对 couchbase 中的键值存储有一些疑问。通常我们将数据存储为文档。我需要澄清以下查询,

  • 文档类型和键值类型有什么区别?
  • 如何实现键值存储?你能用一个小例子来解释一下吗。
  • 存储为键值对有什么好处?

最佳答案

  • 文档类型和键值类型有什么区别?

在 Couchbase 中,您可以存储任何键/值对。在这一层,键和值只是字节数组。但是,如果您存储的值恰好是有效的 JSON,则可以使用其他功能(例如 View )。您可以在同一个存储桶中混合搭配。有时在同一存储桶中的常规 JSON 文档旁边使用整数计数器或逗号分隔的字符串列表很有用。但请注意,Couchbase Elasticsearch 适配器仅适用于 JSON 文档。如果您将纯键/值项存储在存储桶中,它们将被 Elasticsearch 适配器忽略。

  • 如何实现键值存储?你能用一个小例子解释一下吗。

        // Connect to localhost or to the appropriate     
        URIuris.add(URI.create("http://localhost:8091/pools"));
        CouchbaseClient client = null;
        client = new CouchbaseClient(uris, "streams", "");
        client.add("1234", "xxx");
        client.replace("1234", "1234");
        Object data = client.get("1234");
        System.out.println(data.toString());
        client.delete("1234");
    
  • 存储为键值对有什么好处?

通常,由于几个原因, yield 是最大性能。

  1. 您不需要对值进行 JSON 编码/解码
  2. Incr() 之类的操作仅适用于整数值
  3. 像 Append() 这样的操作只适用于字符串值
  4. 使用这些操作是特殊情况操作,可以让您避免 Get/Set/Cas 重试操作

关于couchbase - couchbase中的键值存储是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26527466/

相关文章:

android - 在 Android 应用程序和服务器 Couchbase Lite 之间同步数据

node.js - 包裹沙发底座访问功能

database - couchbase 中的双冒号是什么意思?

couchbase - N1QL嵌套json,查询数组内对象内的字段

javascript - 通过传递参数查询 Couchbase View

mysql - 我正在使用 Reactjs、nodejs 开发一个应用程序。我如何动态连接两个不同的数据库(mysql和couchbase)

couchbase - 将 N1QL 与文档键一起使用

java - Couchbase : List available Buckets, 范围和集合可在具有 Java SDK 3 的集群中使用

google-app-engine - 限制对 SyncGateway 的 Admin REST API 的访问

go - Couchbase驱动程序排序仅排序降序而不是升序