ElasticSearch入门

1:概念

------------------------------

类比mysql基本概念

mysql -> es

库  -> 索引

表  -> 类型

记录 -> 文档

字段 -> 属性

 

2:安装

-------------------------------- 

docker镜像下载:

存储和检索数据

docker pull elasticsearch:7.4.2

el可视化:

docker pull kibana:7.4.2

创建el配置文件目录

mkdir -p /mydata/elasticsearch/config

mkdir -p /mydata/elasticsearch/data

chmod -R 777 /mydata/elasticsearch/

创建es配置文件,写入配置:所有外部都能访问

echo "http.host: 0.0.0.0" >> /mydata/elasticsearch/config/elasticsearch.yml

启动容器(9200外部访问端口,9300分布式集群端口,单节点运行,xms初始内存,xmx最大内存

,-v挂载目录,-d 镜像启动)

docker run --name elasticsearch -p 9200:9200 -p 9300:9300 \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms64m -Xmx128m" \
-v /mydata/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /mydata/elasticsearch/data:/usr/share/elasticsearch/data \
-v /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-d elasticsearch:7.4.2

访问:ip:9200,出现如下代表安装启动成功

{
"name" : "236fffb1855a",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "jgdMlCOLQSqFw0KmDLJIhw",
"version" : {
"number" : "7.4.2",
"build_flavor" : "default",
"build_type" : "docker",
"build_hash" : "2f90bbf7b93631e52bafb59b3b049cb44ec25e96",
"build_date" : "2019-10-28T20:40:44.881551Z",
"build_snapshot" : false,
"lucene_version" : "8.2.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}

启动kibana(可视化工具)

docker run --name kibana -e ELASTICSEARCH_HOSTS=http://ip:9200 -p 5601:5601 -d kibana:7.4.2

启动等待时间要一小会。访问ip:5601看到界面即成功

安装支持中文的分词器 ik 

plugs目录下:

wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.4.2/elasticsearch-analysis-ik-7.4.2.zip

解压(plugs目录下新建ik文件夹解压到ik里面)

unzip elasticsearch-analysis-ik-7.4.2.zip

重启

docker restart elasticsearch

测试:

POST _analyze
{
"analyzer": "ik_smart",
"text":"小明很开心"
}

配置自定义分词字典

plugins/ik/config/IKAnalyzer.cfg

<!--用户可以在这里配置远程扩展字典 -->
<!-- <entry key="remote_ext_dict">words_location</entry> -->

words_location改为自定义字典访问地址

重启el

docker restart elasticsearch

3:基本使用

---------------------------------------

请求方式get:

/_cat/nodes:查看所有节点

/_cat/health:查看es健康状况

/_cat/master:查看主节点

/_cat/indices:查看所有索引(mysql->database)

批量导入数据地址:

https://raw.githubusercontent.com/elastic/elasticsearch/master/docs/src/test/resources/accounts.json

 

POST /bank/account/_bulk

......

倒排索引。对分词条件进行 高到底 命中分排序

posted @ 2020-05-09 10:47  心住神明  阅读(250)  评论(0编辑  收藏  举报