对接阿里云opensearch

阿里云开通了opensearch的服务。

第一步:创建开放搜索应用

1、在开放搜索中创建一个模板,例如名称叫test

2、自定义结构(测试时可以选择现有模版)

3、添加数据表名和类型

注意这里要创建两个表,第一个表名为main,第二个表名为body。id的字段类型为INT。其他为text。

main表中的id “连接外表主键”到body表

4、给body表的newstext(内容全文字段)使用内容转换插件“HTMLTagRemover | newstext”

 

5、点继续,这样一个简单的全文搜索OpenSearch索引结构就完成了

6、配置字段搜索属性,可直接下一步

7、确认明细,可直接下一步,点创建

8、创建应用

9、找到结构类型模板test

下一步。

10、配置数据源

11、连接数据

 

12、如果数据表里的字段没有修改过都能匹配上,点保存。

13、同样的办法连接body表,新闻正文内容存放表对应表名是news,下一步

 

14、创建,这个时候这个应用就创建成功了。然后激活应用。

15、应用激活之后,开始重建索引,选择导入+重建,然后勾选main表和body表,点击创建。

 

16、搜索结果相关性配置

17、搜索结果摘要飘红字段配置

直接上代码:

 'http://opensearch.aliyuncs.com'),
        KEY_TYPE
    );

    $search = new CloudsearchSearch($client);

    //设置要搜索的应用名称:
    $search->addIndex(APP_NAME);

    //获取请求参数
    $param = InfoSearch::loadParam();

    //设置搜索参数
    InfoSearch::buildSearchParam($param,$search);

    //获取搜索结果。
    $search_result = json_decode($search->search(),true);
    $result = $search_result["result"];

} catch (Exception $e) {
    // pass
}
//分页
$total = isset($result['total']) ? $result['total'] : 0;
$view_total = isset($result['viewtotal']) ? $result['viewtotal'] : 0;
$opts = array('perpage' => InfoSearch::PAGE_SIZE, 'current_page' => $param["page"]);
$pagination = new Pagination($view_total, $url_query, $opts);
$pagination_str = $pagination->getPagination();
?>


你可能感兴趣的:(接口对接)