【问题标题】:couchbase PHP bulk insertcouchbase PHP 批量插入
【发布时间】:2014-10-28 17:39:07
【问题描述】:

我在使用 PHP SDK 批量插入文档时遇到问题。我必须像

一样单独插入每个
$temp = $db->upsert("key here", "value here");

我可以达到大约500/秒。我曾尝试使用 cbcdocloader,但生成 json 的速度比仅使用 SDK 直接插入它们要快。我正在尝试用一个插入插入多个文档,因此我不必生成所有流量。有没有办法用下面这样的数组结构来做到这一点?

 $data = array("key 1"=> "value 1", "key 2" => "value 2")

【问题讨论】:

    标签: php couchbase


    【解决方案1】:

    我只是不相信它,因为我前一段时间在某个地方偶然发现它,当时我正在寻找其他东西......但现在我尝试了它,它似乎工作并且我得到了很大的性能提升(当我做很多插入)。看来,你必须这样做(使用 SDK 2.0 和 upsert()):

    $bucket->upsert(array(
        'key1' => array('value' => 'value1'),
        'key2' => array('value' => array('jsonkey' => 'jsonvalue')));
    

    你必须在第二个数组中使用'value'

    看来,您也可以使用以下方式指定选项:

    $bucket->upsert(array(...), null, array('expiry' => 3600));
    

    也许有人可以验证这一点...

    【讨论】:

      【解决方案2】:

      没有这样的批量上传api调用。

      有一个批量插入http://docs.couchbase.com/couchbase-devguide-2.1/#performing-a-bulk-set的semo。

      甚至,这会循环执行您已经在做的事情。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-05-23
        • 1970-01-01
        • 2012-10-09
        • 2016-07-11
        • 1970-01-01
        相关资源
        最近更新 更多