FT.CREATE blog-idx ON HASH PREFIX 1 blog:post:
SCHEMA
title TEXT WEIGHT 5.0
content TEXT
author TAG
created_date NUMERIC SORTABLE
views NUMERIC
7.2 自定义分隔符 TAG
FT.CREATE books-idx ON HASH PREFIX 1 book:details
SCHEMA
title TEXT
categories TAG SEPARATOR ";"
7.3 一字段两种索引
FT.CREATE multi-idx ON HASH PREFIX 1 inventory:
SCHEMA
sku AS sku_text TEXT
sku AS sku_tag TAG SORTABLE
7.4 JSON + JSONPath
FT.CREATE prodjs-idx ON JSON
SCHEMA
$.title AS title TEXT
$.categories AS categories TAG
$.emb_vector AS vector VECTOR FLAT 6 TYPE FLOAT32 DIM 384 DISTANCE_METRIC COSINE
8、Schema 设计最佳实践
按需建索引:无查询需求字段可 NOINDEX / 不纳入 Schema
权重分级:标题、关键词拉高 WEIGHT,正文保持默认 1
SORTABLE 谨慎:仅业务排序字段添加,否则内存倍增
TAG 代替 TEXT 精确过滤:城市/状态/ID 等离散值
FILTER 精准控制:索引前裁剪垃圾数据,减少写放大
统一前缀:PREFIX 限定业务 Key,避免误索引其他模块
9、Hash + JSON 双写部署方案
场景:电商商品——Hash 做高速计数/库存;JSON 做复杂检索/推荐。
9.1 索引策略
方案
描述
适用
双索引(推荐)
idx_hash ON HASH + idx_json ON JSON;用 FT.ALIASADD 做读写别名