ES(Elasticsearch) 基本概念(一)

ElasticSearch原理+实战知识点 今天为大家带来流计算领域经常使用的组件 ElasticSearch,本文通过原理+实战操 教程带领大家快速学会 ElasticSearch 搜索引擎,以下内容全部经过实战操作,可 以根据文档进行学习~ 大纲如下: 1 ElasticSearch 概述 1.1 全文搜索引擎 小伙伴们经常使用 google 或者百度进行搜索内容,在输入框中输入关键字,这个时候,网站会将包含 关键字 的所有网页返回,大家有没有想过,为什么输入关键字就可以查到结果呢? 同时网站上返回的页面内容大多都是一些 非结构化 的文本数据, 阅读详情

Elasticsearch作为当前最流行的开源搜索和分析引擎,广泛应用于日志分析、全文搜索、业务智能等领域。Elasticsearch是一个基于 Apache Lucene 构建的分布式搜索和分析引擎、可扩展数据存储和矢量数据库。它针对生产级工作负载的速度和相关性进行了优化。使用 Elasticsearch 可以近乎实时地搜索、索引、存储和分析各种类型和大小的数据。Kibana是 Elasticsearch 的图形用户界面。它是一款强大的工具,可用于可视化和分析数据,以及管理和监控 Elastic Stack。本文将带你系统学习Elasticsearch的核心概念和基本用法。

一、Elasticsearch基础概念

在开始实际操作前,我们需要了解几个核心概念:

  1. 文档(Document)
    1. ES是面向文档的,文档是所有可搜索数据的最小单元
    2. 文档会被序列化成JSON格式存储
    3. 每个文档都有唯一ID,可自定义或自动生成
    4. 支持数组和嵌套结构
  2. 索引(Index)
    1. 相当于MySQL中的数据库
    2. 名称必须全部小写
    3. 包含mapping(定义字段类型)和setting(定义数据分布)
  3. 节点(Node)与分片(Shard)
    1. 节点:是 一个ES实例,本质是一个Java进程
      1. Master Eligible节点:参与选主,管理集群状态
      2. Data节点:存储数据
      3. Coordinating节点:接收客户端请求
      4. 节点的名称可以通过配置文件配置,或者在启动的时候使用-E node.name=ropledata指定,默认是随机分配的。建议咱们自己指定,因为节点名称对于管理目的很重要,咱们可以通过节点名称确定网络中的哪些服务器对应于ES集群中的哪些节点;
    2. 分片:将索引水平拆分为多个部分
      1. 主分片数在创建索引时指定,后续不能修改
      2. 副本分片提供高可用性,可动态调整数量
  4. 类型:就相当于MySql里的表,我们知道MySql里一个库下可以有很多表,最原始的时候ES也是这样,一个索引下可以有很多类型,但是从6.0版本开始,type已经被逐渐废弃,但是这时候一个索引仍然可以设置多个类型,一直到7.0版本开始,一个索引就只能创建一个类型了(_doc)。 Elasticsearch7 去掉 tpye 概念ES7.x 版本:URL 中的 type 参数为可选。 ES8.x 版本:不⽀持 URL 中的 type 参数

注意:虽然在实际存储上,文档存在于某个索引里,但是文档必须被赋予一个索引下的

二、什么是倒排索引?

倒排索引(Inverted Index)是搜索引擎最核心的数据结构,也是Elasticsearch实现高效全文搜索的基础。它与我们熟悉的传统"正排索引"形成鲜明对比:

  • 正排索引(正向索引):文档文档(Document)
    • ES是面向文档的,文档是所有可搜索数据的最小单元
    • 文档会被序列化成JSON格式存储
    • 每个文档都有唯一ID,可自定义或自动生成
    • 支持数组和嵌套结构
  • 索引(Index)
    • 相当于MySQL中的数据库
    • 名称必须全部小写
    • 包含mapping(定义字段类型)和setting(定义数据分布)
  • 节点(Node)与分片(Shard)
    • 节点:一个ES实例,本质是一个Java进程
      • Master Eligible节点:参与选主,管理集群状态
      • Data节点:存储数据
      • Coordinating节点:接收客户端请求
    • 分片:将索引水平拆分为多个部分
      • 主分片数在创建索引时指定,后续不能修改
      • 副本分片提供高可用性,可动态调整数量
  • → 包含的词
    • 类似书籍的目录,通过章节找内容
    • 如:文档1包含"大话"、"西游"
  • 倒排索引(反向索引):词 → 出现的文档
    • 类似书籍的索引页,通过关键词找章节
    • 如:"西游" → 文档1、文档2、文档3...

三、倒排索引的构建过程

3.1 原始数据示例

以电影片名为例:

文档ID

电影名称

1

大话西游

2

大话西游外传

3

解析大话西游

4

西游降魔外传

5

梦幻西游独家解析

3.2 分词处理

中文需要先进行分词(使用分词器将句子拆分为词语):

  • "大话西游" → ["大话", "西游"]
  • "大话西游外传" → ["大话", "西游", "外传"]
  • "解析大话西游" → ["解析", "大话", "西游"]
  • "西游降魔外传" → ["西游", "降魔", "外传"]
  • "梦幻西游独家解析" → ["梦幻", "西游", "独家", "解析"]

3.3 构建倒排列表

对分词结果进行反向记录:

词项

文档ID列表(Posting List)

其他信息(如词频、位置等)

西游

1,2,3,4,5

在1中出现1次,在2中出现1次...

大话

1,2,3

在1中出现1次,在2中出现1次...

外传

2,4

在2中出现1次,在4中出现1次...

解析

3,5

在3中出现1次,在5中出现1次...

降魔

4

在4中出现1次

梦幻

5

在5中出现1次

独家

5

在5中出现1次

三、倒排索引的搜索过程

3.1 搜索示例:查询"独家大话西游"

  1. 查询分词:
    1. "独家大话西游" → ["独家", "大话", "西游"]
  2. 查找倒排列表:
    1. "独家" → 文档5
    2. "大话" → 文档1,2,3
    3. "西游" → 文档1,2,3,4,5
  3. 合并结果:
    1. 文档1:包含"大话"、"西游"
    2. 文档2:包含"大话"、"西游"
    3. 文档3:包含"大话"、"西游"
    4. 文档5:包含"独家"、"西游"
    5. 文档4:只包含"西游"

相关性评分(简化版):

评分公式:

得分 = 命中词数 / 文档总词数

    1. 文档1:命中2词("大话"、"西游"),总词数2 → 2/2=1.0

    2. 文档2:命中2词,总词数3 → 2/3≈0.67

    3. 文档3:命中2词,总词数3 → 2/3≈0.67

    4. 文档5:命中2词("独家"、"西游"),总词数4 → 2/4=0.5

    5. 文档4:命中1词("西游"),总词数3 → 1/3≈0.33

结果排序:

1. 大话西游 (1.0)
2. 大话西游外传 (0.67)
3. 解析大话西游 (0.67)
4. 梦幻西游独家解析 (0.5)
5. 西游降魔外传 (0.33)

基础操作

索引管理 

// 创建索引
PUT /ropledata
{
    "settings": {
        "number_of_shards": "2",
        "number_of_replicas": "3"
    }
}


// 删除索引
DELETE /ropledata


// 修改副本数
PUT ropledata/_settings
{
    "number_of_replicas": "2"
}

什么是映射?

映射(Mapping)是ElasticSearch中用于定义文档及其包含字段如何存储和索引的机制。它相当于关系型数据库中的表结构定义,决定了:

  1. 哪些字段应该被当作全文检索字段
  2. 哪些字段包含数字、日期或地理位置信息
  3. 日期值的格式
  4. 自定义规则来控制动态添加字段的映射

映射的核心作用

  1. 字段类型定义:指定每个字段的数据类型(如text、keyword、integer等)
  2. 索引控制:决定字段是否被索引(可搜索)
  3. 分析器配置:指定文本字段使用的分词器
  4. 格式设置:如日期字段的格式
  5. 多字段支持:一个字段可以有不同的索引方式

映射类型

1. 显式映射

单级属性映射 

用户明确定义字段的映射规则:

PUT /my-index
{
  "mappings": {
    "properties": {
      "age":    { "type": "integer" },  
      "email":  { "type": "keyword" },
      "name":   { "type": "text" }
    }
  }
}

多级属性映射 

PUT /my-index
{
  "mappings": {
    "properties": {
      "age": { "type": "integer" },
      "email": { "type": "keyword" },
      "name": { "type": "text" },
      "address": {
        "type": "nested",
        "properties": {
          "street": { "type": "text" },
          "city": { "type": "keyword" },
          "zipcode": { "type": "keyword" },
          "coordinates": {
            "type": "object",
            "properties": {
              "lat": { "type": "float" },
              "lon": { "type": "float" }
            }
          }
        }
      },
      "skills": {
        "type": "nested",
        "properties": {
          "name": { "type": "keyword" },
          "level": { "type": "integer" },
          "certifications": {
            "type": "nested",
            "properties": {
              "name": { "type": "text" },
              "year": { "type": "short" }
            }
          }
        }
      },
      "employment_history": {
        "type": "nested",
        "properties": {
          "company": { "type": "keyword" },
          "position": { "type": "text" },
          "duration_months": { "type": "integer" }
        }
      }
    }
  }
}

这个映射定义包含:

  1. 基本字段:age(integer), email(keyword), name(text)
  2. 嵌套地址对象:包含街道(text)、城市(keyword)、邮编(keyword)和坐标对象
  3. 嵌套技能数组:包含技能名(keyword)、等级(integer)和嵌套的认证数组
  4. 嵌套工作经历数组:包含公司(keyword)、职位(text)和持续时间(integer)

所有嵌套关系都使用 "type": "nested" 来确保数组中的对象被独立索引和查询。

2. 动态映射

当索引新文档时,ES会自动检测并添加新字段:

PUT /my-index/_doc/1
{
  "age": 25,
  "email": "user@example.com",
  "name": "John Doe"
}

ES会自动推断:

age → long

email → keyword

name → text

常用字段类型

类型

说明

text

全文检索字段,会被分词

keyword

精确值字段,不分析,用于过滤、排序和聚合

long/integer

长整型/整型数值

double/float

双精度/单精度浮点数

date

日期类型,可指定格式

boolean

布尔值

object

JSON对象

nested

嵌套对象,保持数组中对象的独立性

geo_point

经纬度坐标

映射操作示例

查看映射

GET /my-index/_mapping

添加新字段映射

PUT /my-index/_mapping
{
  "properties": {
    "employee-id": {
      "type": "keyword",
      "index": false
    }
  }
}

更新映射注意事项

重要:已存在字段的映射类型不能直接修改,必须:

  1. 创建新索引并定义新映射
  2. 使用_reindex API迁移数据
POST _reindex
{
  "source": { "index": "old-index" },
  "dest": { "index": "new-index" }
}

映射参数详解

常用参数

  1. index:是否索引该字段(true/false)
  2. analyzer:指定文本分析器
  3. search_analyzer:指定搜索时分析器
  4. format:日期格式(如"yyyy-MM-dd")
  5. copy_to:将字段值复制到目标字段
  6. fields:多字段特性,允许一个字段有多种索引方式

多字段示例

{
  "mappings": {
    "properties": {
      "city": {
        "type": "text",
        "fields": {
          "raw": { 
            "type": "keyword"
          }
        }
      }
    }
  }
}

这样city可以用于全文搜索,city.raw可用于精确匹配和聚合。

索引数据

  1. 预先定义映射:生产环境建议预先定义映射,避免动态映射的不确定性
  2. 合理使用keyword:不需要分词的字段应设为keyword类型
  3. 控制动态映射:可通过dynamic参数控制(true/false/strict)
  4. 避免频繁修改:映射特别是字段类型不宜频繁变更
  5. 使用别名:便于重建索引时无缝切换映射是ElasticSearch高效工作的基础,合理的映射设计能显著提升搜索性能和结果的准确性。

一、数据插入操作

1. 不指定文档ID插入

Elasticsearch 会自动生成唯一ID

POST /ropledata/_doc/
{
  "id":1,
  "name":"且听_风吟",
  "page":"https://ropledata.blog.youkuaiyun.com",
  "say":"欢迎点赞,收藏,关注,一起学习"
}

2. 指定文档ID插入

适用于需要自定义ID的场景

POST /ropledata/_doc/101
{
  "id":1,
  "name":"且听_风吟",
  "page":"https://ropledata.blog.youkuaiyun.com",
  "say":"欢迎点赞,收藏,关注,一起学习"
}

二、数据删除操作

删除指定ID的文档:

DELETE /ropledata/_doc/101

三、数据更新操作

1. 全局更新(覆盖更新)

会完全替换原有文档内容

PUT /ropledata/_doc/101
{
  "id":1,
  "name":"且听_风吟",
  "page":"https://ropledata.blog.youkuaiyun.com",
  "say":"再次欢迎点赞,收藏,关注,一起学习"
}

2. 局部更新

只更新指定字段,性能优于全局更新

POST /ropledata/_update/101
{
  "doc": {
    "say":"奥力给"
  }
}

四、数据查询操作

1. 基础查询(默认返回10条)

GET /ropledata/_search

2. 带条件的全局查询

POST /ropledata/_search
{
  "query": {
    "match_all": {}
  },
  "sort": [
    {
      "id": {
        "order": "asc"
      }
    }
  ]
}

五、索引重建操作

POST _reindex
{
  "source": { "index": "twitter" },
  "dest": { "index": "new_twitter" }
}

关键知识点总结

  1. 插入数据:
    1. 不指定ID时ES自动生成
    2. 指定ID适用于业务关联场景
  2. 更新机制:
    1. ES文档不可变,更新实质是新版本覆盖旧版本
    2. 局部更新(_update)比全局更新(PUT)性能更好
  3. 查询特点:
    1. 默认返回10条结果
    2. 可通过sort参数控制排序
    3. match_all查询全部文档
  4. 版本兼容性:
    1. 本文示例适用于Elasticsearch 7.x版本
    2. 6.x及以下版本语法可能有差异
  5. 性能建议:
    1. 频繁更新的字段考虑单独索引
    2. 大文档更新优先使用局部更新

提示:在实际开发中,建议结合业务场景选择合适的操作方式,批量操作(Bulk API)能显著提高大批量数据处理的效率。

ElasticSearch特点|B+Tree|lucene倒排索引结构|lucene与elasticsearch的关系|基本概念 ElasticSearch特点 1. 天然分片,天然集群: es 把数据分成多个shard,下图中的P0-P2,多个shard可以组成一份完整的数据,这些shard可以分布在集群中的各个机器节点中。随着数据的不断增加,集群可以增加多个分片,把多个分片放到多个机子上,已达到负载均衡,横向扩展。 这种集群分片的机制造就了elasticsearch强大的数据容量及运算扩展性。 在实际运算过程中,每个查询任务提交到某一个节点,该节点必须负责将数据进行整理汇聚,再返回给客户端,也就是一个简单的节点上进行Map计算, 阅读详情

相关推荐

深入理解Elasticsearch

1.3.1、索引(Index)(数据库)是一个包含了相关文档数据的集合,存数据的地方。索引可以包含多个类型(Type),每个类型代表一个类似数据库中的表。每个索引都有一个对应的Mapping。主要用于定义文档中的字段类型和属性,以及 索引文档时自动检测字段类型并创建Mapping。

RuiKe的博客 5701

ElasticSearch详解

在 flush 过程中,内存中的缓冲将被清除,内容被写入一个新的 Segment,Segment 的 fsync 将创建一个新的提交点( Commit Point),并将内容刷新到磁盘,旧的translog将被删除并开始一个新的translog,flush 触发的时机是定时触发(默认30分钟)或者 translog 变得太大(默认512M)时。取决于你的文档的大小,分片的数量和你使用的硬件,给 10,000 到 50,000 的结果文档深分页( 1,000 到 5,000 页)是完全可行的。

7B_Geek的博客 3万+

Elasticsearch实战系列(一)---ES简介

1.什么是搜索引擎,能解决什么样的问题? 快速的返回搜索结果或者相应的统计信息,即解决快速搜索的问题 引擎可以快速的返回查询结果,而且这些结果都是相关的 搜索引擎还能提供辅助搜索的功能,这些辅助功能包括识别错误输入,给出自动提示,并对结果进行分类 2.什么是ES? ES是构建在Lucence基础之上的开源分布式搜素引擎,Lucene是个高性能的搜索引擎包,默认情况下将所有的数据全部进行索...

吴小豪的博客 507

Elasticsearch(三)——Es搜索(简单使用、全文查询、复合查询)、地理位置查询、特殊查询、聚合操作、桶聚合、管道聚合

Elasticsearch(三)——Es搜索(简单使用、全文查询、复合查询)、地理位置查询、特殊查询、聚合操作、桶聚合、管道聚合

qq_41824825的博客 3万+

Elasticsearch入门技术:从零开始掌握全文搜索引擎

A:是一个开源的分布式全文搜索引擎,能够快速、准确地进行全文搜索和分析。想象一下,你有一个巨大的文件夹,里面装满了各种文档,你想找到某个特定的信息,传统的方法可能需要手动逐个打开文件查找。而Elasticsearch就像是一个超级智能助手,能够在瞬间帮你找到所需的内容。好了,今天的分享就到这里啦!希望大家学到了一些有用的知识。记住,学习Elasticsearch的过程就像搭建一座桥梁一样,需要扎实的基础和不断的实践才能建得更加稳固。希望你喜欢这篇推送,有任何建议或者想要了解其他话题,都可以随时告诉我哦~

Kenneth55的专栏 1265

ElasticSearch系列一:ElasticSearch基本概念

es基础概念

qq_40595922的博客 879

ES入门(一)Elasticsearch简介:基本概念

ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎。

u011485472的博客 2520

126.ElasticSearch(一):windows版本:es、head、kibana下载和安装,es基本概念,ik分词器的设置

es、head、kibana下载和安装,es基本概念,ik分词器的设置

鹏哥哥Aaa 333

elasticsearch学习一之es中的基本概念

一 elasticsearch基本概念 1.1 近实时(nrt): (1)elasticsearch从写入数据到可以搜索到数据需要1秒. (2)基于es的查询和搜索速度达到秒级. 1.2 集群(cluster): 一个集群一般有多个节.一个es集群默认名为elaticsearch. 1.3 节点 (node) 集群中的一个节点,节点也有一个名称(默认是随机分配的),节点名称很重要(在执行运维管理...

a846325800的博客 423

R语言的下载、安装及环境配置(Rstudio&VSCode)

R for Windows是一个免费的用于统计计算和统计制图的优秀工具,是R语言开发工具。它拥有数据存储和处理系统、数组运算工具(其向量、矩阵运算方面功能尤其强大)、完整连贯的统计分析工具、优秀的统计制图等功能。提供的图形界面,可以在其中访问控制台、创建脚本或安装其他软件包。

zegeai的博客 2万+

C++中const和指针*的组合问题

今天在复习> 章节7.3的时候想到以前做的一个题,const和指针运算符*的若干种组合的合法性和意义问题,有点混淆,所以写了一个测试代码来验证一下,简单明了,一目了然。如果有什么遗漏的话欢迎指出。 首先是在Ubuntu14.04.1下用gcc 4.8.4编译运行的结果,编译器报错信息都附加在对应语句后面的注释里 /* * Note : Test for the combinations of

theColdOne的专栏 1081

NOSQL -- ES

ES的全称(Elasticsearch)ES是一个分布式全文搜索的引擎也就是我们平常在购物, 搜索东西的时候常用的, 就是一个ES的类型, 分布式全文搜索引擎。

2303_79546217的博客 875

ODBC 连接数据库 SQL server 2008

1、打开【控制面板】-> 【系统和安全】 -> 【管理工具】-> 【数据源(ODBC)】  2、双击【数据源(ODBC)】-> 选中【系统DSN】 3、单击【添加】,会弹出如下对话框,选中【SQL server】->【完成】 4、弹出如下对话框,在【名称】中填入数据源名称 例如:我命名为: LocalServer,在【服务器】中填入计算机名或者IP地址,我连接

Christine的专栏 8516

ElasticSearch的相关知识

1.ElasticSearch的简介 ElasticSearch:智能搜索,分布式的搜索引擎 是ELK的一个组成,ELK代表的是:E就是ElasticSearch,L就是Logstach,K就是kibana 什么是搜索? 1)百度,谷歌,必应。我们可以通过他们去搜索我们需要的东西。但是我们的搜索不只是包含这些,还有京东站内搜索啊。 2)互联网的搜索:电商网站。招聘网站。新闻...

heima201907的博客 180

MIPI CSI-2数据加扰技术解析:LFSR实现与多通道同步策略

本文深入解析了MIPI CSI-2协议中的数据加扰技术,该技术通过线性反馈移位寄存器(LFSR)对图像数据进行随机化处理,旨在有效降低高速传输中的电磁干扰。文章详细阐述了LFSR的工作原理、D-PHY与C-PHY物理层不同的初始化与同步策略,并探讨了多通道同步的实现方法,为高速接口的EMC设计与调试提供了实践指导。

weixin_29207149的博客 384

由浅入深理解Latent Diffusion/Stable Diffusion(5):利用预训练模型快速开始自己的科研任务

从零开始训练一个stable diffusion大概需要16万美元和1个月的时间,这对于一般的科研工作者来说难以承受,所以如何利用预训练模型快速开始自己的科研训练是一个非常有价值的问题。这篇博客将演示如何利用预训练模型快速开始自己的科研任务,希望对大家有所帮助!

沉迷单车的追风少年 3369

搜索引擎如何选择?Elasticsearch Or Solr

​ The Elastic Stack, 包括 Elasticsearch、Kibana、Beats 和 Logstash(也称为 ELK Stack)。能够安全可靠地获取任何来源、任何格式的数据,然后实时地对数据进行搜索、分析和可视化。Elaticsearch,简称为ES, ES是一个开源的高扩展的分布式全文搜索引擎,是整个Elastic Stack技术栈的核心。它可以近乎实时的存储、检索数据;本身扩展性很好,可以扩展到上百台服务器,处理PB级别的数据。

Java全能学习+面试指南 548

YOLOv11改进,YOLOv11添加DCNv4可变性卷积(windows系统成功编译),二次创新C3k2结构,全网最详细教程

引入了可变形卷积 v4 (DCNv4),这是一种为广泛视觉应用设计的高效且有效的操作算子。DCNv4通过两项关键增强解决了其前身DCNv3的局限性:1. 移除空间聚合中的softmax归一化,以增强其动态特性和表达能力;2. 优化内存访问以最小化冗余操作,从而加速计算。这些改进使得DCNv4相比DCNv3显著加快了收敛速度,并且处理速度大幅提升,前向传播速度超过三倍。DCNv4在多个任务中表现出色,包括图像分类、实例和语义分割,特别是在图像生成方面表现突出。

在职AI算法工程师,擅长计算机视觉,YOLO目标检测、分割等,擅长web、pyqt界面可视化,好内容持续更新中,来这里跟大家一起学习,共同进步 2665

Elasticsearch 入门教学:从零开始掌握分布式搜索引擎

Elasticsearch 是一个分布式的 RESTful 搜索引擎,能够快速地存储、搜索和分析大量数据。Elasticsearch 是一个功能强大的搜索引擎,适用于各种数据搜索和分析场景。

格子先生Lab的博客 1672

SAP Fiori 会话超时全解析:从 Launchpad 到 Identity Authentication 的统一策略

SAP Fiori会话超时机制解析与配置策略 本文深入探讨SAP Fiori项目中的会话超时机制,分析其对系统安全和用户体验的双重影响。文章系统拆解了SAP Fiori Launchpad与SAP Cloud Identity Services之间的会话超时工作原理,重点介绍了两种超时机制:服务器驱动的超时(通过SESSION_TIMEOUT_STOP_DATA_REFRESH参数控制)和UI驱动的超时(通过SESSION_TIMEOUT_INTERVAL_IN_MINUTES参数控制)。文中结合制造业产线

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 213

PSINS工具箱学习(四)捷联惯导更新算法

原始 Markdown文档、Visio流程图、XMind思维导图见:https://github.com/LiZhengXiao99/Navigation-Learning。

实践出真理,接毕设/课设项目开发指导 607

ES(一):ES基本概念和原理简单介绍

Elasticsearch概述: ES是基于Lucene的搜索服务器,它提供了一个分布式多用户能力的全问搜索引擎,且ES支持RestFulweb风格的url访问。ES是基于Java开发的开源搜索引擎,设计用于云计算,能够达到实时搜索,稳定、可靠、快速。此外,ES还提供了数据聚合分析功能,但在数据分析方面,es的时效性不是很理想,在企业应用中一般还是用于搜索。ES自2016年起已经超过Solr等,...

zhoushimiao1990的博客 3万+

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

微服务框架 SpringCloud微服务架构 17 初识ES 17.1 什么是elasticsearch

微服务框架 SpringCloud微服务架构 17 初识ES 17.1 什么是elasticsearch

代码改变世界 256

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

ES(一)ES基本概念

ES简介 ES是基于Lucene分布式搜索服务,可以存储整个对象或文档 分布式的实时文件存储,每个字段都被索引并可被搜索 分布式的实时分析搜索引擎 可以扩展到上百台服务器,处理PB级结构化或非结构化数据 与传统数据库的对比: Relational DB -> Databases -> Tables -> Rows -> Columns Elasticsearch ->...

upupfeng的博客 4338

ES一| es的一些基本概念及入门操作

免责声明:本专栏的内容都是在读了《Elasticsearch权威指南( 中文版)》书籍后整理的读后感及部分内容笔记,具体内容请查阅原著内容。 前言: 为了搜索, 你懂的Elasticsearch是一个基于Apache Lucene(TM)的开源搜索引擎。 无论在开源还是专有领域,Lucene可以被认为是迄今为止最先进、 性能最好的、 功能最全的搜索引擎库。 但是, Lucene只是一个库。 想要使用它, 你必须使用Java来作为开发语言并将其直接集成到你的应用中, 更糟糕的是, Lucene非常复.

KevinBrain的博客 521
上一篇: Mybatis解决以某个字段存在,批量更新,不存在批量插入(高效)(一)
下一篇: RabbitMQ 交换机不神秘!类比快递分拣中心,5 分钟搞懂消息路由规则
梵高的代码色盘
博客等级 码龄5年 188粉丝 38原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值