阿里云大数据产品开放搜索(opensearch)常见问题总结及排查思路

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
简介: 在使用大数据产品开放搜索(opensearch)过程中难免会遇到问题,我把踩过的坑总结了下,给需要的人看下。不定时更新中......

1.支持多表同属一个数据源。但不支持同一个表有多个数据源。
2.不支持修改源数据表的主键,查询会出现重复。
3.查询分词可以单字分词,以达到查询所有组合的目的。
4.主表绝大多数数据更新情况是10s内,辅表会慢一些,时效性目前没有保证。
5.对于RDS表中的datetime及timestamp类型开放搜索系统会自动将其转化为毫秒数。如果想保留源time格式,可以在rds中转化为string后再导入。
6.搜索引擎最多返回5000条指的是start+hit。一页最多返回500条是因为hit的系统限制是[0,500]。
7.有些飘红有些不飘红的,如果是opensearch的搜索问题。最好在opensearch控制台测试,或者sdk调用opensearch的搜索接口。
8.字符串TEXT类型是用来做索引做分词的,LITERAL可以创建为属性字段
9.按量付费是按配额付费不是实际流量。可以在应用列表页面开通“一键报警”,这样有流量超过85%就会报警可以再紧急扩容。
10.老高级版索引重建触发以后立即执行,新高级版需要单击全量索引构建,触发全量数据导入,否则一直处于等待全量索引构建状态。
11.自定义分词的词条文档上查看最多只能支持8000条,不支持扩展
12.如果同时设置了同义词干预和自动纠错干预,那么同义词干预就不会生效的
13.数据更新属于增量同步,不会引起索引重建。
14.不支持MySQL的view的同步。定时任务每天只会执行一次,一旦当天成功执行了一次,无论如何修改配置,都不会再次执行(仅针对于定时任务,手动可以执行)
15.6015错误码,配额不足,扩容即可。批量更新不会消耗LCU的
16.同一个主账号在同一个区域最多创建2个入门型实例(2018.5.7以后)。
17.数据源,只支持rds-mysql、maxcompute,其他的数据库中的数据,只能通过api、sdk上传到opensearch中。
18.v3.x SDK 可以访问高级版 和 标准版应用,目前v2.x 和 v3.x 这2个SDK版本代码差异较大,代码也不兼容
19.粗排表达式,排序分超过20000 是因为 时间戳, 建议:static_bm25()10000+sales_count5+timeliness(create_time)*3
20.下拉提示问题,60字节以内就是原值保留,超过60字节,才会抽取,例如返回:“清扬 洗发水 洗发露”。
21.目前opensearch的文档数据类型,还不支持json格式的数据,目前的办法只能将json类型数据的key全部以字段的形式上传。如果是不定长度的json数组,确实不太好处理,只能看下业务层次生成的数据,是否可以调整下了。
22.如果您希望搜索'国家天文台厉害吗?' 召回国家天文台的内容,不需要配置模糊分词,可以尝试使用查询分析——词权重。https://help.aliyun.com/document_detail/126679.html?spm=a2c4g.11186623.6.597.40fc7778kei4qw
23.类目预测报错('Flow task for table [110053251_category_prediction)可能是数据量和pv太少
24.粗排exact_boost_match 不能用来-RANK 因为RANK只能设置精排,所以不论是sort=-RANK还是sort=+RANK都不会生效。
25.精排中text_relevance用来替代exact_boost_match,但并不是完全替代。text_relevance是文本相关性函数,顾名思义只能支持TEXT,INT是没有任何意义的。
26.设置text_relevance(name) 然后再使用-RANK; sort=-sale_count;-RANK 这样设置就表示,先按sale_count降序,再按text_relevance(name) 降序排列。按文本匹配度再按销量降序,应该是sort=-RANK;-sales_count

27.报错

  • Hostname in DNS cache was stale, zapped
  • Trying xx.xx.xx.xx...
  • TCP_NODELAY set
  • Connection timed out after 1000 milliseconds
  • Closing connection 0
    没有requestid,考虑是网络问题,还没有请求到opensearch。

28.把搜索出来的结果按照相关度高的排序(文本相关度高的排序 使用text_relevance 精排表达式)
选择或者点击率高的结果下次自动增加排序权重(按点击率排序使用sort=-click,需要先按相关度再按点击率排那就是 sort=-RANK;-click)
支持每秒每库1500条doc 可以同时更新
29.scroll_id 的有效时长 默认1min

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
14天前
|
人工智能 Cloud Native 数据管理
媒体声音|重磅升级,阿里云发布首个“Data+AI”驱动的一站式多模数据平台
在2024云栖大会上,阿里云瑶池数据库发布了首个一站式多模数据管理平台DMS:OneMeta+OneOps。该平台由Data+AI驱动,兼容40余种数据源,实现跨云数据库、数据仓库、数据湖的统一数据治理,帮助用户高效提取和分析元数据,提升业务决策效率10倍。DMS已服务超10万企业客户,降低数据管理成本高达90%。
|
16天前
|
分布式计算 Java 开发工具
阿里云MaxCompute-XGBoost on Spark 极限梯度提升算法的分布式训练与模型持久化oss的实现与代码浅析
本文介绍了XGBoost在MaxCompute+OSS架构下模型持久化遇到的问题及其解决方案。首先简要介绍了XGBoost的特点和应用场景,随后详细描述了客户在将XGBoost on Spark任务从HDFS迁移到OSS时遇到的异常情况。通过分析异常堆栈和源代码,发现使用的`nativeBooster.saveModel`方法不支持OSS路径,而使用`write.overwrite().save`方法则能成功保存模型。最后提供了完整的Scala代码示例、Maven配置和提交命令,帮助用户顺利迁移模型存储路径。
|
2月前
|
人工智能 分布式计算 DataWorks
连续四年!阿里云领跑中国公有云大数据平台
近日,国际数据公司(IDC)发布《中国大数据平台市场份额,2023:数智融合时代的真正到来》报告——2023年中国大数据平台公有云服务市场规模达72.2亿元人民币,其中阿里巴巴市场份额保持领先,占比达40.2%,连续四年排名第一。
200 12
|
2月前
|
人工智能 Cloud Native 数据管理
重磅升级,阿里云发布首个“Data+AI”驱动的一站式多模数据平台
阿里云发布首个AI多模数据管理平台DMS,助力业务决策提效10倍
323 17
|
2月前
|
SQL 人工智能 大数据
阿里云牵头起草!首个大数据批流融合国家标准发布
近日,国家市场监督管理总局、国家标准化管理委员会正式发布大数据领域首个批流融合国家标准GB/T 44216-2024《信息技术 大数据 批流融合计算技术要求》,该标准由阿里云牵头起草,并将于2025年2月1日起正式实施。
85 7
|
2月前
|
SQL 人工智能 大数据
首个大数据批流融合国家标准正式发布,阿里云为牵头起草单位!
近日,国家市场监督管理总局、国家标准化管理委员会正式发布大数据领域首个批流融合国家标准 GB/T 44216-2024《信息技术 大数据 批流融合计算技术要求》,该标准由阿里云牵头起草,并将于2025年2月1日起正式实施。
|
2月前
|
存储 SQL 分布式计算
Java连接阿里云MaxCompute例
要使用Java连接阿里云MaxCompute数据库,首先需在项目中添加MaxCompute JDBC驱动依赖,推荐通过Maven管理。避免在代码中直接写入AccessKey,应使用环境变量或配置文件安全存储。示例代码展示了如何注册驱动、建立连接及执行SQL查询。建议使用RAM用户提升安全性,并根据需要配置时区和公网访问权限。具体步骤和注意事项请参考阿里云官方文档。
|
1月前
|
存储 机器学习/深度学习 分布式计算
大数据技术——解锁数据的力量,引领未来趋势
【10月更文挑战第5天】大数据技术——解锁数据的力量,引领未来趋势
|
3天前
|
存储 分布式计算 数据挖掘
数据架构 ODPS 是什么?
数据架构 ODPS 是什么?
41 7
|
3天前
|
存储 分布式计算 大数据
大数据 优化数据读取
【11月更文挑战第4天】
13 2