目前与 elasticsearch 交互主要有两种方式:Client API 和 RESTful API。

数据格式

Elasticsearch 是面向文档的,意味着它存储整个对象或文档。Elasticsearch 不仅存储文档,而且 每个文档的内容可以被检索。在 Elasticsearch 中,你对文档进行索引、检索、排序和过滤而不是对行列数据。这是一种完全不同的思考数据的方式,也是 Elasticsearch 能支持复杂全文检索的原因。

索引的应用

查看我们的所有索引信息:

1
2
3
4
5
6
GET _search
{
"query": {
"match_all": {}
}
}

查看索引

curl -XGET “http://localhost:9200/_cat/indices?v“ -u elastic:6NrG3wS4vF9iGPYrd1uQ

创建索引

1
2
3
4
5
6
7
8
9
10
PUT /my-index
{
"mappings": {//映射规则
"properties": {
"age": { "type": "integer" },
"email": { "type": "keyword" },//keyword不会进行全文检索
"name": { "type": "text" }//text保存的时候进行分词,搜索的时候进行全文检索
}
}
}

创建索引后 添加新的字段映射

1
2
3
4
5
6
7
8
9
PUT /my-index/_mapping
{
"properties": {
"employee-id": {
"type": "keyword",
"index": false//索引选项控制是否对字段值建立索引。 它接受true或false,默认为true。未索引的字段不可查询。
}
}
}