Elasticsearch索引及字段命名规范 | 您所在的位置:网站首页 › 修改es索引名称命令 › Elasticsearch索引及字段命名规范 |
Elasticsearch索引及字段命名规范
实际中使用Elasticsearch,首要需要考虑定义索引、映射以及字段等,本文总结下必要的命名规范。 索引索引受文件系统的限制。仅可能为小写字母,不能下划线开头。同时需遵守下列规则: 不能包括 , /, *, ?, ", , |, 空格, 逗号, #7.0版本之前可以使用冒号:,但不建议使用并在7.0版本之后不再支持不能以这些字符 -, _, + 开头不能包括 . 或 …长度不能超过 255 个字符以上这些命名限制是因为当Elasticsearch使用索引名称作为磁盘上的目录名称,这些名称必须符合不同操作系统的约定。 我猜想未来可能会放开这些限制,因为我们使用uuid关联索引放在磁盘上,而不使用索引名称。 类型类型名称可以包括除了null的任何字符,不能以下划线开头。7.0版本之后不再支持类型,默认为_doc. 字段对字段命名规范及不能完全使用空格。点号可以使用,但用于对象类型,举例: "foo.bar.baz": "abc"相当于: "foo": { "bar": { "baz": "abc" } }“对象路径”必须是有效的。所以foo . . bar,这就产生了连锁反应,因为它不能解析到有效路径。类似的: "foo.": { "bar": { "baz": "abc" } }同样这个命名也是不容许的,因为以点号结尾会造成混淆。 路由路由命名也是除了空的任何字符。问题是多个路由值传入查询字符串,使用逗号分隔,如: ?routing=foo,bar 如果路由值包含逗号,会造成路由值解析错误。 总结本文简要描述了elasticsearch的命名规范。了解其命名规范可以事先确定其数据源中相关数据库的命名规范,避免不必要的转换。 |
CopyRight 2018-2019 实验室设备网 版权所有 |