栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

elasticsearch索引原理(深入理解elasticsearch)

elasticsearch索引原理(深入理解elasticsearch)

系列文章

第一章 Elasticsearch 安装与启动 ~ 第一章第二章 Kibana 安装与浏览~第二章

文章目录

系列文章前言基本概念什么语言适合?总结


前言

提示:先看个ES 官方给的一个故事:

许多年前,一个刚结婚的名叫 Shay Banon 的失业开发者,跟着他的妻子去了伦敦,他的妻子在那里学习厨师。 在寻找一个赚钱的工作的时候,为了给他的妻子做一个食谱搜索引擎,他开始使用 Lucene 的一个早期版本。

直接使用 Lucene 是很难的,因此 Shay 开始做一个抽象层,Java 开发者使用它可以很简单的给他们的程序添加搜索功能。 他发布了他的第一个开源项目 Compass。

后来 Shay 获得了一份工作,主要是高性能,分布式环境下的内存数据网格。这个对于高性能,实时,分布式搜索引擎的需求尤为突出, 他决定重写 Compass,把它变为一个独立的服务并取名 Elasticsearch。

第一个公开版本在2010年2月发布,从此以后,Elasticsearch 已经成为了 Github 上最活跃的项目之一,他拥有超过300名 contributors(目前736名 contributors )。 一家公司已经开始围绕 Elasticsearch 提供商业服务,并开发新的特性,但是,Elasticsearch 将永远开源并对所有人可用。

据说,Shay 的妻子还在等着她的食谱搜索引擎…​

基本概念

1:首先你要知道ES 是面向文档的,Elasticsearch 使用 Javascript Object Notation(或者 JSON)作为文档的序列化格式,可参考下面这个格式:

{
    "email":      "john@smith.com",
    "first_name": "John",
    "last_name":  "Smith",
    "info": {
        "bio":         "Eco-warrior and defender of the weak",
        "age":         25,
        "interests": [ "dolphins", "whales" ]
    },
    "join_date": "2014/05/01"
}

2:关系型数据库和ES 的对比关系,这里是简单介绍后面都会把单独的拿出来详细讲,这一章是先熟悉概念

索引:简单说就是保存相关数据的地方文档:多数实体或对象可以被序列化为包含键值对的 JSON 对象字段:对应文档里面的单个字段

RDBMSES
table(表)index(索引)
row (一条记录)document(文档)
column (列)field(一个字段)
schema(创建语句)Mapping(字段和类型定义配置)
sql (查询语言)DSL(查询语言)

3:Es 本身就是一个分布式的,具有基本的可扩展和分布式

服务可用性,允许有节点停止服务数据可用性 - 部分节点丢失,不会丢失数据请求量提升/数据的不断增长的时候将数据分布到不同的节点上。

比如:

Node 1 和 Node 2 上各有一个分片被迁移到了新的 Node 3 节点,现在每个节点上都拥有2个分片,而不是之前的3个。 这表示每个节点的硬件资源(CPU, RAM, I/O)将被更少的分片所共享,每个分片的性能将会得到提升。

4:分片

Elasticsearch 是利用分片将数据分发到集群内各处的。分片是数据的容器,文档保存在分片内,分片又被分配到集群内的各个节点里。 当你的集群规模扩大或者缩小时, Elasticsearch 会自动的在各节点中迁移分片,使得数据仍然均匀分布在集群里.

一个的分片可配置多个副分片,相当于备份了,这就保证了数据可用性。

一个副本分片只是一个主分片的拷贝。副本分片作为硬件故障时保护数据不丢失的冗余备份
什么语言适合?

看到这个问题你可能会担心什么语言适合使用Es,对于这个问题Es已经考虑到了,提供了 RESTful API使得大部分语言都是支持的,下面是Es提供的客户端:

总结

这一节只是了解,有个大概印象。后面会介绍相关命令和详细操作。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/772060.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号