当前位置: 首页 > wzjs >正文

网站制作参考其他网站会侵权吗广东全网推广

网站制作参考其他网站会侵权吗,广东全网推广,wordpress页面不要侧边栏,wordpress微信免签能用吗一、Schema 基础概念 索引(Index):对 Redis 中的 Hash 或 JSON 文档进行反向索引,以支持全文、标签、数值、地理、向量等多种查询模式。Schema:定义索引结构,包括哪些字段(fields/attributes&a…

一、Schema 基础概念

  • 索引(Index):对 Redis 中的 Hash 或 JSON 文档进行反向索引,以支持全文、标签、数值、地理、向量等多种查询模式。
  • Schema:定义索引结构,包括哪些字段(fields/attributes)、字段类型、是否可排序、权重(relevance weight)、过滤条件等。

在执行 FT.CREATE 时,必须指定:

  1. 数据类型ON HASHON JSON
  2. Key 前缀(可选):PREFIX N prefix1 prefix2 ...
  3. 过滤条件(可选):FILTER <Lua 表达式>
  4. Schema 定义:SCHEMA 后面紧跟一系列 <field> <type> [OPTIONS]

二、字段类型与常用选项

类型作用常用选项
TEXT全文检索(分词、模糊、权重)WEIGHT <float> 提升相关度;NOSTEM 关闭词干提取
TAG精确匹配/集合过滤(支持多值)SEPARATOR <char> 自定义分隔符;SORTABLE 支持排序
NUMERIC数值区间查询SORTABLE 支持 SORTBY
GEO地理坐标半径检索
VECTOR向量相似度搜索(KNN)FLAT/HNSW 算法选择;DIMDISTANCE_METRICTYPE

三、基本示例

假设我们要为博客文章建立全文和基础过滤索引,文章存储在 Hash 中,Key 前缀为 blog:post:

FT.CREATE idx:postON HASHPREFIX 1 blog:post:
SCHEMAtitle         TEXT    WEIGHT 5.0    # 标题文本,相关度提高 5 倍content       TEXT                  # 正文全文author        TAG                   # 作者标签created_date  NUMERIC SORTABLE      # 发布时间,支持排序views         NUMERIC               # 浏览量
  • WEIGHT 5.0:在全文检索时让 title 的权重比 content 更重要。
  • SORTABLE:允许通过 SORTBY created_date 来对结果按日期排序。

四、进阶示例

4.1 TAG 字段自定义分隔符

如果某个字段内含多项标签,并以特定分隔符(如 ;)分隔,可用 SEPARATOR

FT.CREATE books-idxON HASHPREFIX 1 book:details:
SCHEMAtitle       TEXTcategories  TAG SEPARATOR ";"   # categories 字段按 ';' 切分索引

分词后,每个子项会被独立索引,查询时可用 @categories:{fiction} 精确过滤。

4.2 单字段多重索引

有时需要同一个字段同时作为全文和标签分别处理,例如 sku

FT.CREATE sku-idxON HASHPREFIX 1 product:
SCHEMAsku_text  AS sku TEXT           # sku 作为全文,字段名 sku_textsku_tag   AS sku TAG SORTABLE   # sku 也作为标签,并支持排序

4.3 多前缀混合索引

如果你的数据分散在多个前缀下(如作者和书籍),也可一次性建同一个索引:

FT.CREATE author-books-idxON HASHPREFIX 2 author:details: book:details:
SCHEMAauthor_id   TAG SORTABLEauthor_ids  TAGtitle       TEXTname        TEXT

4.4 基于 FILTER 条件索引

只有当文档满足特定条件时才索引,可用 FILTER 传入 Lua 表达式:

# 仅索引作者名以 G 开头的作者
FT.CREATE g-authors-idxON HASHPREFIX 1 author:details:FILTER 'startswith(@name, "G")'
SCHEMAname  TEXT# 仅索引有 subtitle 字段且非空的书籍
FT.CREATE subtitled-books-idxON HASHPREFIX 1 book:details:FILTER '@subtitle != ""'
SCHEMAtitle     TEXTsubtitle  TEXT

执行机制:在 FT.CREATE 时,RediSearch 扫描已有文档并按 FILTER 条件异步索引;新写入或修改时同步生效。

4.5 JSONPath 表达式索引 JSON 文档

对于存储在 RedisJSON 的文档,可以直接用 JSONPath 建索引:

FT.CREATE json-idxON JSON
SCHEMA$.title       AS title       TEXT$.categories  AS categories  TAG
  • $.title:映射到属性 title,类型为 TEXT
  • $.categories:映射到多值数组 categories,用 TAG 索引

五、最佳实践

  1. 精准前缀:使用 PREFIX 限定 Key 空间,减少不必要的文档扫描。
  2. 权重与排序:对核心字段如标题、ID 增大 WEIGHT;需要排序的字段请加上 SORTABLE
  3. 合理分隔符:多值标签建议用 TAG SEPARATOR 指定分隔符,避免内置逗号冲突。
  4. 过滤与性能:对于海量数据,建议使用 FILTER 预筛,减少索引量级。
  5. JSON vs HASH:若文档结构复杂或深层嵌套,推荐 RedisJSON + JSONPath 索引;扁平结构可用 HASH。

通过本文,你已掌握 RediSearch 的 Schema 定义要领:从基础的字段类型、权重、排序选项,到分隔符、自字段重用、前缀混合、FILTER 条件再到 JSONPath 索引,让你能够根据业务场景灵活、高效地构建索引,打造性能与功能兼备的 Redis 搜索引擎。

http://www.dtcms.com/wzjs/335106.html

相关文章:

  • 网页设计与制作素材库镇江交叉口优化
  • 公司网站建设的方案福州百度开户多少钱
  • 工业设计灵感网站宁波seo外包推广软件
  • 上海 建筑哈尔滨怎样关键词优化
  • 济南网站建设制作优化网站的意思
  • 东莞做网站哪个公司最好app推广公司怎么对接业务
  • 建筑类专业做教育的网站公司网络营销推广软件
  • 网站建设一般收多少定金百度关键词排名代发
  • 私人建设手机网站哔哩哔哩b站在线看免费
  • 企业建设营销网站的基本步骤有哪些精准营销案例
  • 做网站服务器怎么用怎么买到精准客户的电话
  • 深圳网站建设服务商seo优化工具有哪些
  • 移动商城型网站开发亚马逊跨境电商个人开店
  • 深圳做生鲜食材的网站叫什么企业培训师资格证
  • 搜索网站显示网页无法访问微信朋友圈广告
  • 跨境交友网站建设b站推广渠道
  • 国家精品课程建设工作网站东莞做网站推广公司
  • 网站英文怎么写搜索引擎优化网站
  • 郑州新感觉会所网站哪里做的郑州网站制作推广公司
  • 文章网站模板哪个好网络营销自学网站
  • 做网站就找喇叭人b站刺激战场视频
  • 微信平台开发教程网站优化包括对什么优化
  • 做彩票网站的方案百度指数分析大数据
  • 做网站防护的网站什么是核心关键词
  • 怎样向网站上传照片宣传方式有哪些
  • 动态网站做优化水果店推广营销方案
  • 怎么申请一个域名网站排名优化方案
  • 军事信息化建设网站免费的b2b平台
  • 遵义网站开发哪家便宜宁德市区哪里好玩
  • 网站做百科西安网页设计