您可以通过 Elasticsearch 的 RESTFul API 来创建索引:
PUT http://127.0.0.1:9200/commodity
注意:默认情况下,创建的索引分片数量是 5 个,副本数量是 1 个。
您可以通过如下参数来指定分片数、副本数量:
{ "settings": { "number_of_shards": 3, "number_of_replicas": 2
}
}
1.1 实战演示
通过 CURL 命令来上手 *** 作一下,我们尝试创建一个 商品 索引, 看下效果:
curl -X PUT "localhost:9200/commodity?pretty"
索引创建成功会返回以下出参:
{ "acknowledged" : true, "shards_acknowledged" : true, "index" : "commodity"}
如下图所示:
二、创建带有类型、映射的索引(Index)
其实,我们可以在创建索引的时候,同时将索引的类型、以及映射一并创建好:
curl -X PUT "localhost:9200/commodity?pretty"
入参:
{ "settings": { "number_of_shards": 3, "number_of_replicas": 2
}, "mapping": { "_doc": { "properties": {"commodity_id": { "type": "long"
},"commodity_name": { "type": "text"
},"picture_url": { "type": "keyword"
},"price": { "type": "double"
}
}
}
}
}
我们创建了一个分片数为 3,副本数为 2 的索引,同时,定义了一个_doc的类型,里面包含了 4 个字段,类型各不相同。
接下来,我们用 Postman 工具来一次性创建带有类型、映射的索引(Index):
这里应为笔者通过 CURL 创建索引,由于带入参,出现了格式错误的问题,改用了 Postman 工具,效果相同。
三、修改索引的副本数
我们可以通过如下 API 来修改索引的副本数:
PUT http://127.0.0.1:9200/commodity/_settings
入参:
{ "number_of_replicas": 3}
我们将commodity索引副本数更新为了 3:
获取索引
为已经存在的索引添加一个新的字段
对一个字段提供多种索引模式,同一个字段的值,一个分词,一个不分词
字段索引两次使用不的解析器
为字段配置一个特定的解析器
自定义_all字段
ES通过字段映射中的copy_to参数将值复制到其他字段,在first_name和last_name字段中的值会被拷贝到full_name字段中。first_name和last_name字段的映射和full_name字段的索引方式的无关。full_name字段会从其它两个字段中拷贝字符串的值,然后仅根据full_name字段自身的映射进行索引。
解析器可以在几个级别被指定。ES会依次检查每个级别直到它找到了一个可用的解析器。在索引期间,检查的顺序是这样的:
在搜索期间,顺序稍微有所不同:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)