【深入浅出】阿里自研开源搜索引擎Havenask集群扩分片

简介: 本次分享内容为Havenask的集群扩分片,共2个部分组成( 集群扩分片简介、 集群扩分片实践),希望可以帮助大家更好了解和使用Havenask。

一、集群扩分片简介

流程与修改schema基本一致,用户通过hape修改分片数,进而修改了catalog中的信息触发全量build,新版本全量切换后,新的分片数生效。

image.png


二、集群扩分片实践

1、过程概述

集群扩分片操作的命令与变更表结构一致,相关命令可查看havenask官网。在havenask官网中找到hape命令(https://havenask.net/#/doc/v0-2-2/sql/petool/command),然后找到update命令,更新全量表。命令中的参数可更新全量表的partition数量(分片数)。首先创建一个分布式的havenask集群,再创建一张全量表,查询这张全量表,然后对该全量表进行扩分片操作,使用的命令与变更schema的命令相同,等待扩分片操作完成之后,再查询集群。


2、扩分片实践

接下来我们在havenask分布式集群上进行一次扩分片操作。

hape命令变更表结构(https://havenask.net/0/doc/sql/petool/command)


准备集群:

  • hape start havenask -c /ha3_install/hape_conf/remote
  • hape create table -t in1 -p 1 -s /ha3_install/example/cases/normal/in0_schema.json  -f hdfs://xxx/test.data -c /ha3_install/hape_conf/remote
  • hape gs bs -c /ha3_install/hape_conf/remote
  • hape gs havenask -c /ha3_install/hape_conf/remote


查询:

  • /ha3_install/sql_query.py --address  http://<qrs-ip>:45800 --query "select * from in1"


扩分片:

  • hape update table-schema -t in1 -p 2 -s /ha3_install/example/cases/normal/in0_schema.json -f hdfs://xxx/test.data -c /ha3_install/hape_conf/remote
  • hape gs bs -c /ha3_install/hape_conf/remote
  • hape gs havenask -c /ha3_install/hape_conf/remote


查询:

  • /ha3_install/sql_query.py --address http://:45800 --query "select * from in1"

3、具体步骤

  • 首先,启动havenask分布式集群;然后,创建一张分片数为1的全量表,触发全量表创建已经完成,在全量表构建期间,可以用gs命令查看,build info表示全量表正在构建中,当有了current的build info信息,表明全量表已经构建完成,集群也处于了ready状态;


  • 接下来,查询正常后,进行扩分片操作,把分片数改为2,,执行命令后会触发全量build,build完成且索引切换上线后,查看全量build的状态,当创建完成后,build info当中会有两个分片的信息;


  • 最后,再次查询集群的状态,显示集群状态为ready,两个分片状态也为ready,扩分片后的集群也已完成。

 

三、结尾

具体Havenask集群扩分片的演示视频可以通过链接查看,欢迎各位开发者使用。

视频链接:https://developer.aliyun.com/live/253698?spm=a2c6h.13262185.profile.7.563bee42LdD7By


关注我们:

Havenask 开源官网:https://havenask.net/

Havenask-Github 开源项目地址:https://github.com/alibaba/havenask

阿里云 OpenSearch 官网:https://www.aliyun.com/product/opensearch

钉钉扫码加入 Havenask 开源官方技术交流群:

1715594790746.png

 

目录
相关文章
|
SQL 运维 搜索推荐
《揭秘,阿里开源自研搜索引擎Havenask的在线检索服务》
Havenask是阿里巴巴智能引擎事业部自研的开源高性能搜索引擎,深度支持了包括淘宝、天猫、菜鸟、高德、饿了么在内几乎整个阿里的搜索业务。本文针对性介绍了Havenask的在线检索服务,它具备高可用、高时效、低成本的优势,帮助企业和开发者量身定做适合业务发展的智能搜索服务。
85811 138
|
人工智能 搜索推荐 异构计算
|
存储 固态存储 索引
搜索和推荐统一存储层的新进展和思考
我们在2017年统一了搜索和推荐场景下的HA3、iGraph、RTP和DII四大引擎的存储层(参见统一之战),帮助它们取得了的更迅速的迁移能力、更快速的数据恢复能力和更丰富的数据召回能力。 最近一年来,我们在统一的存储框架上又做了进一步的演进,下面将分别从架构、Build服务以及存储模型角度介绍我们的新进展和思考。   1.架构   在我们的传统架构(参见统一之战)中,
3461 0
|
关系型数据库 MySQL 索引
MySQL InnoDB中的锁-插入意向锁(Insert Intention Lock)
MySQL InnoDB 插入意向锁 Insert Intention Lock
4863 0
MySQL InnoDB中的锁-插入意向锁(Insert Intention Lock)
|
运维 搜索推荐 调度
Ha3搜索引擎简介
Ha3是阿里巴巴搜索团队开发的搜索引擎平台,它为阿里集团包括淘宝、天猫在内的核心业务提供搜索服务支持。
27491 1
|
存储 Unix Linux
揭秘Linux硬件组成:从内核魔法到设备树桥梁,打造你的超级系统,让你的Linux之旅畅通无阻,震撼体验来袭!
【8月更文挑战第5天】Linux作为顶级开源操作系统,凭借其强大的功能和灵活的架构,在众多领域大放异彩。本文首先概述了Linux的四大核心组件:内核、Shell、文件系统及应用程序,并深入探讨了内核的功能模块,如存储、CPU及进程管理等。接着介绍了设备树(Device Tree),它是连接硬件与内核的桥梁,通过DTS/DTB文件描述硬件信息,实现了跨平台兼容。此外,还简要介绍了Linux如何通过本地总线高效管理硬件资源,并阐述了文件系统与磁盘管理机制。通过这些内容,读者可以全面了解Linux的硬件组成及其核心技术。
461 3
|
SQL 开发者 索引
【深入浅出】阿里自研开源搜索引擎Havenask变更表结构
本文介绍了Havenask的表结构变更,包括表结构简介、全量构建流程和变更表结构三个部分。表结构由schema配置,字段类型包括INT、FLOAT、STRING等,索引有倒排、正排和摘要索引。全量表变更会触发全量构建,完成后自动切换,但直写表不支持直接变更。变更过程涉及使用hape命令更新schema并触发全量build。最后还有全量构建的流程图和具体操作步骤。
62554 2
|
机器学习/深度学习 数据可视化 PyTorch
贝叶斯优化实战(二)(1)
贝叶斯优化实战(二)
480 0
|
存储 监控 Cloud Native
阿里性能监控引擎建设之路
阿里巴巴智能引擎事业部自研的 Khronos 系统是阿里内部接入规模最大的性能数据存储引擎。Khronos 支持动态生命周期的存储计算分离架构,采用 schemaless 的 data model 设计,在万亿数据规模下为业务提供易用、高效、经济的服务,团队近期的优化工作也被国际学术会议CIKM2023收录。本⽂总结了Khronos 在性能监控领域遇到的技术挑战,以及在这个场景下的一些价值判断。