Elasticsearch 入门
Elasticsearch 入门
简介
Elasticsearch 是一个分布式、RESTful 风格的搜索和数据分析引擎。
本地安装
在 CentOS 中可以使用如下命令配置软件源
1 |
|
写入如下配置项即可
1 |
|
在写入完成后可以使用如下命令安装软件
1 |
|
- 配置
软件配置在 /etc/elasticsearch
目录中。
默认日志在 /var/log/elasticsearch
目录中。
- JDK 配置建议
Xms 和 Xms 设置成一样。
XMx 不要超过机器内存的 50 %,不要超过 30 GB。
- 启动服务
1 |
|
- 关闭服务
1 |
|
容器化安装
- 编写如下 Docker Compose 文件
1 |
|
- 使用如下命令启动运行
1 |
|
注:建议与 kibana 一起部署,详情参见 kibana 章节。
生产环境配置推荐
- 开启 X-Pack 用户管理机制
- 使用自签名 SSL 证书(https)保证集群内部沟通加密
- 设置 3 个主节点做故障冗余
- 日志类的应用,单个分片不要大于 50 GB
- 搜索类的应用,单个分片不要超过 20 GB
基本命令整理
查看集群信息
1 |
|
索引操作
1 |
|
索引模板
1 |
|
字段映射:
1 |
|
数据类型:
- aggregate_metric_*
- alias
- arrays
- binary
- boolean
- completion
- date
- date_nanos
- dense_vector
- flattened
- geo_point
- geo_shape
- histogram
- ip
- join
- keyword
- nested
- numeric
- long
- integer
- short
- byte
- double
- float
- half_float
- scaled_float
- unsigned_long
- percolator
- point
- integer_range
- float_range
- long_range
- double_range
- date_range
- ip_range
- rank_feature
- rank_features
- search_as_you_type
- orientation
- shape
- orientation
- ignore_malformed
- ignore_z_value
- coerce
- text
- version
数据操作
1 |
|
查询操作:
注:此处内容为查询接口输入参数。
1 |
|
聚合操作:
1 |
|
例如:
1 |
|
按照时间聚合:
1 |
|
常见问题
索引不可写入
使用如下方式修改配置即可
POST
: http://<host>:<port>/_settings
1 |
|
注:若修改之后不生效请检查磁盘剩余空间。
参考资料
Elasticsearch 入门
https://wangqian0306.github.io/2020/elasticsearch/