阿里云开放搜索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的服务容器来注入并使用OpenSearch客户端。在控制器或其他需要使用OpenSearch的地方,你可以像这样获取客户端: ```php use App\Http\Controllers\Controller; use OpenSearch; class ...
阿里云 OpenSearch 是一个强大的、易于使用的全文搜索引擎服务,它可以帮助开发者快速构建高效的搜索功能。结合 Laravel 5,我们可以构建出优雅且功能丰富的应用程序。 首先,我们需要了解 Laravel 的基本概念。...
OpenSearch 是一种标准,它允许浏览器通过 XML 描述文件来搜索 Web 服务,使得用户可以像使用内置搜索引擎一样方便地访问网站的搜索功能。本文将深入探讨如何在 Laravel 项目中集成和使用 `laravel-opensearch`,以...
在OpenSearch中安装并启用这个插件后,用户可以在索引设置中选择使用HanLP分析器。通过自定义配置,例如设置分词模式、过滤停用词等,可以进一步优化分析效果。同时,由于HanLP支持在线更新模型,因此在新模型发布时...
《PyPI官网下载:collective.geo.opensearch-0.3.1.tar.gz全面解析》 在Python的世界里,PyPI(Python Package Index)是最重要的软件仓库,它为开发者提供了无数的第三方库,大大丰富了Python的功能。今天我们将...
### OpenSearch API参考...综上所述,OpenSearch API参考手册为开发者提供了详尽的指南,不仅涵盖了如何使用API进行搜索服务的开发,还提供了详细的参数设定和授权机制介绍,帮助开发者快速上手并高效地完成开发任务。
Laravel开发-opensearch-bridge 阿里云5号开放式搜索桥
OpenSearch仪表板 你好! OpenSearch Dashboards是源自Kibana 7.10.2的开源搜索和分析可视化文件,当前处于Alpha状态。 尽管我们仍在设置过程中,但我们很高兴能与您一起为星球上的OpenSearch建立最佳的可视化平台...
6. **在线预测**:用户可以通过OpenSearch的API发送请求,检索模型并使用它对新数据进行实时预测。这使得OpenSearch成为一个强大的平台,能够结合搜索和预测功能。 7. **持续优化**:根据业务需求和模型的表现,...
标签:abdera-extensions-opensearch-1.0.jar,abdera,extensions,opensearch,1.0,jar包下载,依赖包
opensearch-query-builder 阿里云开放搜索查询url构建工具 详细使用方法请参考阿里云 Install npm i opensearch-query-builder How to use var qb = require('opensearch-query-builder')({ host: 'OpenSearch API ...
在OpenSearch中,可以使用插件机制来扩展其功能,实现KNN搜索。例如,`ml_cache`可能指的是机器学习相关的缓存,这可能是一个用来存储特征向量或计算结果的缓存服务,以提高查询效率。缓存可以显著减少重复计算,...
OpenSearch向量检索和大模型方案.pdf OpenSearch向量检索是指在OpenSearch中实现的向量检索功能,该功能可以将非结构化数据转换为结构化数据,以便进行搜索和检索。该方案主要包括向量检索版客户侧API、向量索引...
opensearch
opensearch
Algolia 的 OpenSearch 结果 这是一个实验,尚未得到验证 / -> 带有指向 opensearch 的元链接的 html /opensearch.xml -> 包含所有链接的描述文档 /suggest?query=XXX -> 查询建议的 JSON 响应( ) /results?...
《OpenSearch项目详解及其在插件库中的应用》 OpenSearch是开源搜索技术的一个重要分支,它源于Amazon的开源项目,旨在提供一个简单、可扩展的搜索解决方案。本压缩包"1_mirrors-OpenSearch-Project-1.0.zip"包含了...
OpenSearch是一个多元网络搜索软件,它可以使用11类近百个搜索引擎同时进行查找,并且通过更新搜索引擎,还可以获得更强大的功能. 注意事项 如果软件有不完善得地方,请您一定要写信告诉作者,谢谢 这个...
OpenSearch 是一个分布式搜索和分析引擎,支持各种用例,从在网站上实现搜索框到分析安全数据以检测威胁。分布式一词意味着您可以在多台计算机上...无论您的数据类型如何,您都可以使用 OpenSearch 存储和分析数据。