开发者社区> 问答> 正文

DocumentClient的客户端包括什么?



功能简介


应用文档操作类,包含推送文档,删除文档,更新文档,批量推送文档等。

SDK缓存的文档集合



类属性


  1. $docs


参数描述

参数名称类型描述
$docsarray需上传处理的doc集合



构造函数



函数定义


  1. void  OpenSearch\Client\DocumentClient::__construct($openSearchClient)


参数描述

参数名称类型描述
$openSearchClient\OpenSearch\Client\OpenSearchClient基础类,负责计算签名,和服务端进行交互和返回结果。



增加一条文档


这条文档只是增加到sdk client buffer中,没有正式提交到服务端,只有调用了commit方法才会被提交到服务端。
可以add多次,然后调用commit() 统一提交。


函数定义


  1. \OpenSearch\Generated\Common\OpenSearchResult     OpenSearch\Client\DocumentClient::add( $fields)


参数描述

参数名称类型描述
$fieldsarray一条文档的所有字段,例如array("id" => 1, "name" => "tony");



修改一条文档


这条文档只是增加到sdk client buffer中,没有正式提交到服务端;只有调用了commit方法才会被提交到服务端。你可以update多次然后调用commit() 统一提交。
标准版不支持update操作,也不支持部分字段更新,标准版的新增和更新都是通过add实现。


函数定义


  1. \OpenSearch\Generated\Common\OpenSearchResult     OpenSearch\Client\DocumentClient::update( $fields)


参数描述

参数名称类型描述
$fieldsarray一条文档的所有字段,例如array("id" => 1, "name" => "tony");



删除一条文档


这条文档只是增加到sdk client buffer中,没有正式提交到服务端,只有调用了commit方法才会被提交到服务端。
可以remove多次然后调用commit() 统一提交。


函数定义


  1. \OpenSearch\Generated\Common\OpenSearchResult     OpenSearch\Client\DocumentClient::remove( $fields)


参数描述

参数名称类型描述
$fieldsarray一条文档的主键字段,例如array("id" => 1);,删除只需指定doc主键值即可。



批量推送文档


此操作会同步发送到服务端。

函数定义


  1. \OpenSearch\Generated\Common\OpenSearchResult     OpenSearch\Client\DocumentClient::push( $docsJson,  $appName,  $tableName)


参数描述

参数名称类型描述
$docsJsonstring文档list的json,例如[{"cmd":"ADD","fields":{"id":"1","name":"tony"}},…]
$appNamestring指定的app name或者app ID
$tableNamestring指定的table name



提交client buffer中缓存文档到服务端


在发送之前会把buffer中的文档清空,所以如果服务端返回错误需要重试的情况下,需要重新生成文档并commit,避免丢数据的可能。


函数定义


  1. \OpenSearch\Generated\Common\OpenSearchResult     OpenSearch\Client\DocumentClient::commit( $appName,  $tableName)


参数描述

参数名称类型描述
$appNamestring指定的app name或者app ID
$tableNamestring指定的table name



推送一条文档到客户端buffer中


支持单独推送一条文档到客户端缓存中

函数定义


  1. \OpenSearch\Generated\Common\OpenSearchResult     OpenSearch\Client\DocumentClient::pushOneDoc( $fields,  $cmd)


参数描述

参数名称类型描述
$fieldsarray一条文档的所有字段,例如array("id" => 1, "name" => "tony");
$cmdstring文档的操作类型,有ADD, UPDATE(标准版不支持)和DELETE;



使用示例


主要文档推送代码样例,将内部关键信息替换后,即可运行测试,部分头文件内容在,使用教程,页面中有描述,例如 Config.inc.php 头文件。



调试


通过上面的操作我们已经可以使用基本的搜索功能了,但是优化搜索、提高搜索结果相关性是一个漫长的的过程,需要我们不断试错和迭代来一点点改进。在这个过程中如果遇到问题或者发现结果与预期不一致时可以通过下面的接口获得请求的详细信息,可以通过这些信息排查问题。特别是当遇您到问题,在旺旺群、钉钉群中寻求帮助的时候,根据调试信息我们可以迅速帮您定位到问题所在。
  1. echo $ret->traceInfo->tracer;

展开
收起
轩墨 2017-10-25 16:34:29 1822 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
从“连接”到“交互” 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载