Instalação e Primeiros Passos com VexDB

O VexDB é um banco de dados vetoriais projetado para cenários de IA. Seu nome deriva de "Vector" + "X" (representando possibilidades multimodais) + "Database". Atualmente, o VexDB oferece duas edições: a Developer Edition (gratuita por um ano, com suporte da comunidade) e a Enterprice Edition (para aplicações corporativas com SLA e suporte técnico profissional).

Este artigo demonstra a instalação e o uso básico da Developer Edition do VexDB. O pacote de instalação pode ser baixado em: https://vexdb.com/download.

Preparação do Ambiente

Especificações do Ambiente de Teste

Hostname CPU RAM Disco Sistema Operacional Versão VexDB
VexDB 8 núcleos 16 GB 100 GB CentOS 7.9 3.0

Essas configurações são para desenvolvimento/teste. Para produção, consulte as recomendações oficiais.

Desativar Firewall e SELinux

Recomenda-se desativar o firewall e o SELinux para evitar interferências.

[root@VexDB ~]# systemctl stop firewalld
[root@VexDB ~]# systemctl disable firewalld
[root@VexDB ~]# /usr/sbin/setenforce 0
[root@VexDB ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

Verificar Fuso Horário

Certifique-se de que o fuso horário do sistema corresponda ao fuso horário padrão do banco de dados (China). Caso contrário, os logs podem apresentar inconsistências.

Instalar Dependências

Instale os pacotes necessários:

yum install -y zlib-devel libaio libuuid readline-devel krb5-libs libicu libxslt tcl perl openldap pam openssl-devel libxml2 bzip2

Certifique-se de ter um repositório local configurado (ex.: montagem ISO em /mnt).

Configurar RemoveIPC

No CentOS 7+, defina RemoveIPC=no no /etc/systemd/logind.conf e reinicie o serviço:

[root@VexDB ~]# sed -i 's/#RemoveIPC=no/RemoveIPC=no/' /etc/systemd/logind.conf
[root@VexDB ~]# systemctl daemon-reload
[root@VexDB ~]# systemctl restart systemd-logind

Desativar Transparent HugePages

As Transparent HugePages podem impactar negativamente o desempenho. Para desativá-las permanentemente:

[root@VexDB ~]# sed -i 's/quiet/quiet transparent_hugepage=never/' /etc/default/grub
[root@VexDB ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
[root@VexDB ~]# reboot

Após a reinicialização, verifique:

[root@VexDB ~]# cat /sys/kernel/mm/transparent_hugepage/enabled

Configuração de Parâmetros do Kernel

Calcule os valores de kernel.shmall e kernel.shmmax com base na memória total:

os_memory_total=$(awk '/MemTotal/{print $2}' /proc/meminfo)
pagesize=$(getconf PAGE_SIZE)
shmall=$(( (os_memory_total - 1) * 1024 / pagesize ))
shmmax=$(( os_memory_total * 1024 - 10 ))
[[ $shmall -lt 2097152 ]] && shmall=2097152
[[ $shmmax -lt 4294967295 ]] && shmmax=4294967295

Em seguida, adicione os parâmetros ao /etc/sysctl.conf:

cat<<-EOF>>/etc/sysctl.conf
fs.aio-max-nr=1048576
fs.file-max=76724600
kernel.sem=250 32000 100 128
kernel.shmall=$shmall
kernel.shmmax=$shmmax
kernel.shmmni=4096
net.core.netdev_max_backlog=10000
net.core.rmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=4194304
net.core.somaxconn=4096
net.ipv4.tcp_fin_timeout=5
vm.dirty_background_bytes=409600000
vm.dirty_expire_centisecs=3000
vm.dirty_ratio=80
vm.dirty_writeback_centisecs=50
vm.overcommit_memory=0
vm.swappiness=0
net.ipv4.ip_local_port_range=40000 65535
fs.nr_open=20480000
EOF
sysctl -p

Nota: Para ambientes com pouca memória, ajuste os valores de kernel.sem conforme acima (os valores padrão para produção podem ser muito altos).

Ajustar Limites de Recursos

Adicione as seguintes linhas ao /etc/security/limits.conf:

cat<<-EOF>>/etc/security/limits.conf
vexdb soft nproc unlimited
vexdb hard nproc unlimited
vexdb soft stack unlimited
vexdb hard stack unlimited
vexdb soft core unlimited
vexdb hard core unlimited
vexdb soft memlock unlimited
vexdb hard memlock unlimited
vexdb soft nofile 1024000
vexdb hard nofile 1024000
EOF

Criar Usuário e Diretórios

[root@VexDB ~]# useradd -d /home/vexdb -m vexdb
[root@VexDB ~]# echo "vexdb:vexdb" | chpasswd
[root@VexDB ~]# mkdir -p /vexdbdata/db_coredump /vexdbdata/vexdb /vexdbdata/soft
[root@VexDB ~]# chmod -R 770 /vexdbdata
[root@VexDB ~]# chown -R vexdb:vexdb /vexdbdata

Extrair o Pacote de Instalação

[root@VexDB ~]# mkdir /soft
[root@VexDB ~]# chown -R vexdb:vexdb /soft
[root@VexDB ~]# chmod -R 775 /soft
[root@VexDB ~]# su - vexdb
[vexdb@VexDB ~]$ cd /soft
[vexdb@VexDB soft]$ tar -xf VexDB-Developer-Edition-3.0_Build0_28146-Linux-x86_64-no_mot-202509011854.tar.gz

Instalação do VexDB

Instalação Interativa

Execute o instalador:

cd /soft/vexdb-installer
./vexdb_installer

Durante a instalação, forneça a senha do banco de dados (ex.: VexDB123456.). O instalador gera uma senha aleatória para o administrador e pergunta sobre a licença. Ao final, as variáveis de ambiente são configuradas.

Instalação Silenciosa

Crie um arquivo de resposta:

[vexdb@VexDB ~]$ cat<<-EOF>/soft/vexdb-installer/db_install.rsp
vexdb_password=VexDB123456.
encryption_key=VexDB123456.
vexdb_home=/vexdbdata/soft
vexdb_data=/vexdbdata/vexdb
port=5432
max_connections=500
shared_buffers=4011
db_compatibility=A
isinitdb=true
EOF

Execute a instalação silenciosa:

[vexdb@VexDB vexdb-installer]$ ./vexdb_installer --silent -responseFile /soft/vexdb-installer/db_install.rsp

Iniciar e Parar o VexDB

Após a instalação, o banco de dados fica desligado. Inicie-o:

[vexdb@VexDB ~]$ vb_ctl start

Comandos adicionais:

[vexdb@VexDB ~]$ vb_ctl stop
[vexdb@VexDB ~]$ vb_ctl status
[vexdb@VexDB ~]$ vb_ctl restart

Consulte mais opções com vb_ctl --help.

Conectando e Usando o VexDB

Use a ferramenta cliente vsql para conectar localmente:

[vexdb@VexDB ~]$ vsql -d postgres -p 5432

Crie um usuário e banco de dados:

CREATE USER lpc PASSWORD "VexDB@123";
CREATE DATABASE lucifer OWNER lpc TEMPLATE template0;
\l

Crie uma tabela:

\c lucifer lpc
CREATE SCHEMA lpc;
CREATE TABLE lpc.customer (
    c_customer_sk integer not null,
    c_customer_id char(6) not null,
    c_first_name varchar(20),
    c_last_name varchar(20),
    c_country varchar(20)
);
\dt
\d lpc.customer

Desinstalação do VexDB

Para desinstalar, utilize a opção --uninstall:

[vexdb@VexDB ~]$ cd /soft/vexdb-installer
[vexdb@VexDB vexdb-installer]$ ./vexdb_installer --uninstall

Após a desinstalação, remova manualmnete os diretórios de instalação e dados:

[vexdb@VexDB ~]$ rm -rf /vexdbdata/vexdb /vexdbdata/soft

Tags: vexdb vector-database AI database-installation CentOS

Publicado em 7-14 07:07