数智引航全新发布了兼具关系型和向量功能的集中式数据库VexDB V3.0.0,并且提供了开发版的1年免费试用期,本文记录了在CentOS 7 + x86 机器上安装 VexDB(单节点)的一次操作过程,以及VexDB的简单使用。
您可点击“阅读原文”,访问数智引航官网,免费下载VexDB 3.0.0开发版。
如果您有任何产品、技术问题,可以扫描二维码,加入我们的技术交流群。

安装前准备
1. IPC参数配置
打开/etc/systemd/logind.conf文件,配置RemoveIPC=no
vi etc/systemd/logind.conf

打开/usr/lib/systemd/system/systemd-logind.service文件,配置RemoveIPC=no
vi /usr/lib/systemd/system/systemd-logind.service

完成修改后,重新加载配置文件:
systemctl daemon-reloadsystemctl restart systemd-logind
2. 内核参数配置
注意:内核参数关系到数据库的启动和使用时的资源配置,需要结合实际情况调节大小,否则会影响数据库的安装部署。VexDB 官方文档提供了对这些参数的描述以供参考。
打开配置文件/etc/sysctl.conf
vi etc/sysctl.conf
将以下信息写入文件末尾:
fs.aio-max-nr=1048576fs.file-max= 76724600kernel.sem = 4096 2097152000 4096 512000kernel.shmall = 26843545 # pages, 80% MEM or higherkernel.shmmax = 68719476736 # bytes, 50% MEM or higherkernel.shmmin = 819200net.core.netdev_max_backlog = 10000net.core.rmem_default = 262144net.core.rmem_max = 4194304net.core.wmem_default = 262144net.core.wmem_max = 4194304net.core.somaxconn = 4096net.ipv4.tcp_fin_timeout = 5vm.dirty_background_bytes = 409600000vm.dirty_expire_centisecs = 3000vm.dirty_ratio = 80vm.dirty_writeback_centisecs = 50vm.overcommit_memory = 0vm.swappiness = 0net.ipv4.ip_local_port_range = 40000 65535fs.nr_open = 20480000
重新加载内核参数
sysctl -p
3. 配置SELinux
修改配置文件/etc/selinux/config
vi etc/selinux/config
配置SELINUX=disabled

4. 安装依赖软件
yum install -y zlib-devel libaio libuuid readline-devel krb5-libs libicu libxslt tcl perl openldap pam openssl-devel libxml2 bzip2
至此,我们已经完成了安装前的环境准备工作。
交互安装
创建一个/soft/vb文件夹,并将安装包文件上传或拷贝到该目录下:
mkdir -p soft/vb
创建用于安装VexDB的操作系统用户vexdb
useradd -m vexdb#设置用户密码passwd vexdb
解压安装包并授权:
cd /soft/vbtar -xvf 包名.tar.gzchown -R vexdb:vexdb soft/vb/chmod -R 775 soft/vb/


切换到刚才创建的vexdb用户,执行安装程序:
su - vexdbcd /soft/vb/vexdb-installer/./vexdb_installer
检查安装包完整性,按<Enter>继续

通过依赖检查,按<Enter>继续

选择实例化安装,按<Enter>选择默认值

密钥设置,按<Enter>选择默认设置

安装目录和数据库目录,按<Enter>选择默认位置

一直<Enter>,直到完成实例初始化过程

安装数据库过程会生成随机口令作为管理员初始口令,显示信息如下

暂无正式许可文件,VexDB 3.0.0开发版提供了一年的免费试用,选择n跳过安装许可的步骤:

显示安装完成后,根据提示信息,初始化数据库运行环境:
source ~/.bashrc
启动与状态查看
使用vb_ctl start启动VexDB数据库:
vb_ctl start
启动失败,日志报错信息如下:

根据提示,受机器资源与数据库配置参数的限制,我们需要修改数据库配置文件中的一些参数。
配置文件postgresql.conf位于数据库的数据目录$PGDATA(默认为/home/vexdb/data/vexdb)下:

访问postgresql.conf,适当增大max_process_memory,减小max_connections和shared_buffers。
下图左侧为修改后,右侧为修改前。

通过查阅相关资料,我们能够得知上述参数的作用:
max_connections:允许和数据库连接的最大并发连接数。
shared_buffers:设置VexDB使用的共享内存大小。
max_process_memory:设置一个数据库节点可用的最大物理内存。
修改并保存后,再次使用vb_ctl start命令启动数据库。
vb_ctl start
进程启动成功后,可以使用vb_ctl status命令查看数据库状态信息。
vb_ctl status

连接并使用
VexDB提供了一系列工具,帮助用户管理数据库。
vexdb是VexDB数据库的主线程,也是一个可执行的命令,执行vexdb -V命令打印数据库的版本信息。
vexdb -V

当前正在使用临时许可试用数据库,使用vb_licensetool工具查看数据库的许可信息,提示当前临时许可的有效期为1年:

使用客户端连接工具vsql打开一个本地连接。
VexDB数据库安装完成后,存在默认的数据库postgres,使用-d参数指定连接的数据库名称:
vsql -d postgres
看到dbname=#的输入提示符,就可以进行SQL操作了。
调用vb_version函数查看数据库版本信息:
select vb_version();

使用\?命令可以查看vsql元命令用法:
\?

创建一个新的数据库testdb1。
CREATE DATABASE testdb1;
切换到testdb1数据库下
\c testdb1
创建一个带向量类型字段的表,并简单插入一条数据:
CREATE TABLE items (id bigserial PRIMARY KEY, embedding floatvector(3));INSERT INTO items (embedding) VALUES ('[1,2,3]'), ('[4,5,6]');
更新数据:
UPDATE items SET embedding = '[1, 2, 8]' WHERE id =1;
查看表中数据:
SELECT * FROM items;
返回结果为:

向表中新增一个向量字段。
ALTER TABLE items ADD COLUMN embedding1 floatvector (3);
查看表结构:
\d items
返回结果为:

断开与数据库的连接
\q

结语
在整个VexDB的安装过程中,事先进行准确完整的环境配置是至关重要的,能够确保接下来执行安装脚本过程的顺利进行。成功启动并打开数据库连接后,就可以开始体验VexDB的使用了。
本文仅介绍了简单的基础操作,VexDB还有更多用法等待着大家探索。VexDB拥有强大的向量数据处理能力,提供了丰富的函数和操作符进行向量之间的计算,并支持多种向量检索索引。VexDB通过高效存储和检索高维向量数据,为AI应用提供了关键的技术支撑。


立即访问www.vexdb.com
或点击下方“阅读原文”跳转官网




