Elasticsearch

Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。

Elasticsearch核心概念

索引(index)

    索引(index):Elasticsearch存储数据的地方,可以理解成关系型数据库中的数据库概念,既索引库(Index): 若干个文档的合集.

类型(type)

   类型(type)

映射(mapping)

  映射(mapping):映射是定义一个文档以及其所包含的字段如何被存储和索引的方法。相当于关    系型数据库中的表结构

文档(document)

  文档(document):Elasticsearch中的最小数据单元,常以json格式显示,一个document相当于关系型数据库中的一行数据                          文档-----> mysql中的一行(一条记录)

倒排索引

   一个倒排索引由文档中所有不重复词的列表构成,对于其中每个词,对应一个包含它的文档id列     表

TF:单词在某个文档中出现的次数
POS:单词在文档中出现的位置

倒排索引的简单介绍

倒排索引由两个主要部分组成:

-关键词词典(Term dictionary):存储了所有文档中出现的关键词及其相关信息,如词频,位置等 

-倒排列表(Inverted List):存储了每个关键词对应的文档列表,包括文档ID、词频等信息 

倒排索引rootcause

倒排索引(Inverted Index)是信息检索系统中一种重要的数据结构,用于快速定位包含某个关键词的文档。它通过将文档中的每个关键词映射到包含该关键词的文档列表,从而实现了关键词到文档的倒排映射,因此得名倒排索引;倒排索引:一种基于搜索关键词对文档进行索引的索引算法

field(域)

 field(域):相当于mysql中的一列(一个字段)

倒排索引补充

正排索引

在讲述倒排索引之前先介绍下正排索引。正排索引就是如下表形式:

文档id文档内容
1什么是正排索引
2什么是倒排索引
3正排索引和倒排索引

倒排索引

倒排索引就是对上表进行转换,最简单的倒排索引如下表所示:

单词文档ids
什么1,2
1,2
正排1,3
倒排2,3
索引1,2,3
3

词频(TF)和位置(POS)

上表所示的倒排索引之所以是最简单的,是因为这个索引系统只记载了哪些文档包含某个单词。实用的倒排索引还可以记载更多的信息,如下表第3列的词频位置

TF:单词在某个文档中出现的次数
POS:单词在文档中出现的位置

 以“索引”这个单词为例,“3:2:<2,7>”:表示在文档id是3的文档中出现2次,在文档中的位置分别是2和7。

倒排索引的简单介绍_倒叙排表pos代表什么

ES之索引操作(入门)

一、创建索引

1.向ES服务器发出 【PUT】 请求:http://127.0.0.1:9200/test-index-1,会创建一个名为test-index-1的索引,返回结果如下。

{

    "acknowledged": true,                     //已确认

    "shards_acknowledged": true,        //已确认碎片

    "index": "test-index-1"                     //索引名

}

2.如果再次创建相同的索引,.向ES服务器发出 【PUT】 请求:http://127.0.0.1:9200/test-index-1,会提示索引已经存在。

{

    "error": {

        "root_cause": [

            {

                "type": "resource_already_exists_exception",

                "reason": "index [test-index-1/P_G2PgE4Tkys4VPVsbOing] already exists",

                "index_uuid": "P_G2PgE4Tkys4VPVsbOing",

                "index": "test-index-1"

            }

        ],

        "type": "resource_already_exists_exception",

        "reason": "index [test-index-1/P_G2PgE4Tkys4VPVsbOing] already exists",

        "index_uuid": "P_G2PgE4Tkys4VPVsbOing",

        "index": "test-index-1"

    },

    "status": 400

}

 already exists已存在   reason原因    status状态;状况   cause原因   rootcause究其根源

二、索引查询

1.查询索引名为test-index-1的相关信息

【GET】 请求:http://127.0.0.1:9200/test-index-1

{

    "test-index-1": {

        "aliases": {},

        "mappings": {},

        "settings": {

            "index": {

                "creation_date": "1696646820838",

                "number_of_shards": "5",

                "number_of_replicas": "1",

                "uuid": "P_G2PgE4Tkys4VPVsbOing",

                "version": {

                    "created": "6080699"

                },

                "provided_name": "test-index-1"

            }

        }

    }

}

2.查询ES中所有索引的信息
【GET】请求:http://127.0.0.1:9200/_cat/indices?v

参数"v"表示展示详细信息

health  status   index          uuid                   pri rep docs.count docs.deleted store.size pri.store.size
yellow open     read-me        t68Vaxw2TZ6oqZ9A8V_8Qg   5   1          1            0      4.9kb           4.9kb
yellow open     test-index-3   hEvtpnkxQXmUxjMNDlJR9w   5   1          0            0      1.1kb           1.1kb
yellow open     test-index-2   F_oH8X_cQWCoCWHOGaPU3g   5   1          0            0      1.1kb           1.1kb
yellow open     test-index-1   P_G2PgE4Tkys4VPVsbOing   5   1          0            0      1.2kb           1.2kb

三、删除索引 

1.删除索引名为test-index-3的索引

【DELETE】请求:http://127.0.0.1:9200/test-index-3

{

    "acknowledged": true

}

2.再次执行会提示没有此索引

{

    "error": {

        "root_cause": [

            {

                "type": "index_not_found_exception",

                "reason": "no such index",

                "resource.type": "index_or_alias",

                "resource.id": "test-index-3",

                "index_uuid": "_na_",

                "index": "test-index-3"

            }

        ],

        "type": "index_not_found_exception",

        "reason": "no such index",

        "resource.type": "index_or_alias",

        "resource.id": "test-index-3",

        "index_uuid": "_na_",

        "index": "test-index-3"

    },

    "status": 404

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值