ES开启登录及SQL插件支持

     根据线上实际业务情况,当进行两个表关联查询时,笛卡尔运算超过100W,SQL不做一些调整的话,MYSQL的响应就会变慢。当然,如果换成单表查询,在目前这个数量集,那肯定也是没有问题的。但是在程序层面,要增加的逻辑就会比较多,比如数据的merge处理,排序处理都是要考虑的。与其耗费精力在这上面,还不如引入ES,将所有复杂条件全部入索引库,在检索数据之前,把条件检索出来再与DB进行交互。为了实现这一目标,需要先解释一下安装的名词:

ES的版本:elasticsearch-7.10.2 索引数据存储层

Kibana的版本:kibana-7.10.2-linux-x86_64 ES数据展现层,提供基本的界面查询

OS:linux-64 整个运行环境是LINUX64位

ES的SQL查询支持:opendistro-1.12.0.0 这是AWS针对ES提供的SQL查询支持插件,你可以像写SQL一样针对ES的数据库进行查询,支持大部分的SQL语法。

首先安装ES,首先去官网下载elasticsearch-7.10.2-linux-x86_64.tar.gz及kibana-7.10.2-linux-x86_64.tar.gz,这两个安装包的版本一定要匹配,解压之后,主要是配置方面需要说明。

ES的地址及端口

认证配置及内部通讯加密开启,不然你的ES就是裸奔状态


内部通讯开启:keystore.path及truststore.path的路径是相对于是在es的config路径下面,现在讲一下如何生成这个文件

首先需要制作一个CA证书:bin/elasticsearch-certutil ca

使用这个ca生成证书和私钥:bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12

在config下面新建certs目录,将生成的文件直接拷贝过去。

认证登录开启:执行bin/elasticsearch-setup-passwords interactive进入账号密码设置,默认就是elastic,密码建议使用字母,数字,特殊字符混合组成,一直回车输入就行了。里面依次创建ES的内部管理账号,其中包含Kibana的登录密码。

然后安装SQL解析的插件,地址为https://opendistro.github.io/for-elasticsearch-docs/docs/install/plugins/#install-plugins,里面有插件包plugin


下载之后,参照ES插件安装命令就可以了,重启。

最后配置Kibana登录ES,主要就是把 刚才在ES配置的账号弄好,


重启Kibana, 使用账号登录


你可能感兴趣的:(ES开启登录及SQL插件支持)