当前位置: 首页 > article >正文

用亚马逊云科技Graviton高性能/低耗能处理器构建AI向量数据库(上篇)

简介:

今天小李哥将介绍亚马逊推出的云平台4代高性能计算处理器Gravition,并利用该处理器构建生成式AI向量数据库。利用向量数据库,我们可以开发和构建多样化的生成式AI应用,如RAG知识库,特定领域知识的聊天机器人等。我们今天将手把手带大家在亚马逊云科技上,搭建一个目前大热的Milvus开源向量数据库,并利用VectorDBBench软件对向量数据库进行基准测试,了解Graviton如何提升AI向量数据库的性能、优化成本。

在本系列上偏中,我将介绍如何在云平台上创建Graviton芯片基础设施,并在Graviton芯片服务器上安装Milvus开源向量数据库。在系列下篇中,我们将利用数据库基准测试软件,比较不同芯片服务器上的向量数据库性能。

方案所需基础知识

什么是Graviton4代芯片?

Amazon Graviton 4 处理器由亚马逊云科技定制设计的第四代高性能、低功耗处理器,旨在为 Amazon 计算服务中的工作负载提供最佳性价比,相对于传统计算类工作负载(Graviton2)提供高达40%的性价比提升。与常见的 x86 处理器相比,基于 Graviton 4 的 EC2 实例具有以下特性:

  • 每个 vCPU 独占一个物理核心的计算资源,而非通过 SMT 技术获得一个线程;

  • 每个 vCPU 拥有更大的 L1/L2 Cache 容量;

  • 更快的内存带宽和更低的内存延时。

  • Graviton 处理器支持众多 Linux 操作系统,包括 Red Hat Enterprise Linux、SUSE 和 Ubuntu 等。

  • Graviton 兼容众多云原生服务和开源软件,兼容亚马逊云科技上的开发工具,数据库,容器,分析,无服务器等服务,拥有丰富的应用生态。

最新发布的第 4 代 Graviton 处理器(基于 Arm Neoverse-V2,ARMv9.0-a);主频提升,L2 缓存翻倍,L3 缓存容量提升,支持 SVE2; 内存:12*DDR5-5600(前代采用 8*DDR5-4800),内存带宽提升 75%;

什么是Milvus开源向量数据库?

Milvus 是全球最流行的开源向量数据库之一。Milvus 是一个高度灵活、可靠且速度极快的云原生开源向量数据库。它为 embedding 相似性搜索和 AI 应用程序提供支持,并努力使每个组织都可以访问向量数据库。 Milvus 可以存储、索引和管理由深度神经网络和其他机器学习(ML)模型生成的十亿级别以上的 embedding 向量。

什么是VectorDBBench基础测试软件?

VectorDBBench 是一个开源的向量数据库基准测试工具,专为评估向量数据库系统的性能而设计。它能够帮助用户测试和比较不同的向量数据库,以确定最适合其特定用例的数据库系统。通过 VectorDBBench,开发者可以基于实际的向量数据库性能做出明智的决策,提供性能对比参数有查询每秒(QPS)、延迟、成本等关键指标,基于综合对比结果,可以帮助开发者选择最合适的开源向量数据库。

本实践包括的内容

1. 创建安装开源向量数据的云基础设施(Graviton芯片和Intel芯片服务器)

2. 了解亚马逊云科技Graviton4代高性能、低功耗芯片

3. 在亚马逊云科技上安装Milvus开源向量数据库

项目实操步骤

创建向量数据库基础设施

1. 首先我们进入亚马逊云科技控制台,进入EC2服务

2. 点击Launch Instance创建一台EC2服务器

 3. 在芯片架构处,我们选择r8g实例用于创建Graviton芯片服务器。

4. 创建SSH登录秘钥对

5. 为密钥对命名,并选择pem类型,点击右下角创建。

6. 运行以下命令为密钥对授权,用于SSH登录服务器

chmod 400 test-only.pem

7. 为EC2服务器添加VPC和子网配置

8. 选择配置防火墙安全组,在防火墙入站规则中添加允许SSH从0.0.0.0/0 IP范围访问

9. 并选择服务器存储,我们选择gp3类型的80GiB的磁盘存储。

10. 通过以下命令SSH登录到EC2服务器中,将创建好的EC2服务器IP地址替换到命令中“EC2实例公网 IP 地址”字段

ssh -i /path/key-pair-name.pem ec2-user@EC2实例公网 IP 地址

11. 进入到服务器中,我们运行以下命令安装docker-compose包。

sudo su - root

dnf install -y docker git htop
systemctl start docker
ARCH=$(arch)
curl -SL https://github.com/docker/compose/releases/download/v2.12.2/docker-compose-linux-${ARCH} \
     -o ./docker-compose
chmod +x docker-compose
mv docker-compose /usr/bin/

12. 我们从Github上下载Milvus向量数据的Docker Compose配置文件并启动向量数据库

mkdir ~/milvus
cd ~/milvus
wget https://github.com/milvus-io/milvus/releases/download/v2.4.5/milvus-standalone-docker-compose.yml -O docker-compose.yml

## 启动
docker-compose up -d

## 查看状态
docker-compose ps

输出结果如下

 13. 运行以下命令启动MIlvus向量数据库可视化管理工具

docker run -d -p 8000:3000 -e MILVUS_URL=$(hostname -i):19530 zilliz/attu:v2.4

14. 打开服务器的8000端口,如http://IP:8000,进入Milvus服务器管理界面,并点击链接按键进入向量数据库

15. 进入后我们就可以看到Milvus初始化创建的默认数据库了

 16. 点击default数据库进入详细信息界面,我们可以看到数据库状态、创建时间、目前保存的数据量、向量数据库Schema架构等信息。

以上就是利用亚马逊云科技自研Graviton4代芯片构建高性能、低成本AI向量数据的上篇内容。欢迎大家关注小李哥的亚马逊云科技AI服务深入调研系列,关注小李哥未来不要错过更多国际前沿的AWS云开发/云架构方案。 


http://www.kler.cn/a/297796.html

相关文章:

  • 开源模型应用落地-sherpa-onnx-AIGC应用探索(十)
  • flutter的入口和原生交互
  • 【深度学习】【onnxruntime】C++调用onnx
  • TinyWebSever源码逐行注释(三)_ thread_pool.cpp
  • 动手学深度学习(pytorch)学习记录25-汇聚层(池化层)[学习记录]
  • 等保2.0测评之Nginx 中间件
  • 操作word 以及pdf 记录以及踩坑总结
  • Python | 练习作业 2
  • CMake+MinGW+vcpkg项目引入三方库的两种方式(手动路径,vcpkg)
  • 鸿蒙轻内核M核源码分析系列六 任务及任务调度(2)任务模块
  • Linux学习-Ansible(一)
  • 最新前端开发VSCode高效实用插件推荐清单
  • Linux(3)--CentOS8下载、安装
  • HTML 揭秘:HTML 编码快速入门
  • 343. 整数拆分
  • 联邦迁移学习
  • AIoTedge边缘计算+边缘物联网平台
  • WPF 保姆级教程怎么实现一个树形菜单
  • 基于SpringBoot+Vue社区家政服务预约平台【提供源码+答辩PPT+参考文档+项目部署】
  • stm32之SPI通信外设