1. es设计
常用类型: 字符串类型 keyword:适合需要过滤、排序、聚合的数据 text:适合全文搜索(可以设置分词器,搜索时将内容分割检索)
数字类型 long:-263至263-1 integer:-231至231-1 short:-32,768至32768 byte:-128至127 double:64位双精度浮点类型 float:32位单精度浮点类型
时间类型(尽量使用长度较短的类型) date:ELasticsearch中,日期类型可以是以下几种: 日期格式的字符串:e.g. “2015-01-01” or “2015/01/01 12:10:30”. long类型的毫秒数( milliseconds-since-the-epoch) integer的秒数(seconds-since-the-epoch) 可以使用format字段控制显示格式,例如"format": “yyyy-MM-dd HH:mm:ss”
IP类型 ip:用于存储IPV4或者IPV6的地址
映射,mappings(结构设计) number_of_shards:是指索引要做多少个分片,只能在创建索引时指定,后期无法修改。 number_of_replicas:是指每个分片有多少个副本,后期可以动态修改(单机模式下,设置为0,否则Kibana管理页面,运行状态为yellow)
primary shard:主分片,每个文档都存储在一个分片中,当你存储一个文档的时候,系统会首先存储在主分片中,然后会复制到不同的副本中。默认情况下,一个索引有5个主分片。你可以在事先制定分片的数量,当分片一旦建立,分片的数量则不能修改。
replica shard:副本分片,每一个分片有零个或多个副本。副本主要是主分片的复制,可以 增加高可用性,提高性能。 默认情况下,一个主分配有一个副本,但副本的数量可以在后面动态的配置增加。 副本必须部署在不同的节点上,不能部署在和主分片相同的节点上。
`{
"settings":{
"number_of_shards": 2,
"number_of_replicas": 0
},
"mappings":{
"properties":{
"endpoint":{
"type":"keyword"
},
"metric":{
"type": "text"
},
"value":{
"type":"double"
},
"value":{
"type":"ip"
},
"timestamp":{
"type":"date",
"format": "yyyy-MM-dd HH:mm:ss"
}
}
}
}`
2.
|