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

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 在使用大数据产品开放搜索(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

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
SQL 分布式计算 DataWorks
DataWorks常见问题之maxcompute资源打开失败如何解决
DataWorks是阿里云提供的一站式大数据开发与管理平台,支持数据集成、数据开发、数据治理等功能;在本汇总中,我们梳理了DataWorks产品在使用过程中经常遇到的问题及解答,以助用户在数据处理和分析工作中提高效率,降低难度。
|
2月前
|
人工智能 数据管理 Serverless
阿里云数据库走向Serverless与AI驱动的一站式数据平台具有重大意义和潜力
阿里云数据库走向Serverless与AI驱动的一站式数据平台具有重大意义和潜力
404 2
|
2月前
|
人工智能 运维 Cloud Native
、你如何看待阿里云数据库走向Serverless与AI驱动的一站式数据平台?
、你如何看待阿里云数据库走向Serverless与AI驱动的一站式数据平台?
149 2
|
2月前
|
存储 数据可视化 数据管理
基于阿里云服务的数据平台架构实践
本文主要介绍基于阿里云大数据组件服务,对企业进行大数据平台建设的架构实践。
714 2
|
2月前
|
人工智能 数据管理 大数据
阿里云数据库走向Serverless与AI驱动的一站式数据平台是一个很有前景和意义的发展方向
阿里云数据库走向Serverless与AI驱动的一站式数据平台是一个很有前景和意义的发展方向
33 2
|
21天前
|
机器学习/深度学习 分布式计算 数据挖掘
阿里云 MaxCompute MaxFrame 开启免费邀测,统一 Python 开发生态
阿里云 MaxCompute MaxFrame 正式开启邀测,统一 Python 开发生态,打破大数据及 AI 开发使用边界。
198 1
|
1月前
|
数据采集 分布式计算 DataWorks
DataWorks常见问题之dataworks引用maxcompute资源失败如何解决
DataWorks是阿里云提供的一站式大数据开发与管理平台,支持数据集成、数据开发、数据治理等功能;在本汇总中,我们梳理了DataWorks产品在使用过程中经常遇到的问题及解答,以助用户在数据处理和分析工作中提高效率,降低难度。
|
1月前
|
人工智能 大数据 流计算
大数据&AI产品月刊【2024年2月】
大数据&AI产品技术月刊【2024年2月】,涵盖本月技术速递、产品和功能发布、市场和客户应用实践等内容,帮助您快速了解阿里云大数据&AI方面最新动态。
|
1月前
|
人工智能 DataWorks 数据可视化
心动基于阿里云DataWorks构建游戏行业通用大数据模型
心动游戏在阿里云上构建云原生大数据平台,基于DataWorks构建行业通用大数据模型,如玩家、产品、SDK、事件、发行等,满足各种不同的分析型应用的要求,如AI场景、风控场景、数据分析场景等。
334 1
|
2月前
|
人工智能 运维 数据管理
阿里云数据库走向Serverless与AI驱动的一站式数据平台
阿里云数据库走向Serverless与AI驱动的一站式数据平台
271 2