1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-08 11:22:35 +03:00

mysqldump and mariadb-backup tests of vector indexes

This commit is contained in:
Sergei Golubchik
2024-10-04 14:31:49 +02:00
parent eb4ab2ce8f
commit 855aefb7b5
4 changed files with 172 additions and 0 deletions

View File

@@ -0,0 +1,51 @@
create table t1 (id int auto_increment primary key, v blob not null, vector index (v)) engine=innodb;
insert t1 (v) values (Vec_Fromtext('[0.418,0.809,0.823,0.598,0.033]')),
(Vec_Fromtext('[0.687,0.789,0.496,0.574,0.917]')),
(Vec_Fromtext('[0.333,0.962,0.467,0.448,0.475]')),
(Vec_Fromtext('[0.822,0.185,0.683,0.211,0.554]')),
(Vec_Fromtext('[0.437,0.167,0.077,0.428,0.241]')),
(Vec_Fromtext('[0.769,0.926,0.803,0.015,0.589]')),
(Vec_Fromtext('[0.493,0.641,0.761,0.942,0.425]')),
(Vec_Fromtext('[0.924,0.275,0.054,0.073,0.136]')),
(Vec_Fromtext('[0.186,0.696,0.035,0.668,0.847]')),
(Vec_Fromtext('[0.415,0.609,0.426,0.988,0.475]'));
select id from t1 order by vec_distance_euclidean(v, Vec_FromText('[1,0,0,0,0]')) limit 3;
id
8
5
4
drop table t1;
db.opt
t1#i#01.ibd
t1.frm
t1.ibd
# shutdown server
# remove datadir
# xtrabackup move back
# restart
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`v` blob NOT NULL,
PRIMARY KEY (`id`),
VECTOR KEY `v` (`v`)
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci
select id, Vec_ToText(v) from t1;
id Vec_ToText(v)
1 [0.418000,0.809000,0.823000,0.598000,0.033000]
2 [0.687000,0.789000,0.496000,0.574000,0.917000]
3 [0.333000,0.962000,0.467000,0.448000,0.475000]
4 [0.822000,0.185000,0.683000,0.211000,0.554000]
5 [0.437000,0.167000,0.077000,0.428000,0.241000]
6 [0.769000,0.926000,0.803000,0.015000,0.589000]
7 [0.493000,0.641000,0.761000,0.942000,0.425000]
8 [0.924000,0.275000,0.054000,0.073000,0.136000]
9 [0.186000,0.696000,0.035000,0.668000,0.847000]
10 [0.415000,0.609000,0.426000,0.988000,0.475000]
select id from t1 order by vec_distance_euclidean(v, Vec_FromText('[1,0,0,0,0]')) limit 3;
id
8
5
4
drop table t1;