`

opensearch的使用

 
阅读更多

阿里云开放搜索OpenSearch是一款阿里巴巴自主研发的大规模分布式搜索引擎平台,该平台承载了淘宝、天猫、1688、神马搜索、口碑、菜鸟等搜索业务,通过OpenSearch云服务的方式,将阿里巴巴成熟的搜索技术共享给广大开发者

 

opensearch一般用于页面搜索,QPS数量不能太高(跟收费有关),可用于带语义的查询,数据存与阿里云,性能尚可

 

一,开通阿里云会员,熟悉api接口文档,下载相关jar包

 

二,工程配置:

      1,applicationContext.xml文件内配置:

      

<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
  <property name="locations">
   <list>
    <value>file:${catalina.home}/etc/db/jdbc.properties</value>
    <value>file:${catalina.home}/etc/aliyun/opensearch.properties</value>
   </list>
  </property>
 </bean>

    2,tomcat里面添加相关配置:

 

    

#存OpenSearch相关配置
opensearch.accessKeyId=这里是accessKeyId的值
opensearch.accessKeySecret=这里是accessKeySecret的值
opensearch.endpoint=http://opensearch.aliyuncs.com

   3,项目工程里面配置bean:

 

    

<bean id="aliyunOpenSearch" class="***.aliyun.client.opensearch.OpenSearchImpl" scope="prototype">
  <property name="accessKeyId" value="${opensearch.accessKeyId}" />
  <property name="accessKeySecret" value="${opensearch.accessKeySecret}" />
  <property name="endpoint" value="${opensearch.endpoint}" />
 </bean>

 

 

三,具体使用:

    1,查询

 //开启opensearch服务
    ISearch search = SpringContextHolder.getBean("aliyunOpenSearch");

   // 设置实例名称
   search.addIndex("aaa");

   // 设置数据格式 
   search.setFormat("json");

   //请求参数拼接
   StringBuffer sb = new StringBuffer();
   sb.append("name:'").append(name).append("'AND age:'").append(age).append("'");

   //查询
   search.setQueryString(s);
   SearchResult result = search.search();                                                    不带分页查询
   SearchPageResult resultForPage = search.search(pageNo, pageSize);                           分页查询

 

 

    2,结果解析

   String content = result.getContent();

   content 的格式是之前定义过的json格式,其结构如下:

{"status":"",
 "request_id":"",
 "result":{"searchtime":,
              "total":,
              "num":,
              "viewtotal":,
              "items":[],
              "facet":[]        
             },
"errors":[],
"tracer":""
}

    我们需要的对象在  "items":[]里

 

 

   3,使用json相关的解析类(如:Gson,fastjson)把内容解析出来就OK了

分享到:
评论

相关推荐

    Laravel开发-laravel-opensearch

    OpenSearch 是一种标准,它允许浏览器通过 XML 描述文件来搜索 Web 服务,使得用户可以像使用内置搜索引擎一样方便地访问网站的搜索功能。本文将深入探讨如何在 Laravel 项目中集成和使用 `laravel-opensearch`,以...

    Laravel开发-opensearch

    现在,你可以使用Laravel的服务容器来注入并使用OpenSearch客户端。在控制器或其他需要使用OpenSearch的地方,你可以像这样获取客户端: ```php use App\Http\Controllers\Controller; use OpenSearch; class ...

    Laravel开发-aliyun-opensearch

    阿里云 OpenSearch 是一个强大的、易于使用的全文搜索引擎服务,它可以帮助开发者快速构建高效的搜索功能。结合 Laravel 5,我们可以构建出优雅且功能丰富的应用程序。 首先,我们需要了解 Laravel 的基本概念。...

    opensearch-analysis-hanlp-1.0.0.zip

    在OpenSearch中安装并启用这个插件后,用户可以在索引设置中选择使用HanLP分析器。通过自定义配置,例如设置分词模式、过滤停用词等,可以进一步优化分析效果。同时,由于HanLP支持在线更新模型,因此在新模型发布时...

    PyPI 官网下载 | collective.geo.opensearch-0.3.1.tar.gz

    《PyPI官网下载:collective.geo.opensearch-0.3.1.tar.gz全面解析》 在Python的世界里,PyPI(Python Package Index)是最重要的软件仓库,它为开发者提供了无数的第三方库,大大丰富了Python的功能。今天我们将...

    opensearch

    ### OpenSearch API参考...综上所述,OpenSearch API参考手册为开发者提供了详尽的指南,不仅涵盖了如何使用API进行搜索服务的开发,还提供了详细的参数设定和授权机制介绍,帮助开发者快速上手并高效地完成开发任务。

    Laravel开发-opensearch-bridge

    Laravel开发-opensearch-bridge 阿里云5号开放式搜索桥

    OpenSearch-Dashboards:OpenSearch的开源可视化仪表板

    OpenSearch仪表板 你好! OpenSearch Dashboards是源自Kibana 7.10.2的开源搜索和分析可视化文件,当前处于Alpha状态。 尽管我们仍在设置过程中,但我们很高兴能与您一起为星球上的OpenSearch建立最佳的可视化平台...

    搜索opensearch model索引

    6. **在线预测**:用户可以通过OpenSearch的API发送请求,检索模型并使用它对新数据进行实时预测。这使得OpenSearch成为一个强大的平台,能够结合搜索和预测功能。 7. **持续优化**:根据业务需求和模型的表现,...

    abdera-extensions-opensearch-1.0.jar

    标签:abdera-extensions-opensearch-1.0.jar,abdera,extensions,opensearch,1.0,jar包下载,依赖包

    opensearch-query-builder:阿里云OpenSearch查询构建器

    opensearch-query-builder 阿里云开放搜索查询url构建工具 详细使用方法请参考阿里云 Install npm i opensearch-query-builder How to use var qb = require('opensearch-query-builder')({ host: 'OpenSearch API ...

    opensearch knn model

    在OpenSearch中,可以使用插件机制来扩展其功能,实现KNN搜索。例如,`ml_cache`可能指的是机器学习相关的缓存,这可能是一个用来存储特征向量或计算结果的缓存服务,以提高查询效率。缓存可以显著减少重复计算,...

    OpenSearch向量检索和大模型方案.pdf

    OpenSearch向量检索和大模型方案.pdf OpenSearch向量检索是指在OpenSearch中实现的向量检索功能,该功能可以将非结构化数据转换为结构化数据,以便进行搜索和检索。该方案主要包括向量检索版客户侧API、向量索引...

    opensearch_2.tar.002

    opensearch

    opensearch_2.tar.001

    opensearch

    opensearch-express:OpenSearch 示例(使用 Yarn 索引)

    Algolia 的 OpenSearch 结果 这是一个实验,尚未得到验证 / -&gt; 带有指向 opensearch 的元链接的 html /opensearch.xml -&gt; 包含所有链接的描述文档 /suggest?query=XXX -&gt; 查询建议的 JSON 响应( ) /results?...

    1_mirrors-OpenSearch-Project-1.0.zip

    《OpenSearch项目详解及其在插件库中的应用》 OpenSearch是开源搜索技术的一个重要分支,它源于Amazon的开源项目,旨在提供一个简单、可扩展的搜索解决方案。本压缩包"1_mirrors-OpenSearch-Project-1.0.zip"包含了...

    OpenSearch网络搜索软件

    OpenSearch是一个多元网络搜索软件,它可以使用11类近百个搜索引擎同时进行查找,并且通过更新搜索引擎,还可以获得更强大的功能. 注意事项 如果软件有不完善得地方,请您一定要写信告诉作者,谢谢 这个...

    基于NLP技术实现的中文分词插件,准确度比常用的分词器高太多,同时提供ElasticSearch和OpenSearch插件

    ideaseg 是 Indexea 推出的一个基于最新的 HanLP 自然语言处理工具包实现的中文分词器, 包含了最新的模型数据,同时移除了 HanLP 所包含的非商业友好许可的 NeuralNetworkParser 相关代码和数据。

Global site tag (gtag.js) - Google Analytics