ElasticSearch基础操作
来源:互联网 发布:linux线程调度机制 编辑:程序博客网 时间:2024/06/05 15:13
ES 基础操作参考文章
查看实例状态
curl http://10.25.164.23:9200查看集群全部索引
curl -X GET ‘10.25.164.23:9200/_cat/indices?v’查看Index中包含的Type
curl -X GET ‘10.25.164.23:9200/_mapping?pretty=true’
- 新建Index
curl -X PUT ‘10.25.164.23:9200/accounts’ -d ’
{
“mappings”: {
“person”: {
“properties”: {
“user”: {
“type”: “text”
},
“title”: {
“type”: “text”
},
“desc”: {
“type”: “text”
}
}
}
}
}’
curl -X PUT ‘10.25.164.23:9200/accounts’ -d ’
{
“settings”:{
“number_of_shards”:1,
“number_of_replicas”:1,
“index”:{
“analysis”:{
“analyzer”:{
“default”:{
“tokenizer”:”standard”,
“filter”:[
“asciifolding”,
“lowercase”,
“ourEnglishFilter”
]
}
},
“filter”:{
“ourEnglishFilter”:{
“type”:”kstem”
}
}
}
}
}
}’
– 模板
curl -XPUT [address]/blog/ -d ‘{
“settings”:{
“number_of_shards”:1, //设置分片数量
“number_of_replicas”:2, //设置副本数量
//自定义索引默认分析器
“index”:{
“analysis”:{
“analyzer”:{
“default”:{
“tokenizer”:”standard”, //分词器
“filter”:[ //过滤器
“asciifolding”,
“lowercase”,
“ourEnglishFilter”
]
}
},
“filter”:{
“ourEnglishFilter”:{
“type”:”kstem”
}
}
}
}
}
}’
- 删除Index
curl -X DELETE ‘10.25.164.23:9200/weather’
- 插入数据
curl -X PUT ‘10.25.164.23:9200/accounts/person/1’ -d ’
{
“user”: “张三”,
“title”: “工程师”,
“desc”: “数据库管理”
}’
- 查看插入的数据
curl ‘10.25.164.23:9200/accounts/person/1?pretty=true’
- 查询所有记录
curl ‘10.25.164.23:9200/accounts/person/_search?pretty=true’
- 删除记录
curl -X DELETE ‘10.25.164.23:9200/accounts/person/1’
- 全文检索
curl ‘10.25.164.23:9200/accounts/person/_search’ -d ’
{
“query” : { “match” : { “desc” : “软件” }}
}’
HIVE管理ES外部表
set mapreduce.map.java.opts=-Xmx1024m -XX:+PrintGCDetails -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp/@taskid@.hprof;
add jar hdfs://pasc/metadata/libs/es/elasticsearch-hadoop-hive-2.3.1.jar;
set hive.execution.engine=mr;
CREATE EXTERNAL TABLE test_person
(
user string,
title string,
desc string)
ROW FORMAT SERDE
‘org.elasticsearch.hadoop.hive.EsSerDe’
STORED BY
‘org.elasticsearch.hadoop.hive.EsStorageHandler’
TBLPROPERTIES (
‘es.mapping.names’=’user:user,title:title,desc:desc’,
‘es.nodes’=’10.25.164.23:9200’,
‘es.read.metadata’=’true’,
‘es.resource’=’accounts/person’);