Modelagem de Dados Vetores
O tipo de dados subjacente usado para armazenar dados vetoriais pode variar por banco de dados. O Oracle GoldenGate pode ser usado para replicar dados vetoriais de muitos bancos de dados diferentes, como PostgreSQL e MySQL Heatwave.
Para o Oracle AI Database, é recomendável usar o tipo de dados VECTOR, que armazena incorporações em um formato nativo semanticamente significativo, permitindo indexação vetorial eficiente, pesquisa de similaridade e operações de consulta com foco em IA. O tipo de dados VECTOR do Oracle tem vários formatos de armazenamento, incluindo FLOAT32, um padrão para a maioria dos modelos, e FLOAT64, que permite maior precisão, INT8, que reduz o armazenamento usado pelos dados vetoriais, e BINARY, que usa arrays UINT8 para reduzir o armazenamento e otimizar os cálculos de distância. Os vetores também podem ser DENSE, que armazena todas as dimensões, ou SPARSE, que é um armazenamento otimizado para vetores com muitos valores zero.
-- Simple declaration (flexible dimensions)
CREATE TABLE my_vectors ( id NUMBER, embedding VECTOR);
-- Defined declaration (768 dimensions, 8-bit integers)
CREATE TABLE optimized_vectors ( id NUMBER, embedding VECTOR(768, INT8)
);
O GoldenGate trata os tipos de dados vetoriais como dados LOB porque os vetores geralmente são maiores que a limitação na linha de 4kb do GoldenGate 26ai. Isso significa que você não pode executar transformação ou filtragem usando GoldenGate funções de conversão de coluna padrão. Portanto, se os dados já estiverem em formato vetorial, os tipos de dados de origem e destino devem ser compatíveis, o que implica que o armazenamento subjacente e os valores numéricos devem ser os mesmos.
Consulte os detalhes na seção Considerações de Replicação de Vetor entre Plataformas.