ElasticSearch入门学习

阅读更多
公司ES链接地址:http://10.202.77.206:5601/app/kibana#/dev_tools/console?_g=()

-- 创建一个index
put /customer_zhanglu?pretty
/*
成功会提示:{
  "acknowledged": true,
  "shards_acknowledged": true
}
*/

--查看所有索引
GET /_cat/indices?v
/*
health     status     index            uuid                    pri      rep      docs.count     docs.deleted     store.size     pri.store.size
green      open      icdstags_v1      EU7zRqqjSUWK3Sd8j7CfaA   5        1         21              0              250.5kb        125.2kb
green      open      bdp_css_waybill  m51I5keSQw2L_UlpxzISwA   5        1          0              0              1.2kb          650b
green      open      customer_zhanglu Qa-T7S97SymryXFHqAV35A   5        1          0              0              1.2kb          650b
*/

-- 插入一条记录,记录id手动指定
PUT /customer_zhanglu/table1/1?pretty
{
  "name": "John Doe"
}
/*
{
  "_index": "customer_zhanglu",
  "_type": "table1",
  "_id": "1",
  "_version": 1,
  "result": "created",
  "_shards": {
    "total": 2,
    "successful": 2,
    "failed": 0
  },
  "created": true
}
*/
-- 插入一条记录,记录id自动生成
POST /customer_zhanglu/table1?pretty
{
  "name": "table1_autoidtest",
  "age": 20,
  "servingStaffFlag": "no",
  "provinctCityName": "深圳"
}
/*
{
  "_index": "customer_zhanglu",
  "_type": "table1",
  "_id": "AWoGwpGBJUnalh9s_9hq",
  "_version": 1,
  "result": "created",
  "_shards": {
    "total": 2,
    "successful": 2,
    "failed": 0
  },
  "created": true
}
*/

-- _source定制返回的结果,指定_source中,返回哪些field
GET customer_zhanglu/table1/1?pretty
/* 返回结果:
{
  "_index": "customer_zhanglu",
  "_type": "table1",
  "_id": "1",
  "_version": 1,
  "found": true,
  "_source": {
    "name": "table1_1",
    "age": 20,
    "servingStaffFlag": "yes",
    "provinctCityName": "深圳"
  }
}
*/

GET customer_zhanglu/table1/1?_source=name,age  -- 返回指定的字段
/*
{
  "_index": "customer_zhanglu",
  "_type": "table1",
  "_id": "1",
  "_version": 1,
  "found": true,
  "_source": {
    "name": "table1_1",
    "age": 20
  }
}
*/
GET customer_zhanglu/table1/1?_source_include=name,age   -- 未找到与_source的区别

GET customer_zhanglu/table1/1?_source_exclude=name,age  -- 返回不包含指定字段的其余所有字段
/*
{
  "_index": "customer_zhanglu",
  "_type": "table1",
  "_id": "1",
  "_version": 1,
  "found": true,
  "_source": {
    "servingStaffFlag": "yes",
    "provinctCityName": "深圳"
  }
}
*/

-- 查看结构
GET /customer_zhanglu
/*
{
  "customer_zhanglu": {
    "aliases": {},
    "mappings": {
      "table1": {
        "dynamic_templates": [
          {
            "strings_not_analyzed": {
              "match_mapping_type": "string",
              "mapping": {
                "type": "keyword"
              }
            }
          }
        ],
        "properties": {
          "name": {
            "type": "keyword"
          }
        }
      },
      "_default_": {
        "dynamic_templates": [
          {
            "strings_not_analyzed": {
              "match_mapping_type": "string",
              "mapping": {
                "type": "keyword"
              }
            }
          }
        ]
      }
    },
    "settings": {
      "index": {
        "creation_date": "1551175058672",
        "number_of_shards": "5",
        "number_of_replicas": "1",
        "uuid": "Qa-T7S97SymryXFHqAV35A",
        "version": {
          "created": "5040199"
        },
        "provided_name": "customer_zhanglu"
      }
    }
  }
}
*/

-- 查看index为icdstags,type为tags的所有数据
GET /icdstags/tags/_search?pretty
/*
{
  "took": 1,
  "timed_out": false,
  "_shards": {
    "total": 5,
    "successful": 5,
    "failed": 0
  },
  "hits": {
    "total": 23,
    "max_score": 1,
    "hits": [
      {
        "_index": "icdstags_v1",
        "_type": "tags",
        "_id": "DEEQAVTg%2B%2BKxH5hiTZSLQqPeeQck8%3D",
        "_score": 1,
        "_source": {
          "phone": "DEEQAVTg%2B%2BKxH5hiTZSLQqPeeQck8%3D",
          "validFlag": "1",
          "baseMonthTag": "BM1-,BM1-SE0003-0-10,BM3-偏收有寄,BM4-1-4,BM5-1-4,BM6-1-4,BM7-5-10,BM8-5-10,BM9-11-20,BM10-0",
          "marketTag": "MK2-否,MK3-否,MK4-否,MK5-否,MK6-否,MK7-否,MK8-否,MK9-否,MK10-否,MK11-否,MK12-否,MK13-否,MK14-否,MK15-否,MK16-非用券用户",
          "uniqueid": "DEEQAVTg%2B%2BKxH5hiTZSLQqPeeQck8%3D",
          "baseDayTag": "BD1-是,BD2-有,BD5-否,BD6-201411,BD7-金牌会员,BD8-595Y,BD9-QuanZhou,BD10-595CC,BD11-595Y,BD12-QuanZhou,BD13-595CC,BD14-否,BD15-否,BD17-是,BD18-100,BD19-4,BD20-工业区"
        }
      },
      {
        "_index": "icdstags_v1",
        "_type": "tags",
        "_id": "DEEQAVTg%2B%2FYt8x%2FkcySVCcYyt3wBQ%3D",
        "_score": 1,
        "_source": {
          "phone": "DEEQAVTg%2B%2FYt8x%2FkcySVCcYyt3wBQ%3D",
          "validFlag": "1",
          "baseMonthTag": "BM1-,BM1-SE0003-0-10,BM3-偏收有寄,BM4-1-4,BM5-1-4,BM6-1-4,BM7-5-10,BM8-5-10,BM9-11-20,BM10-0",
          "marketTag": "MK2-否,MK3-否,MK4-否,MK5-否,MK6-否,MK7-否,MK8-否,MK9-否,MK10-否,MK11-否,MK12-否,MK13-否,MK14-否,MK15-否,MK16-非用券用户",
          "uniqueid": "DEEQAVTg%2B%2FYt8x%2FkcySVCcYyt3wBQ%3D",
          "baseDayTag": "BD1-是,BD2-有,BD5-否,BD6-201411,BD7-金牌会员,BD8-595Y,BD9-QuanZhou,BD10-595CC,BD11-595Y,BD12-QuanZhou,BD13-595CC,BD14-否,BD15-否,BD17-否,BD18-50,BD19-1,BD20-商业区"
        }
      }
    ]
  }
}
*/

--查看index为icdstags,type为tags下的记录总数
GET /icdstags/tags/_count?pretty
/*
{
  "count": 23,
  "_shards": {
    "total": 5,
    "successful": 5,
    "failed": 0
  }
}
*/

-- 查看index下的所有数据,按照name升序排列,排列字段必须,index下如果有多个type,sort的字段必须是每个type中都存在的
GET /customer_zhanglu/_search?q=*&sort=name:asc&pretty

GET /customer_zhanglu/_search
{
  "query": { "match_all": {} },
  "sort": [
    {"name": "asc"}
    ]
}

/*
{
  "took": 1,       -- 搜索花费的时间,但是是毫秒
  "timed_out": false,  -- 是否超时
  "_shards": {      -- 分片
    "total": 5,     -- 搜索的分片个数
    "successful": 5,  -- 搜索成功的分片个数
    "failed": 0       -- 搜索失败的分片个数
  },
  "hits": {        -- 搜索的结果
    "total": 3,    -- 符合条件的记录个数,es中的记录叫document
    "max_score": null,
    "hits": [     -- 搜索到的数据,默认显示前10条
      {
        "_index": "customer_zhanglu",
        "_type": "table1",
        "_id": "1",
        "_score": null,
        "_source": {
          "name": "hello1"
        },
        "sort": [    -- 排序的字段值,如果使用score排序,则不显示sort
          "hello1"
        ]
      },
      {
        "_index": "customer_zhanglu",
        "_type": "table2",
        "_id": "2",
        "_score": null,
        "_source": {
          "doc": {
            "name": "Jane",
            "age": 22
          }
        },
        "sort": [
          null
        ]
      },
      {
        "_index": "customer_zhanglu",
        "_type": "table2",
        "_id": "1",
        "_score": null,
        "_source": {
          "doc": {
            "name": "Jane Doe",
            "age": 20
          }
        },
        "sort": [
          null
        ]
      }
    ]
  }
}
*/

-- 增加字段
POST customer_zhanglu/table1/_mapping
{
  "properties": {
    "servingStaffFlag":{"type": "keyword"},
    "provinctCityName":{"type": "keyword"}
  }
}
-- 上述命令转换为curl
curl -XPOST "http://10.202.116.33:9200/customer_zhanglu/table1/_mapping" -H 'Content-Type: application/json' -d'
{
  "properties": {
    "servingStaffFlag":{"type": "keyword"},
    "provinctCityName":{"type": "keyword"}
  }
}'


-- 按照某字段的特定值查询
GET /customer_zhanglu/table1/_search?pretty
{
  "query":{
    "term" : {"age":20}
  }
}
/*
curl -XGET "http://10.202.116.33:9200/customer_zhanglu/table1/_search?pretty" -H 'Content-Type: application/json' -d'
{
  "query":{
    "term" : {"age":20}
  }
}'
*/

GET /customer_zhanglu/table1/_search?pretty
{
  "query":{
    "term" : {"servingStaffFlag":"yes"}
  }
}

你可能感兴趣的:(es)