elasticsearch (dsl)

正排索引 和 倒排索引

正排索引:通过id ,查询content

倒排索引:通过content,查询到符合的 ids

eg:

通过《静夜思》,找到整片文章。

通过"明月",找到《静夜思》 《望月怀古》《关山月》等

get 查询

索引的基本信息:

GET your_index/_mapping //跟看mysql表字段差不多

GET your_index/_alias //查看索引的别名

GET /_cat/health?v //查看集群状态

GET _cat/indices // 查看所有index

GET _cat/shards/your_index //查看指定索引的分片数,每个分片有主(p)副(r)分片

查询索引内容:

match_all:

复制代码
GET /you_index/_search
{
  "query":{
    "match_all": {}
}

bool

bool查询是一个非常强大且常用的复合查询,它允许你组合多个查询条件。bool 查询的核心概念包括以下四种子句:

  1. must : 子句必须匹配文档。类似于 SQL 中的 AND 操作符。
  2. filter : 子句必须匹配文档,但不影响评分。也就是说,它只过滤文档,但不参与评分计算。
  3. should : 子句可以匹配文档。如果在一个 bool 查询中包含了多个 should 子句,则至少一个 should 子句必须匹配文档。类似于 SQL 中的 OR 操作符。
  4. must_not: 子句不能匹配文档。类似于 SQL 中的 NOT 操作符。

eg:

复制代码
GET you_index/_search
{
  "query": {
        "bool": {
            "must": [
                {
                    "bool": {
                        "should": [
                            {
                                "term": {
                                    "name": {
                                        "value": "林俊凯",
                                        "boost": 1
                                    }
                                }
                            },
                            {
                                "term": {
                                    "zh_name": {
                                        "value": "林俊凯",
                                        "boost": 1
                                    }
                                }
                            }
                        ]
                    }
                },
                {
                    "bool": {
                        "should": [
                            {
                                "range": {
                                    "fans_num": {
                                        "gte": "800"
                                    }
                                }
                            },
                            {
                                "terms": {
                                    "tag": [
                                        1010,
                                        1013
                                    ]
                                }
                            }
                        ]
                    }
                }
            ]
        }
    },
    "sort": {
        "_score": {
            "order": "desc"
        },
        "score": {
            "order": "desc"
        }
    }
}

range

复制代码
    "range": {
            "fans_num": {
              "gte": 800,
              "lte":126334
            }
     }

term

terms

prefix

multi_match

multi_phrase

analyzer

mla

standard

keyword

slop

3<80%

相关推荐
老蒋新思维16 分钟前
创客匠人:当知识IP遇上系统化AI,变现效率如何实现阶跃式突破?
大数据·网络·人工智能·网络协议·tcp/ip·重构·创客匠人
天远云服16 分钟前
Go 语言实战:手撸 AES-128-CBC 加密,对接天远金融风控 API
大数据·服务器·网络·golang
运维行者_41 分钟前
不同规模企业如何选 OPM?参考局域网管理软件与 cpu 温度监控适配指南
大数据·运维·服务器·网络·数据库·postgresql·snmp
是阿威啊1 小时前
【第六站】测试本地项目连接虚拟机上的大数据集群
大数据·linux·hive·hadoop·spark·yarn
老徐电商数据笔记1 小时前
技术复盘第八篇:从“数据烟囱”到“能力引擎”:中型电商数仓重构实战手册
大数据·数据仓库·重构·数据中台·用户画像·技术面试
数据皮皮侠AI1 小时前
数字经济政策工具变量数据(2008-2023)
大数据·数据库·人工智能·笔记·1024程序员节
雷焰财经1 小时前
iBox探索文化产业数字化路径:标准筑基 生态赋能
大数据·人工智能
zhongtianhulian1 小时前
陶瓷行业大会资讯:掌握行业动态,洞察未来趋势
大数据·人工智能·python
Francek Chen1 小时前
【IoTDB】时序数据库选型指南:国产自研技术如何应对数据洪流
大数据·数据库·时序数据库·iotdb
做cv的小昊1 小时前
【TJU】信息检索与分析课程笔记和练习(4)中文文献检索—CNKI
大数据·经验分享·笔记·学习·信息可视化·全文检索·信息检索