0%

es

Basic

Concept

Config

Usage

DDL(Data Definition Language)

Index

Type

string

  • keyword(不分词)
  • text(分词)

number

  • 整数:byte、short、int、long、bigint
  • 小数
    • 浮点数:float、double、half_float、scaled_float

boolean

datetime

datetime
format
timezone

array

nested

object

binary

range

ip

geo

  • geo_point(经纬度点)
  • geo_shape(经纬度区域图形)

Template

mappings

settings

Analyzer

Alias

Reindex

Rollover

Lifecycle

Snapshot

DML(Data Manipulation Language)

  • insert:插入
    • insertOrReject:不存在就插入,存在时就拒绝
    • insertOrIgnore:不存在就插入,存在时就忽略
    • insertOrUpdate:不存在就插入,存在时就更新(部分更新)
    • insertOrReplace:不存在就插入,存在时就替换(整体替换)
  • update:更新
    • updateOrReject:存在时就更新,不存在就拒绝(不常见)
    • updateOrIgnore:存在时就更新,不存在就忽略(很常见)
    • updateOrInsert:存在时就更新,不存在就插入(等同于insertOrUpdate)

ps:修改(modify)广义上包含insert(插入)、update(更新)、delete(删除)操作
ps:替换(replace)也是一种修改,本质是delete(删除)+ insert(插入)

1
2
3
4
5
6
7
8
9
10
11
POST /<target>/_doc/:insert(自动创建id)
POST /<target>/_doc/<_id>/_create:insertOrReject
POST /<target>/_doc/<_id>?op_type=create:等同于POST /<target>/_doc/<_id>/_create
POST /<target>/_doc/<_id>/_update:insertOrUpdate(需要有upsert参数)
POST /<target>/_create/<_id>:insert(指定id)

PUT /<target>/_doc/<_id>:insertOrReplace
PUT /<target>/_doc/<_id>/_create:insertOrReject
PUT /<target>/_doc/<_id>?op_type=create:等同于PUT /<target>/_doc/<_id>/_create
PUT /<target>/_doc/<_id>/_update:
PUT /<target>/_create/<_id>:insert(指定id)

insert

单个插入、批量插入

insertOrReject: POST /<target>/_doc/<_id>/_create
insertOrIgnore:无
insertOrUpdate: POST /<target>/_doc/<_id>/_update (需要有upsert参数)
insertOrReplace: PUT /<target>/_doc/<_id>

update

单个更新、批量更新

updateOrReject: 无
updateOrIgnore: POST /<target>/_doc/<_id>/_update
updateOrInsert: 等同于insertOrUpdate

delete

单个删除、批量删除

DQL(Data Query Language)

等值查询、多值查询、范围查询、模糊查询、逻辑查询、聚合查询、关联查询、子查询

general(常规查询)

equal(等值查询)

multi(多值查询)

range(范围查询)

范围查询:左闭右闭(数据库用的多)、左闭右开(编程语言用的多)、左开右闭、左开右开

fuzzy(模糊查询)

logic(逻辑查询)

aggregation(聚合查询)

relation(关联查询)

sub(子查询)

Transaction

elasticsearch不支持事务,所以不支持原子性和隔离性,但支持持久化

Atomicity

Isolation

Durability

Problem

Performance

  • optimize(查询和性能优化)
  • explain(查询分析工具)
  • profile(性能分析工具)
  • slowlog(慢查询日志)
  • monitor(性能监控工具)

Optimize

Analysis

Diagnosis

SlowLog

Monitor

Architecture

Replication

Cluster

Distributed

Application

Theory

Index

Reverted-Index

ps:数据库的 辅助索引 和搜索引擎的 倒排索引 都是 关键字到主键 的反向映射关系

Score

TF-IDF

Query

Match

Sorting

Aggregation

Shard

Segment

分段存储、延迟写、段合并

Other

Management

管理

Visual

Tools

Operation

运维

TODO:es不停机迁移

只想买包辣条