} }
---
PUT /logstash-2015.05.19 { "mappings": { "log": { "properties": { "geo": { "properties": { "coordinates": { "type": "geo_point" } } } } } } }
---
PUT /logstash-2015.05.20 { "mappings": { "log": { "properties": { "geo": { "properties": { "coordinates": { "type": "geo_point" } } } } } } }
Account数据集不需要任何映射。
#### 加载数据集
此时,您已准备好使用Elasticsearch [bulk]( ) API来加载数据集:
Invoke-RestMethod "http://localhost:9200/bank/account/_bulk?pretty" -Method Post -ContentType 'application/x-ndjson' -InFile "accounts.json" Invoke-RestMethod "http://localhost:9200/shakespeare/doc/_bulk?pretty" -Method Post -ContentType 'application/x-ndjson' -InFile "shakespeare_6.0.json" Invoke-RestMethod "http://localhost:9200/_bulk?pretty" -Method Post -ContentType 'application/x-ndjson' -InFile "logs.jsonl"
或者对于Windows用户,在Powershell中运行:
Invoke-RestMethod "http://localhost:9200/bank/account/_bulk?pretty" -Method Post -ContentType 'application/x-ndjson' -InFile "accounts.json" Invoke-RestMethod "http://localhost:9200/shakespeare/doc/_bulk?pretty" -Method Post -ContentType 'application/x-ndjson' -InFile "shakespeare_6.0.json" Invoke-RestMethod "http://localhost:9200/_bulk?pretty" -Method Post -ContentType 'application/x-ndjson' -InFile "logs.jsonl"
这些命令可能需要一些时间才能执行,具体取决于可用的计算资源。
验证加载是否成功:
GET /_cat/indices?v
您的输出应该类似于:
health status index pri rep docs.count docs.deleted store.size pri.store.size yellow open bank 5 1 1000 0 418.2kb 418.2kb yellow open shakespeare 5 1 111396 0 17.6mb 17.6mb yellow open logstash-2015.05.18 5 1 4631 0 15.6mb 15.6mb yellow open logstash-2015.05.19 5 1 4624 0 15.7mb 15.7mb yellow open logstash-2015.05.20 5 1 4750 0 16.4mb 16.4mb
### 定义索引模式
索引模式告诉Kibana您想要探索哪些Elasticsearch索引。索引模式可以匹配单个索引的名称,或者包含通配符(\*)以匹配多个索引。
例如,Logstash通常以logstash-YYYY.MMM.DD格式创建一系列索引。要浏览2018年5月的所有日志数据,您可以指定索引模式 logstash-2018.05\*。
您将为shakespeare数据集创建模式,该数据集具有一个名为索引shakespeare,和Account数据集,其中包含一个名为bank.的索引。 这些数据集不包含时间序列数据。
1. 在Kibana中,打开“ **Management**管理”,然后单击“ **Index Patterns**索引模式”。
2. 如果这是您的第一个索引模式,则会自动打开“ **Create index pattern**创建索引模式”页面。否则,单击左上角的“ **Create index pattern**创建索引模式 ”。
3. 在**Index pattern**索引模式字段中输入shakes\*。

1. 单击”Next step**下一步”**。
2. 在**Configure settings**配置设置中,单击**Create index pattern**创建索引模式。对于此模式,您无需配置任何设置。
3. 定义名为 ba\* 的第二个索引模式,不需要为此模式配置任何设置。
现在为Logstash数据集创建索引模式。该数据集包含时间序列数据。
1. 定义名为的索引模式 logstash\*.
2. 单击Next step**下一步**。
3. 在**Configure settings**配置设置中,在**Time Filter field name**时间过滤器字段名称下拉菜单中选择@**timestamp**。
4. 单击**Create index pattern**创建索引模式。
>
> 注意 定义索引模式时,与该模式匹配的索引必须存在于Elasticsearch中,并且它们必须包含数据。要检查哪些索引可用,请转到**Dev
> Tools > Console**并输入GET \_cat/indices。或者,使用curl -XGET
> “<http://localhost:9200/_cat/indices>”。
>
>
>
### Discover您的数据
使用Discover应用程序,您可以输入[Elasticsearch查询]( )来搜索数据并过滤结果。
1. 打开**Discover**。
当前索引模式显示在筛选栏的下方,
在这种情况下shakes\*。您可能需要单击菜单栏中的 " **New**新建" 来刷新数据。
2. 单击当前索引模式右侧的插入符号,然后选择ba\*。
3. 在搜索字段中,输入以下字符串:
`account_number:\<100 AND balance:\>47500`
搜索返回account\_number 为0至99之间, 余额超过47500的所有账号。它返回account\_number 为8, 32, 78, 85和97的帐号。

默认情况下,会为每个匹配的文档显示所有字段。要选择要显示的字段,请将指针悬停在“ Available
Fields**可用字段** ”列表上 ,然后单击要在表中包含的每个字段旁边的“ add**添加”**。
例如,如果添加account\_number字段,则显示将更改为包含五个帐号的列表。

### 数据可视化
在Visualize应用程序中,您可以使用各种图表,表格和地图等对数据进行整形。您将创建四个可视化:饼图,条形图,坐标图和Markdown小部件。
1. 打开**Visualize。**
2. 单击“ **Create a visualization**创建可视化”或“**+**”按钮。您将在Kibana中看到所有可视化类型。

1. 单击Pie**饼图**。
2. 在“ **New Search**新建搜索”中,选择ba\*索引模式。您将使用饼图来深入了解银行帐户数据中的帐户余额。
#### 饼图
最初,饼图包含一个“slice切片”。那是因为默认搜索匹配所有文档。

要指定要在饼图中显示的切片,请使用Elasticsearch bucket aggregation[桶聚合]( )。此聚合将符合搜索条件的文档分类到不同的类别(也称为*存储桶)*。
使用存储桶聚合来建立多个帐户余额范围,并找出每个范围中有多少帐户。
1. 在“**Buckets**存储桶”窗格中,单击“ **Split Slices拆分切片”。**
2. 在**Aggregation**下拉菜单中,选择**Range**。
3. 在“ **Field**字段”下拉菜单中,选择“ **balance余额”**。
4. 单击“ **Add Range**添加范围”4次,将范围总数设置为6。
5. 定义以下范围:
>
>
> ```
> 0 999
> 1000 2999
> 3000 6999
> 7000 14999
> 15000 30999
> 31000 50000
>
> ```
>
>
1. 单击**Apply changes应用更改** 。
现在,您可以看到1000个帐户中有多少比例属于每个余额范围。

添加另一个桶聚合,查看帐户持有者的年龄。
1. 在“ **Buckets**存储桶”窗格的底部,单击“ **Add sub-buckets添加子存储桶”**。
2. 在“ **Select buckets type**选择存储桶类型”中,单击“ **Split Slices**拆分切片”。
3. 在**Sub Aggregation**下拉列表中,选择**Terms**。
4. 在“ **Field**字段”下拉列表中,选择“ **age年龄”**。
5. 单击 **Apply changes应用更改** 。
现在,您可以看到帐户持有人年龄的细分,在内环形显示余额范围。

要保存此图表以便以后可以使用:
点击顶部菜单栏中的Save**保存**,然后输入Pie Example。

#### 条形图
您将使用条形图查看Shakespeare数据集并比较剧中的speaking发言部分数量。
* 创建**Vertical Bar垂直条形图**并将搜索源设置为shakes\*。
最初,图表是单个栏,显示与默认通配符查询匹配的文档总数。

沿 y 轴显示每场表演的发言部分数量。这需要您配置Y轴 metric aggregation[度量标准聚合。]( ) 此聚合根据搜索结果中的值计算指标。
1. 在“ Metrics**度量标准”**窗格中,展开“ Y-Axis**Y轴”**。
2. 将Aggregation**聚合**设置为Unique Count**唯一计数**。
3. 将**Field**字段设置为**speaker**发言。
4. 在“ **Custom Label** 自定义标签”框中,输入Speaking Parts。
5. 单击Apply changes **应用更改** 。

沿X轴显示表演。
1. 在“ **Buckets**存储桶”窗格中,单击“ **X-Axis** X轴”。
2. 将**Aggregation**聚合设置为**Terms**条款和 **Field**字段为**play\_name**。
3. 要按字母顺序列出表演,请在“ Order**顺序”**下拉菜单中选择“ Ascending**升序”**。
4. 为轴提供自定义标签Play Name。
5. 单击Apply changes **应用更改** 。
将鼠标悬停在某个条形图上会显示一个工具提示,其中包含该表演的说话部分数量。
注意各个表演名称如何显示为整个短语,而不是分成单个单词。这是您在本教程开始时将该play\_name字段标记为的映射的结果not
analyzed。
使用名称**保存**此图表Bar Example。
#### 坐标地图
使用坐标图,可以可视化日志文件样本数据中的地理信息。
1. 创建Coordinate map**坐标地图**并将搜索源设置为logstash\*。
2. 在顶部菜单栏中,单击最右侧的时间选择器。
3. 单击Absolute**绝对**。
4. 将开始时间设置为2015年5月18日,结束时间为2015年5月20日。
5. 单击**Go**。
您还没有定义任何存储桶,因此可视化是一个世界地图。

现在映射日志文件中的地理坐标。
1. 在“**Buckets**存储桶”窗格中,单击“ **Geo Coordinates**地理坐标”。
2. 将**Aggregation**聚合设置为**Geohash**,将**Field**字段设置为**geo.coordinates**。
3. 单击Apply changes**应用更改** 。
地图现在看起来像这样:

您可以通过单击并拖动来导航地图。地图左上角的控件可让您缩放地图并设置过滤器。尝试一下。

使用名称Map Example保存此地图。
#### Markdown
最终的可视化是Markdown小部件,用于呈现格式化文本。
1. 创建**Markdown**可视化。
2. 在文本框中,输入以下内容:
#这是一个教程仪表板!
Markdown小部件使用\*\*markdown\*\*语法。
> Blockquotes in Markdown use the > character.
3. 单击 **应用更改** 。
Markdown在预览窗格中呈现:

使用名称Markdown Example**保存**此可视化。
### 在仪表板中显示可视化
仪表板是可以安排和共享的可视化集合。您将构建一个包含您在本教程中保存的可视化的仪表板。
1. 打开**Dashboard仪表板**。
2. 单击“ **Create new dashboard创建新仪表板”**。
3. 单击**Add添加**。
4. 添加**Bar Example**条形图示例, **Map Example地址示例**, **Markdown Example**, 和**Pie Example饼图示例**。
您的示例仪表板如下所示:

您可以通过单击可视化的标题并拖动来重新排列可视化。可视化文件右上角的齿轮图标显示用于编辑和删除可视化的控件。调整大小控件位于右下方。
要获取共享或HTML代码的链接以将仪表板嵌入网页,请保存仪表板并单击“ **Share共享”**。
**Save保存**仪表板。
### 检查数据
查看数据的可视化效果非常好,但有时您需要查看实际数据以了解实际情况。您可以检查任何可视化背后的数据,并查看用于检索它的Elasticsearch查询。
1. 在仪表板中,将指针悬停在饼图上。
2. 单击右上角的图标。


**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**了解详情》docs.qq.com/doc/DSlVlZExWQ0FRSE9H**