ElasticSearch 学习笔记 20191215

基础概念

NRT (Near Realtime)

ES的查询不是实时的,进索引后再查出,延迟不会超过1秒

集群 Cluster

Cluster 是 Node 的集合,Cluster的名字唯一

节点 Node

节点存储数据,参与Index&Search运算

索引 Index

索引是文档的集合,索引名称只能是小写的

文档 Document

文档是信息的基本单元,被Index的信息,就是文档;文档的格式只能是JSON;

分片(Shards)& 副本(Replicas)

一个索引里的数据量可能有10亿条,占用1T的存储空间,如果只有1个Node可能运算、存储能力都跟不上;解决办法是,分割1个Index到N个Shards,每个Shard有Index的完整功能,可以被分配到任意1个Node上去,这样便于分割或横向扩展ES集群;通过这种分布式&并发,能够通过增加Node提高性能及吞吐量;
副本的能力:1)提升高可用能力;2)跟分片类似,也能提升并发能力、吞吐量;

总结

每个Index可分割为多个Shard,每个Index可以有0个副本或多个副本;拥有副本的Index,会拥有两类分片:Primary Shard 、Replica Shard,副本数量可随时动态的调整;

_shrink and _split,这俩接口可给已存在的Index增加或减少Shard数量;

每个分片的最大数量是:2,147,483,519

安装

待补充

查看索引基本信息

ES提供了1个强大的 REST API 给我们提供了跟ES Cluster交互的通道,主要功能如下:

  • 查看 集群 节点 索引 的健康状况、数据;
  • 管理 集群 节点 索引数据 元数据;
  • 索引的 CURD 操作、查询操作;
  • 执行高级查询操作:paging、sorting、filtering、scripting、aggregations等;

查看Cluster信息

GET /_cat/health?v

epoch      timestamp cluster                 status node.total node.data shards pri relo init unassign pending_tasks max_task_wait_time active_shards_percent
1576394406 07:20:06  elasticsearch green          11         8    336 168    0    0        0             0                  -                100.0%

查看Node信息

GET /_cat/nodes?v

ip          heap.percent ram.percent cpu load_1m load_5m load_15m node.role master name
172.17.3.14           44          95  20    5.78    5.08     4.75 di        -      5xa5kOK
172.17.3.10           69          95  28    6.54    5.09     4.66 di        -      4dnxamP
172.17.3.15           74          95  22    4.83    4.87     4.52 di        -      Bs4CG9y
172.17.3.20            2          75   0    0.00    0.01     0.05 mi        -      rzZXZ5T
172.17.3.9            57          95  20    5.40    4.95     4.51 di        -      Hh9uMaU
172.17.3.18            3          75   0    0.00    0.04     0.06 mi        *      HFYmHzu
172.17.3.16           49          95  28    5.49    4.52     4.32 di        -      EaECxZP
172.17.3.19            1          75   0    0.00    0.01     0.05 mi        -      -vvjApo
172.17.3.13           56          95  23    6.22    5.17     4.59 di        -      HuQhdN6
172.17.3.11           50          95  21    6.26    5.44     5.01 di        -      iJDUeJ7
172.17.3.12           44          95  33    5.33    5.05     5.02 di        -      aDS9FZm

查看索引信息

GET /_cat/indices?v

health status index                      uuid                   pri rep docs.count docs.deleted store.size pri.store.size
green  open   abnormal-92        -ASolaunSieNjRuJOfp8-Q   1   0     138684           26    593.8mb        593.8mb
green  open   ac-apply-batch-91  R6HR3kX1QNK8PfvnuI6AFg   1   1     473153            0    556.9mb        278.4mb
green  open   ac-apply-daily-91  bJbruUXmSxmBPxk3B1PywQ   1   1     292742            0    297.9mb        148.9mb
green  open   ac-apply-order-91  mNOtjL28Tiin4vdKxrP_QA   8   1   14093331            0     15.6gb          7.8gb
green  open   accounts-91        8DxWjlImQAOFFZskWINimQ   8   0    7451614            0     18.9gb         18.9gb
green  open   amap-zone-90       nw91DRxoRY6okv2queOmLg   1   0          0            0       261b           261b
green  open   approval-90        hmmn4TlvQiGuW2x5-HdUaA   1   0          0            0       261b           261b
green  open   batch-96           rtST_ROXTNKv5CHgvbiJnQ   8   0   20728026            0     92.1gb         92.1gb
green  open   batch-account-91   oH-lw8NURlmkTyuHchxFIQ   1   0    5003832            0      3.1gb          3.1gb
green  open   batch-invoice-91   EUEnLoyQRxGqGWTJ2y7Yog   1   0          0            0       261b           261b
green  open   co-dy-batch-90     TFGohd0cQhqJeXde14BGjQ   1   0          0            0       261b           261b
green  open   co-dy-ticket-90    iDletuK-QWqR5sCq1_Bzrw   1   0          0            0       261b           261b
green  open   company-info-94    6kt2KEPJQOWwOSwmYNb3Ew   1   0          0            0       261b           261b
green  open   customer-95        59wvGQ8CSTyupNlJVAGlQg   8   0          0            0        2kb            2kb
green  open   customer-proj-90   AxGfRZDoTNK3ZDA_lah4Gg   1   0       1140            0    659.7kb        659.7kb
green  open   driver-91          V9B8s6bqTMaKWpU0MXnkjQ   1   0          0            0       261b           261b
green  open   fuel-card-92       SvENC7tKTAqV2y9xVsKOiQ   1   0          0            0       261b           261b
green  open   fuel-carrier-90    MURSlOJaTVKHYXujok7YRw   1   0          0            0       261b           261b
green  open   goods-90           lvZFldjQQP6srkgBSWYygA   1   0      21601            0     27.6mb         27.6mb
green  open   goods-category-90  nPR0BmKASoiKxY-7PUtE3g   1   0        440            0      120kb          120kb
green  open   insurance-90       60jVebmbS7erCy5IrgMTWQ   1   0          0            0       261b           261b
green  open   line-91            F0w6DvAHSU26VFXsps_yoQ   1   0          0            0       261b           261b
green  open   log-92             2EUyrFSYScS1xug9KPdt5Q   8   0    5928788            1     70.6gb         70.6gb
green  open   loss-91            hx0KQR5-QUqq0IXBpSkPig   1   0        339            0    551.8kb        551.8kb
green  open   material-91        pA0ZZF3DSqWlL0Y1B1WSgg   1   0        330            0      7.9mb          7.9mb
green  open   material-apply-91  ry3G3knsSFK89KwWCzE_mA   1   0       1567            0      1.5mb          1.5mb

创建索引

PUT /customer?pretty

{
  "acknowledged" : true,
  "shards_acknowledged" : true,
  "index" : "customer"
}

索引&查询数据

PUT /customer/_doc/1?pretty
{
  "name": "John Doe"
}
// 索引新增Document结果
{
  "_index" : "customer",
  "_type" : "_doc",
  "_id" : "1",
  "_version" : 1,
  "result" : "created",
  "_shards" : {
    "total" : 2,
    "successful" : 2,
    "failed" : 0
  },
  "_seq_no" : 0,
  "_primary_term" : 1
}

// 获取数据
GET /customer/_doc/1?pretty
// 返回的结果
{
  "_index" : "customer",
  "_type" : "_doc",
  "_id" : "1",
  "_version" : 2,
  "_seq_no" : 1,
  "_primary_term" : 1,
  "found" : true,
  "_source" : {
    "name" : "John Doe"
  }
}

// 删除索引

API的模式
<HTTP Verb> /<Index>/<Type>/<ID>

更新Document

// 更新name值
POST /customer/_doc/1/_update?pretty
{
  "doc": { "name": "Jane Doe" }
}
// 更新的同时新增字段
POST /customer/_doc/1/_update?pretty
{
  "doc": { "name": "Jane Doe", "age": 20 }
}
// 通过script动态更新Document数据
POST /customer/_doc/1/_update?pretty
{
  "script" : "ctx._source.age += 5"
}
// 删除Document数据
DELETE /customer/_doc/2?pretty

批量操作

// 批量更新两条数据
POST /customer/_doc/_bulk?pretty
{"index":{"_id":"1"}}
{"name": "John Doe" }
{"index":{"_id":"2"}}
{"name": "Jane Doe" }

// 更新1条数据 删除1条数据
POST /customer/_doc/_bulk?pretty
{"update":{"_id":"1"}}
{"doc": { "name": "John Doe becomes Jane Doe" } }
{"delete":{"_id":"2"}}

批量操作,如果其中某条执行失败,其余的会继续执行

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,772评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,458评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,610评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,640评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,657评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,590评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,962评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,631评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,870评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,611评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,704评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,386评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,969评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,944评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,179评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,742评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,440评论 2 342

推荐阅读更多精彩内容