《ElasticStack从入门到实践》学习笔记1

一、ElasticSearch入门介绍

    1、常见术语:

        A、Document        文档

                用户存储在ES中的数据文档。

        B、Index                索引

                由具有相同字段的文档列表组成。在当前版本,不在推荐下设Type,在后续版本,不再设立Type。

        C、field                  字段

                包含具体数据。

        D、Node                节点

                一个ES的实例,构成clister的单元

        E、Cluster              集群  

                对外服务的一个/多个节点

    2、Document介绍:

        A、常用数据类型:字符串、数值型、布尔型、日期型、二进制、范围类型

        B、每个文档都有一个唯一ID标识。(可以自行指定,也可由ES自动生成)

        C、元数据,用于标注文档的相关信息:

            a、_index:            文档所在的索引名

            b、_type:           文档所在的类型名

            c、_id:                文档唯一标识

            d、_uid:              组合id、由_type和_id组成,后续版本中_type不再有用,同_id

            e、_source:        文档的原始JSON数据,可从这获取每个字段的内容

            f、_all:                 整合所有字段内容到该字段。(默认禁用)

            g、_version:       文档字段版本号,标识被操作了几次

    3、Index介绍:

        A、索引中存储相同结构的文档,且每个index都有自己的Mapping定义,用于定义字段名和类型;

        B、一个集群中可以有多个inex,类似于可以有多个table。

    4、RESTful API:

        A、有两种交互方式:

          a、CURL命令行——————curl -XPUT xxx

          b、Kibana DevTools————PUT xxx{ }

        B、本次学习使用DevTools方式进行开发。

    5、Index API:

        用户创建、删除、获取索引配置等。

        A、创建索引:

PUT /test_index #创建一个名为test_index的索引

        B、查看索引:

GET _cat/indices #查看所有的索引

        C、删除索引:

DELETE /test_index #删除名为test_index的索引

    6、Document API:

        A、创建文档:

          a、指定ID创建Document

#创建ID为1的文档
PUT /test_index/doc/1
{
 "username":"alfred",
 "age":"24"
}

          返回结果:

          b、不指定ID创建Document

POST /test_index/doc
{
 "username":"buzhiding",
 "age":"1"
}

返回结果:

          可以看到,ES自动指定了id,为rZDAU2cBYarvGujXMyXg

        B、查询文档:

#查看名为test_index的索引中id为1的文档
GET /test_index/doc/1

        C、查询所有文档:

#查询名为test_index的索引中所有文档,用到endpoint:_search,默认返回符合的前10条
GET /test_index/doc/_search
{
 "query":{
  "term":{
   "_id":"1"
  }
 }
}
#term和match的区别:term完全匹配,不进行分词器分析;match模糊匹配,进行分词器分析,包含即返回

        D、批量创建文档:

        ES运行一次创建多个文档,从而减少网络传输开销,提升写入速率。

#批量创建文档,用到endpoint:_bulk
POST _bulk
{"index":{"_index":"test_index","_type":"doc","_id":"3"}}
{"username":"alfred","age":"20"}
{"delete":{"_index":"test_index","_type":"doc","_id":"1"}}
{"update":{"_id":"2","_index":"test_index","_type":"doc"}}
{"doc":{"age":"30"}}
#index和create的区别,如果文档存在时,使用create会报错,而index会覆盖

        E、批量查询文档:

#批量查询文档,使用endpoint:_mget
GET _mget
{
 "doc":[
  {
   "_index":"test_index",
   "_type":"doc",
   "_id":"1"
  },
  {
   "_index":"test_index",
   "_type":"doc",
   "_id":"2"
  }
 ]
}

        F、根据搜索内容删除文档:

#根据搜索内容删除文档,使用endpoint:_delete_by_query
POST /test_index/doc/_delete_by_query
{
 "query":{
  "match":{
   "username":"buzhiding"
  }
 }
}
#删除名为test_index的索引中的username为不指定的文档

        G、删除整个Type:

#直接删除整个type,依然使用endpoint:_delete_by_query
POST /test_index/doc/_delete_by_query
{
 "query":{
  "match_all":{}
 }
}
#会直接删除名为test_index的索引下的所有type

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
1、课程简介          ElasticStack 是一系列开源产品的合集,包括 Elasticsearch、Kibana、Logstash 以及 Beats 等,能够安全可靠地获取任何来源、任何格式的数据,并且能够实时地对数据进行搜索、分析和可视化。其中,Logstash和Beats负责数据的收集,Kibana负责结果数据的可视化展现,Elasticsearch作为核心部分用于数据的分布式存储以及索引。   我们可以使用ElasticStack进行收集并处理任何数据,最为经典的是用于实时日志数据的收集、存储、展现。在此之前,如果实现实时日志的分析,需要经过繁琐的架构设计并且使用多个系统实现,现在只需要使用ElasticStack即可实现功能强大的实时日志分析系统,ElasticStack不仅仅用来做日志分析,它可以处理任何的数据并且进行存储、展现。          在本套课程中,我们将全面的讲解ElasticStack技术栈,从环境的部署到技术的应用,再到项目实战,让我们不仅是学习框架技术的使用,而且可以学习到使用ElasticStack如何解决实际的问题,我们通过收集系统日志数据、服务器指标数据、nginx的运行数据等,多维度的展示了ElasticStack的应用范围,最终将分析的结果数据非常友好的展现出来,没错!不需要前端的参与也可以做出“高大上”的结果显示页。   2、适应人群   有一定的Java基础,并且要有一定的web开发基础。   3、课程亮点          系统的学习ElasticStack技术栈,掌握最先进的搜索、数据收集等技术。   l  Elasticsearch   n  快速入门   n  核心详解   n  中文分词   n  Elasticsearch集群   n  Java客户端的应用   l  Beats & Kibana & Logstash   n  Filebeat(文件采集器)   n  Metricbeat(指标采集器)   n  采集Nginx的日志以及指标数据   n  Kibana自定义仪表盘   n  Logstash自定义数据处理   l  综合练习   n  收集APP产生的日志进行实时展现   n  Filebeat采集日志   n  Logstash处理数据   n  Kibana 自定义仪表盘展现   4、主讲内容   章节一:Elasticsearch入门   1.     快速入门   2.     核心讲解   3.     中文分词   4.     全文搜索   5.     Elasticsearch集群   章节二:Beats   1.     Beats 简介   2.     Filebeat采集Nginx日志   3.     Metricbeat采集Nginx指标数据   章节三:Kibana   1.     Kibana简介   2.     Metricbeat 仪表盘   3.     Nginx 指标仪表盘   4.     Nginx 日志仪表盘   5.     自定义图表   章节四:Logstash   1.     Logstash简介   2.     配置详解   3.     读取自定义日志   章节五:综合练习   1.     流程说明   2.     Filebeat采集日志   3.     Logstash处理数据   4.     Kibana 自定义仪表盘展现

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值