ES是一个分布式的全文搜索引擎 我们对数据库比较熟悉,刚开始了解ES时可以跟MySQL进行对比
MySQL是关系型数据库,里面的数据是一行行数据。而ES是以一条条Document(文档)为单位存储的。Document的结构就是Json数据结构。
我们举例一条Document分析下结构
{
"_index" : "erp-abc", // 索引(数据库)
"_type" : "logging", // 类型(表)
"_id" : "1", // id
"_score" : 1.0, // 得分
"_source" : {
// 数据
"threadId" : 577,
"hostName" : "1.1.1",
"companyId" : -1,
"level" : "INFO",
"logger" : "xxx",
"message" : "xxx",
"clueId" : "123456",
"staffId" : -1,
"applicationName" : "xxx",
"threadName" : "JobRunnerPool-thread-6",
"timestamp" : "2022-07-25T14:17:04.479+08:00"
}
相对应MySQL存储的话如下 logger表
上一节我们学习了怎么安装ELK,好了接下来我们可以通过Kibana学习下ES的增删改查语句
GET / // 查看版本
GET /_cat/nodes?v // 查看节点
GET /_cat/indices?v // 查看索引
GET /_cat/shards?v // 查看分片
GET /erp-basis/logging/_mapping // 查看索引类型结构
PUT /test-index // 新增索引
DELETE /test-index // 删除索引
PUT /test-index/test-type/1 // 新增文档
{ "test": "1" }
POST /test-index/test-type/1_update // 修改文档
{ "test": "2" }
GET /test-index/test-type/1 // 文档详情
DELETE /test-index/test-type/1 // 删除文档
下面重点讲下ES的查询语句,对比MySQL方便理解