我在这里阅读了我的问题的解释:
https://discuss.elastic.co/t/whats-the-differece-between-index-pattern-and-
index-template/54948
但是,我仍然不明白区别。定义索引PATTERN时,它根本不会影响索引的创建吗?另外,如果我创建索引但没有相应的索引模式,会发生什么情况?我如何查看用于索引模式的映射,以便知道如何使用Mapping
API对其进行更新?
另外,文档说您可以通过单击“设置”然后单击“索引”选项卡来管理索引模式。我正在查看Kibana,但没有看到任何设置标签。我可以通过“管理”选项卡查看索引模式,但是那里没有任何设置选项卡
一个指数模板是用于触发每当一个名字模式匹配的新索引创建的ES功能。例如,假设我们创建了以下索引模板:
PUT _template/template_1
{
"index_patterns": ["foo*"],
"settings": {
"number_of_shards": 1
},
"mappings": {
...
}
}
如您所见,一旦我们想在名为(例如)的索引中为文档建立索引,foo-44
而该索引不存在,则ES将使用该模板(设置+映射)来foo-44
自动创建索引。
您可以随时通过简单地如上所述放置新的设置/映射定义来更新索引模板。
一个索引图案(不要与混淆index- patterns
你看到上面的财产,这是两个完全不同的东西),是告诉Kibana什么构成了一个索引(所有的领域,它们的类型等),一个Kibana功能。如果不创建索引模式,那么在Kibana中什么都不会发生,您可以在中创建索引模式`Management
Index Patterns`。
在ES中创建索引不会在Kibana中创建任何索引模式。同样,在Kibana中创建索引模式不会在ES中创建任何索引。
Kibana之所以需要索引模式,是因为它需要存储索引映射中可用的各种信息。例如,假设您使用以下映射创建索引:
PUT my_index
{
"mappings": {
"doc": {
"properties": {
"timestamp": {
"type": "date"
},
"name": {
"type": "text"
}
}
}
}
}
然后,您将在Kibana中创建的相应索引模式将具有以下内容:
GET .kibana/doc/index-pattern:16a98050-a53f-11e8-82ab-af0d48c6ddd8
{
"type": "index-pattern",
"updated_at": "2018-08-21T12:38:22.509Z",
"index-pattern": {
"title": "my_index*",
"timeFieldName": "timestamp",
"fields": """[{"name":"_id","type":"string","count":0,"scripted":false,"searchable":true,"aggregatable":true,"readFromDocValues":false},{"name":"_index","type":"string","count":0,"scripted":false,"searchable":true,"aggregatable":true,"readFromDocValues":false},{"name":"_score","type":"number","count":0,"scripted":false,"searchable":false,"aggregatable":false,"readFromDocValues":false},{"name":"_source","type":"_source","count":0,"scripted":false,"searchable":false,"aggregatable":false,"readFromDocValues":false},{"name":"_type","type":"string","count":0,"scripted":false,"searchable":true,"aggregatable":true,"readFromDocValues":false},{"name":"name","type":"string","count":0,"scripted":false,"searchable":true,"aggregatable":false,"readFromDocValues":false},{"name":"timestamp","type":"date","count":0,"scripted":false,"searchable":true,"aggregatable":true,"readFromDocValues":true}]"""
}
}
如您所见,Kibana还存储了timestamp字段,即索引模式的名称( 可以跨越多个索引
)。它还为您定义的每个字段存储各种属性,例如,对于该name
字段,索引模式包含Kibana需要知道的以下信息:
{
"name": "name",
"type": "string",
"count": 0,
"scripted": false,
"searchable": true,
"aggregatable": false,
"readFromDocValues": false
},
问题内容: 似乎在elasticsearch中,您将在集合上定义索引,而在关系数据库中,您将在列上定义索引。如果整个集合都已建立索引,为什么需要对其进行定义? 问题答案: 不幸的是,使用了“索引”一词,这意味着ES和关系数据库中的一些事物(在编辑中非常不同),因为它们针对不同的用例进行了优化。 数据库中的“索引”是辅助数据结构,它使查询和查询变得快速,并且它们通常存储的值与表中显示的值完全相同。您
要使用Kibana,您需要通过配置一个或多个索引模式来告诉它您想探索的 Elasticsearch 索引。您也可以: 通过对您数据的实时计算创建脚本化字段,您可以浏览和可视化脚本化字段,但是不能搜索它们。 设置高级选项,例如要在表格中显示的行数以及要显示多少个最受关注的字段。修改高级选项时需要格外注意,避免设置彼此不兼容的值。 为生产环境配置 Kibana。 创建一个索引模式连接 Elastics
我在所有日志中都有一个字段“location”,其中包含“lat”和“lon”字段。弹性体上的测井指数不同。其中一些转到“logstash YYY-MM-dd”,另一些转到“异常YYYY-MM-dd”,还有许多其他。但我不能让它们都将位置字段映射为geo_point。我知道默认映射和动态映射,但我无法使其工作。我不了解文档,也没有在网上找到明确的例子。我想要的是,elastic管理来自任何日志的所
以下是Apache发行版中所有模块的列表。字母顺序列表参见指令索引和稍微详细一点的指令速查。 另外还有描述指令的术语和描述模块的术语以供参考。 核心功能和多路处理模块 core Apache HTTP服务器核心提供的功能,始终有效。 mpm_common 收集了被多个多路处理模块(MPM)实现的公共指令。 beos 专门针对BeOS优化过的多路处理模块(MPM) event 一个标准workerM
问题内容: Elasticsearch中的索引是什么?一个应用程序有多个索引还是只有一个索引?假设您为某些汽车制造商构建了一个系统。它涉及人员,汽车,零件等。您是否有一个名为制造商的索引,或者您有一个人的索引,一个用于汽车的索引和一个用于零备件的索引?有人可以解释吗? 问题答案: 很好的问题,答案比人们期望的要细腻得多。您可以将索引用于几种不同的目的。 关系指标 最简单,最熟悉的布局将克隆您从关系