ES学习(一)环境搭建[多图慎入]

16 篇文章 0 订阅
4 篇文章 2 订阅

随着生产环境数据的急剧膨胀,传统关系型数据库在查询性能、扩容缩容等方面代价越来越高,我们需要一个具有扩展性好、查询性能高的NoSQL服务作为辅助[缓存]来弥补关系型数据库这方面的不足。

近年来存储器结束了双雄争霸[Mysql,Oracle]迎来了多元化的时代,如Redis、MongoDB、TiDB、Hadoop等。ElasticSearch是一个使用Restful接口基于Lucene引擎开发的去中心化的全文搜索引擎,可以将关系型数据库中一些数据作为“缓存”存储在es中以适应更复杂条件下的高性能查询。

一、环境搭建

es的官方文档做的很好,我们可以参考官方文档,我找了目前最新的稳定版本镜像安装方式: Quick start | Elasticsearch Guide [7.16] | Elastic

1.1 环境准备

准备一台机器,本人是虚拟机192.168.42.101

新建目录:/root/docker/es 并在该目录下新建文件夹config、data、plugins

1.2 下载镜像及初始化配置

//镜像下载
docker pull docker.elastic.co/elasticsearch/elasticsearch:7.16.0
docker pull docker.elastic.co/kibana/kibana:7.16.0

//创建自定义网络[可不创建]
docker network create elastic

//设置可外网访问的配置
echo "network.host: 0.0.0.0">>/root/docker/es/config/elasticsearch.yml

1.3 安装

//安装es
docker run --name es --net elastic -p 9200:9200 -p 9300:9300 \
-e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms64m -Xmx128m" \
-v /root/docker/es/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /root/docker/es/data:/usr/share/elasticsearch/data \
-v /root/docker/es/plugins:/usr/share/elasticsearch/plugins \
-d docker.elastic.co/elasticsearch/elasticsearch:7.16.0

//es启动好后安装kibana
docker run --name kibana --net elastic -p 5601:5601 \
-e "ELASTICSEARCH_HOSTS=http://es:9200" \
-d docker.elastic.co/kibana/kibana:7.16.0

1.4 外网访问测试

ps:安装时提示:IPv4 forwarding is disabled. Networking will not work.

需要修改下网络配置,否则外网会无法访问es:

vim /etc/sysctl.conf         //修改文件
net.ipv4.ip_forward=1        //修改成1,若没有则添加
systemctl restart network    //重启网络服务让配置生效

1.5 熟悉kibana

add integrations是集成第三方软件的文档,写的很全,但刚开始不需要集成什么.

我们选择自行探索explore on my own,然后选择集成旁边的Try sample data,这里有三个模板数据可以选择也可以自行导入,我选择中间这个。

等待下载完成,可以查看kibana做的漂亮的数据图表

1.6 学习使用工作台

点击左侧边栏,选择Discover 

选择第一条数据展开,查看数据详情。左边是field,右边是value

添加初始过滤条件,比如根据指定索引查询,就当是表名或者数据库名吧

查看field,可以列出数量最多的前5条,点加号加入查询该字段

这么看是不是就比较有感觉了,KQL语法查询(kibana搞出来的一套简化查询语句的语法),此处相当于 where xx = US

前面自动填充的列也不一定要填,不填就会用参数值匹配每一个字段。此处得用*作前缀查询,如果添加了分词器,则可以支持更智能的全文查询,就像用百度一样了

 点击由上角的Inspect可以查看此次查询分析,还可以查看查询语句和返回的结果json结构


这儿就是我们手动执行Lucene语句的地方了,后面练习es的语法主要就在这儿,点开侧边栏选择dev tools,这边有语句执行的profiler分析

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值