25 lines
1.4 KiB
SQL
25 lines
1.4 KiB
SQL
CREATE TABLE `rag_snippet` (
|
||
`rag_item_id` bigint NOT NULL COMMENT 'RAG item id (stable hash of table/version/snippet_id)',
|
||
`workspace_id` bigint NOT NULL COMMENT 'RAG workspace scope',
|
||
`table_id` bigint NOT NULL COMMENT '来源表ID',
|
||
`version_ts` bigint NOT NULL COMMENT '表版本号',
|
||
`action_result_id` bigint NOT NULL COMMENT '来源 action_results 主键ID(snippet_alias 或 snippet 行)',
|
||
`snippet_id` varchar(255) COLLATE utf8mb4_bin NOT NULL COMMENT '原始 snippet id',
|
||
`rag_text` text COLLATE utf8mb4_bin NOT NULL COMMENT '用于向量化的拼接文本',
|
||
`merged_json` json NOT NULL COMMENT '合并后的 snippet 对象',
|
||
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '写入时间,用于分区',
|
||
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
PRIMARY KEY (`rag_item_id`,`created_at`),
|
||
KEY `idx_action_result` (`action_result_id`),
|
||
KEY `idx_workspace` (`workspace_id`),
|
||
KEY `idx_table_version` (`table_id`,`version_ts`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin
|
||
PARTITION BY RANGE COLUMNS (`created_at`) (
|
||
PARTITION p202401 VALUES LESS THAN ('2024-02-01'),
|
||
PARTITION p202402 VALUES LESS THAN ('2024-03-01'),
|
||
PARTITION p202403 VALUES LESS THAN ('2024-04-01'),
|
||
PARTITION p202404 VALUES LESS THAN ('2024-05-01'),
|
||
PARTITION p202405 VALUES LESS THAN ('2024-06-01'),
|
||
PARTITION p_future VALUES LESS THAN (MAXVALUE)
|
||
) COMMENT='RAG snippet 索引缓存';
|