ES数据的操作(一)

在知道ES的存储之后,我们需要了解如何对ES中的数据进行操作

一:ES的安装:

Elastic 需要 Java 8 环境。如果你的机器还没安装 Java,可以参考这篇文章,注意要保证环境变量JAVA_HOME正确设置。

安装完 Java,就可以跟着官方文档安装 Elastic。直接下载压缩包比较简单。

Elastic 需要 Java 8 环境。如果你的机器还没安装 Java,可以参考这篇文章,注意要保证环境变量JAVA_HOME正确设置。

安装完 Java,就可以跟着官方文档安装 Elastic。直接下载压缩包比较简单。

% wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.1.zip
% unzip elasticsearch-5.5.1.zip
% cd elasticsearch-5.5.1/ 

接着,进入解压后的目录,运行下面的命令,启动 Elastic。

./bin/elasticsearch

如果一切正常,Elastic 就会在默认的9200端口运行。这时,打开另一个命令行窗口,请求该端口,会得到说明信息。

curl localhost:9200

{
  "name" : "j6IWdK8",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "mF75JlD7TU2dO9PJAjL29A",
  "version" : {
    "number" : "5.5.1",
    "build_hash" : "19c13d0",
    "build_date" : "2017-07-18T20:44:24.823Z",
    "build_snapshot" : false,
    "lucene_version" : "6.6.0"
  },
  "tagline" : "You Know, for Search"
}

可以通过两种方式对数据进行操作

1.curl操作:会比较麻烦,先使用这种方式增删改查

curl是利用URL语法在命令行方式下工作的开源文件传输工具,使用url可以简单实现常见的get/post请求。简单的认为是可以在命令行下面访问url的一个工具。在centos的默认库里面是有curl工具的,如果没有请yum安装即可。

curl

-X 指定http的请求方法有 HEAD GET POST PUT DELETE

-d 指定要传输的数据

-H 指定http请求头信息

创建索引:

 % curl -XPUT localhost:9200/bigdata_test 

{"acknowledged":true,"shards_acknowledged":true}%     

查询索引:

curl -XGET 'http://localhost:9200/_cat/indices?pretty&v'

health status index        uuid                   pri rep docs.count docs.deleted store.size pri.store.size
yellow open   bigdata_test fa9YDOWxTdqZWdPSbG89VA   5   1          1            0      4.4kb          4.4kb

#这里在url后面添加了pretty是为了让其在控制台上输出的结果是一个优美的json格式

ES创建索引库和索引时的注意点:

1)索引库名称必须要全部小写,不能以下划线开头,也不能包含逗号

2)如果没有明确指定索引数据ID,那么es会自动生成一个随机的ID,需要使用POST参数

插入数据:

curl -XPOST 'http://localhost:9200/bigdata_test/stu/1?pretty' -H 'Content-Type: application/json' -d '
{
"name":"shaofei",
"age":22,
"sex":1
}'




结果:
{
  "_index" : "bigdata_test",
  "_type" : "stu",
  "_id" : "1",
  "_version" : 1,
  "result" : "created",
  "_shards" : {
    "total" : 2,
    "successful" : 1,
    "failed" : 0
  },
  "created" : true
}

查看index的mapping

curl -XGET 'http://localhost:9200/bigdata_test/_mapping?pretty'


结果:
{
  "bigdata_test" : {
    "mappings" : {
      "stu" : {
        "properties" : {
          "age" : {
            "type" : "long"
          },
          "name" : {
            "type" : "text",
            "fields" : {
              "keyword" : {
                "type" : "keyword",
                "ignore_above" : 256
              }
            }
          },
          "sex" : {
            "type" : "long"
          }
        }
      }
    }
  }
}

删除索引

curl -XDELETE 'http://localhost:9200/bigdata_test?pretty'


{
  "acknowledged" : true
}

创建别名:

curl -XPOST 'http://localhost:9200/_aliases' -d '{
  "actions": [
    {
      "add": {
        "index": "bigdata_test",
        "alias": "alias_bigdata_test"
      }
    }
  ]
}'

结果:
{"acknowledged":true}% 

查看别名:(列出所有索引和别名)

curl -XGET 'http://localhost:9200/_aliases'

结果:
{"bigdata_test":{"aliases":{"alias_bigdata_test":{}}}}%  

修改别名:

curl -XPOST 'http://localhost:9200/_aliases' -d '{
"actions": [
{ "add": {
"alias": "alias_bigdata_test_v1",
"index": "bigdata_test"
}}
]
}'

结果:
{"acknowledged":true}%    

最终结果:
{"bigdata_test":{"aliases":{"alias_bigdata_test":{},"alias_bigdata_test_v1":{}}}}% 

这是增加一个alias

修改数据

POST test1/doc/3/_update
{
  "doc":{
    "desc":"Beijing is the capital of China"
  }
}

2.Kibana操作ES: 提供简化的工具

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值