一、安装使用Elasticsearch

准备3个centos7节点

1、安装

1.0 各节点时间需要同步

# /usr/sbin/ntpdate s2c.time.edu.cn

1.1 由于Elasticsearch是java开发,需要先安装JDK环境

这边使用系统默认的openjdk1.7,但是还需要安装1.7的其他包组:
[root@master1 ~]# yum install java-1.7.0-openjdk-devel设置java环境变量:
[root@master1 ~]# vim /etc/profile.d/java.shexport JAVA_HOME=/usr

1.2 下载安装rpm包

官方站点:https://www.elastic.co/downloads/past-releases

[root@master1 ~]# wget https://https://download.elastic.co/elasticsearch/elasticsearch/elasticsearch-1.7.2.noarch.rpm安装
[root@master1 ~]# yum install elasticsearch-1.7.2.noarch.rpm

1.3 修改配置文件

[root@master1 ~]# cd /etc/elasticsearch/
[root@master1 elasticsearch]# vim elasticsearch.yml cluster.name: myes      #集群中的名字node.name: "master1.com"    #本地节点的名字index.number_of_shards: 5   #切片数量index.number_of_replicas: 1 #副本数量transport.tcp.port: 9300 #集群默认端口9300

1.4 启动

[root@master1 ~]# systemctl daemon-reload[root@master1 ~]# systemctl start elasticsearch.service

工作端口9200/tcp,集群检测端口9300/tcp已经监听

1.5 定义启动第二个节点

[root@master2 ~]# yum install java-1.7.0-openjdk-devel设置java环境变量:
[root@master1 ~]# scp /etc/profile.d/java.sh master2:/etc/profile.d/安装:
[root@master1 ~]# scp elasticsearch-1.7.2.noarch.rpm master2:/root/[root@master2 ~]# yum install elasticsearch-1.7.2.noarch.rpm复制master1节点的配置修改:
[root@master1 ~]# scp /etc/elasticsearch/elasticsearch.yml master2:/etc/elasticsearch/修改配置文件:
[root@master2 ~]# vim /etc/elasticsearch/elasticsearch.yml cluster.name: myesnode.name: "master2.com"启动:
[root@master2 ~]# systemctl start elasticsearch.service查看状态:

1.6 定义第三个节点

master3配置同master2,注意集群节点名字要一样,node节点改成master3.com即可

1.7 抓包观察集×××互信息

[root@master2 ~]# yum install -y tcpdump

2、 查看集群信息(只能通过curl命令与其API进行交互)

2.1 查看节点状态是否正常

[root@master1 ~]# curl -X GET 'http://10.201.106.131:9200/?preey'
{"status" : 200,"name" : "master1.com","cluster_name" : "myes","version" : {"number" : "1.7.2","build_hash" : "e43676b1385b8125d647f593f7202acbd816e8ec","build_timestamp" : "2015-09-14T09:49:53Z","build_snapshot" : false,"lucene_version" : "4.10.4"},"tagline" : "You Know, for Search"   #相当于hello world
}

2.2 cat的API显示模式

[root@master1 ~]# curl -X GET 'http://10.201.106.131:9200/_cat/'

2.2.1 显示集群节点:

[root@master1 ~]# curl -X GET 'http://10.201.106.131:9200/_cat/nodes'
master2.com 10.201.106.132 7 59 0.01 d m master2.com
master1.com 10.201.106.131 5 61 0.00 d * master1.com
master3.com 10.201.106.133 5 71 0.08 d m master3.com 

2.2.2 显示详细格式

[root@master1 ~]# curl -X GET 'http://10.201.106.131:9200/_cat/nodes?v'

heap.percent:堆内存  ???
ram.percent:内存使用量
load:负载
node.role:节点角色
master:*符号为主节点

2.2.3 查看选项帮助

[root@master1 ~]# curl -X GET 'http://10.201.106.131:9200/_cat/nodes?help'只显示需要的列:
[root@master1 ~]# curl -X GET 'http://10.201.106.131:9200/_cat/nodes?h=name,ip,port,uptime,heap,current,load'
master2.com 10.201.106.132 9300   8.1h 0.03
master1.com 10.201.106.131 9300 452.3d 0.00
master3.com 10.201.106.133 9300     8h 0.02 

2.2.4 查看主节点

[root@master1 ~]# curl -X GET 'http://10.201.106.131:9200/_cat/master'
GFN2hX0aQpySOSYqwXD8mw master1.com 10.201.106.131 master1.com
[root@master1 ~]# curl -X GET 'http://10.201.106.131:9200/_cat/master?v'
id                     host        ip             node
GFN2hX0aQpySOSYqwXD8mw master1.com 10.201.106.131 master1.com 查看集群健康状态:
[root@master1 ~]# curl -X GET 'http://10.201.106.131:9200/_cat/health?v'
epoch      timestamp cluster status node.total node.data shards pri relo init unassign pending_tasks
1523578507 08:15:07  myes    green           3         3      0   0    0    0        0             0 

2.3.5 _cluster 专用于查看集群的子项

[root@master1 ~]# curl -XGET 'http://10.201.106.131:9200/_cluster/health?v'
{"cluster_name":"myes","status":"green","timed_out":false,"number_of_nodes":3,"number_of_data_nodes":3,"active_primary_shards":0,"active_shards":0,"relocating_shards":0,"initializing_shards":0,"unassigned_shards":0,"delayed_unassigned_shards":0,"number_of_pending_tasks":0,"number_of_in_flight_fetch":0}pretty美观方式显示[root@master1 ~]# curl -XGET 'http://10.201.106.131:9200/_cluster/health?pretty'
{"cluster_name" : "myes","status" : "green","timed_out" : false,"number_of_nodes" : 3,"number_of_data_nodes" : 3,"active_primary_shards" : 0,"active_shards" : 0,"relocating_shards" : 0,"initializing_shards" : 0,"unassigned_shards" : 0,"delayed_unassigned_shards" : 0,"number_of_pending_tasks" : 0,"number_of_in_flight_fetch" : 0
}

[root@master1 ~]# curl -XGET 'http://10.201.106.131:9200/_cluster/health?level=cluster&pretty'

3、cluster API

3.1 查看集群版本

[root@master1 ~]# curl -XGET 'http://10.201.106.131:9200/_cluster/state/version?pretty'
{"cluster_name" : "myes","version" : 7
}

3.2 查看谁是主节点

[root@master1 ~]# curl -XGET 'http://10.201.106.131:9200/_cluster/state/master_node?pretty'
{"cluster_name" : "myes","master_node" : "GFN2hX0aQpySOSYqwXD8mw"
}查看所有节点:
[root@master1 ~]# curl -XGET 'http://10.201.106.131:9200/_cluster/state/nodes?pretty'
{"cluster_name" : "myes","nodes" : {"Mv0nNWAaTz6v9OD_iTinIA" : {"name" : "master2.com","transport_address" : "inet[/10.201.106.132:9300]","attributes" : { }},"GFN2hX0aQpySOSYqwXD8mw" : {"name" : "master1.com","transport_address" : "inet[/10.201.106.131:9300]","attributes" : { }},"YAY5iFmJQAGHa6OuvLaMuA" : {"name" : "master3.com","transport_address" : "inet[/10.201.106.133:9300]","attributes" : { }}}
}

3.3 查看集群统计数据

[root@master1 ~]# curl -XGET 'http://10.201.106.131:9200/_cluster/stats/?pretty'

4、节点状态信息

4.1 查看节点信息

[root@master1 ~]# curl -XGET 'http://10.201.106.131:9200/_nodes/stats/?pretty'

5、Plusins(插件)

5.1 查看ES(Elasticsearch)插件目录

[root@master1 ~]# rpm -ql elasticsearch | grep plugin
/usr/share/elasticsearch/bin/plugin
/usr/share/elasticsearch/plugins    #插件目录

5.2 列出所有插件

查看使用帮助:
[root@master1 ~]# /usr/share/elasticsearch/bin/plugin -h[root@master1 ~]# /usr/share/elasticsearch/bin/plugin -l
Installed plugins:- No plugin detected in /usr/share/elasticsearch/plugins

5.3 安装插件

直接通过URL安装插件:
[root@master1 ~]# /usr/share/elasticsearch/bin/plugin -i marvel -u http://10.201.106.1:8080/plugins/marvel-latest.zip
-> Installing marvel...
Trying http://10.201.106.1:8080/plugins/marvel-latest.zip...
Downloading .............................DONE
Installed marvel into /usr/share/elasticsearch/plugins/marvel列出安装的插件:
[root@master1 ~]# /usr/share/elasticsearch/bin/plugin -l
Installed plugins:- marvel本地安装方法:
下载目录文件(不太好用):
wget -c -r -np -k -L -p http://10.201.106.1:8080/plugins/    [root@master1 plugins]# pwd
/root/10.201.106.1:8080/plugins
[root@master1 plugins]# ls
bigdesk-latest.zip             index.html
elasticsearch-head-latest.zip  ~login
elasticsearch-kopf-master.zip  marvel-latest.zip
将以上文件mv到root家目录下本地安装bigdesk插件:
[root@master1 ~]# /usr/share/elasticsearch/bin/plugin -i bigdesk -u file:///root/bigdesk-latest.zip查看:
[root@master1 ~]# /usr/share/elasticsearch/bin/plugin -l
Installed plugins:- marvel- bigdesk安装其他插件:
[root@master1 ~]# /usr/share/elasticsearch/bin/plugin -i head -u file:///root/elasticsearch-head-latest.zip[root@master1 ~]# /usr/share/elasticsearch/bin/plugin -i kopf -u file:///root/elasticsearch-kopf-master.zip

5.4 访问插件

http://10.201.106.131:9200/_plugin/marvel

http://10.201.106.131:9200/_plugin/bigdesk

http://10.201.106.131:9200/_plugin/head

http://10.201.106.131:9200/_plugin/kopf

6、索引

6.1 查看刚才插件安装自动生成的索引

[root@master1 ~]# curl -XGET 'http://10.201.106.131:9200/_cat/indices?v'
health status index              pri rep docs.count docs.deleted store.size pri.store.size
green  open   .marvel-2018.04.13   1   1        435            0      3.9mb          2.1mb
green  open   .marvel-kibana       1   1          1            0      6.5kb          3.2kb 

6.2 创建索引下的文档

郭靖同学,性别男,年龄25,课程:降龙十八掌
[root@master1 ~]# curl -XPUT '10.201.106.131:9200/students/class1/1?pretty' -d '
> {
> "first_name":"Jing",
> "last_name":"Guo",
> "gender":"Male",
> "age":25,
> "courses":"Xianglong Shiba Zhang"
> }'
{"_index" : "students","_type" : "class1","_id" : "1","_version" : 1,"created" : true
}添加第二个同学:
[root@master1 ~]# curl -XPUT '10.201.106.131:9200/students/class1/2?pretty' -d '
> {
> "first_name":"Rong",
> "last_name":"Huang",
> "gender":"Female",
> "age":23,
> "courses":"Luoying Shenjian"
> }'
{"_index" : "students","_type" : "class1","_id" : "2","_version" : 1,"created" : true
}

6.3 显示刚才创建的索引下的文档

[root@master1 ~]# curl -XGET 'localhost:9200/students/class1/1?pretty'
{"_index" : "students","_type" : "class1","_id" : "1","_version" : 1,"found" : true,"_source":
{
"first_name":"Jing",
"last_name":"Guo",
"gender":"Male",
"age":25,
"courses":"Xianglong Shiba Zhang"
}
}查看第二个同学:
[root@master1 ~]# curl -XGET 'localhost:9200/students/class1/2?pretty'put重复ID,会被替换。建议生产环境,使用ID生成器

6.4 更新文档

PUT方法会覆盖原有文档:PUT方法会覆盖原有文档:

修改黄蓉的年龄:
[root@master1 ~]# curl -XPOST 'localhost:9200/students/class1/2/_update?pretty' -d '
{
"doc":{"age":22}
}'
{"_index" : "students","_type" : "class1","_id" : "2","_version" : 2
}查看:
[root@master1 ~]# curl -XGET 'localhost:9200/students/class1/2?pretty'
{"_index" : "students","_type" : "class1","_id" : "2","_version" : 2,"found" : true,"_source":{"first_name":"Rong","last_name":"Huang","gender":"Female","age":22,"courses":"Luoying Shenjian"}

6.5 删除文档

[root@master1 ~]# curl -XDELETE 'localhost:9200/students/class1/2'
{"found":true,"_index":"students","_type":"class1","_id":"2","_version":3}[root@master1 ~]# 查看已经没找到ID2的文档信息:
[root@master1 ~]# curl -XGET 'localhost:9200/students/class1/2?pretty'
{"_index" : "students","_type" : "class1","_id" : "2","found" : false
}

6.6 删除整个索引

查看有哪些索引:
[root@master1 ~]# curl -XGET 'localhost:9200/_cat/indices?v'
health status index              pri rep docs.count docs.deleted store.size pri.store.size
green  open   .marvel-2018.04.13   1   1       4942            0     31.5mb           16mb
green  open   students             5   1          1            0      7.8kb          3.9kb
green  open   .marvel-kibana       1   1          1            0      6.5kb          3.2kb 删除students索引:
[root@master1 ~]# curl -XDELETE 'localhost:9200/students'
{"acknowledged":true}再查看索引,students已经没了:
[root@master1 ~]# curl -XGET 'localhost:9200/_cat/indices?v'

6.7 重新创建文档

[root@master1 ~]# curl -XPUT '10.201.106.131:9200/students/class1/1?pretty' -d '
> {
> "first_name":"Jing",
> "last_name":"Guo",
> "gender":"Male",
> "age":25,
> "courses":"Xianglong Shiba Zhang"
> }'[root@master1 ~]# curl -XPUT '10.201.106.131:9200/students/class/2?pretty' -d '
> {
> "first_name":"Rong",
> "last_name":"Huang",
> "gender":"Female",
> "age":23,
> "courses":"Luoying shenjian"
> }'

7、数据查询

7.1 列出索引下的所有文档

全量查询,较少使用
[root@master1 ~]# curl -XGET 'localhost:9200/students/_search?pretty'qeury body查询方式,能编写更为复杂的查询:
[root@master1 ~]# curl -XGET 'localhost:9200/students/_search?pretty' -d '
> {
> "query": { "match_all": {} }
> }'

7.2 查询所有索引

数据特别多
[root@master1 ~]# curl -XGET 'localhost:9200/_search?pretty'/_search:所有索引;
/INDEX_NAME/_search:单索引;
/INDEX1,INDEX2/_search:多索引;
/s*,t*/_search:通配符查找索引
/students/class1/_search:单类型搜索
/students/class1,class2/_search:多类型搜索

7.3 几种查询方式

1、GET /_search?q='Xianglong'
2、GET /_search?q='Xianglong Shiba Zhang'
3、GET /_search?q=courses:'Xianglong Shibao Zhang'
4、GET /_search?q=courses:'Xianglong'前两个:表示在_all域搜索;
后两个:在指定的域上搜索;

7.4 几种查询方式测试

删除
[root@master1 ~]# curl -XDELETE 'localhost:9200/students/class/1'[root@master1 ~]# curl -XDELETE 'localhost:9200/students/class/2'
{"found":true,"_index":"students","_type":"class","_id":"2","_version":2}[root@master1 ~]# 添加:
[root@master1 ~]# curl -XPUT 'localhost:9200/students/class1/1?pretty' -d '
{
"name": "Guo Jing",
"gender": "Male",
"age": 25,
"class": "Gai Bang"
}'[root@master1 ~]# curl -XPUT 'localhost:9200/students/class1/2?pretty' -d '
{
"name": "Yang Guo",
"gender": "Male",
"age": 17,
"class": "Gumu Pai"
}'
{"_index" : "students","_type" : "class1","_id" : "2","_version" : 1,"created" : true
}查询:
[root@master1 ~]# curl -XGET 'localhost:9200/students/_search?q="Guo"'
{"took":36,"timed_out":false,"_shards":{"total":5,"successful":5,"failed":0},"hits":{"total":2,"max_score":0.11506981,"hits":[{"_index":"students","_type":"class1","_id":"1","_score":0.11506981,"_source":
{
"name": "Guo Jing",
"gender": "Male",
"age": 25,
"class": "Gai Bang"
}},{"_index":"students","_type":"class1","_id":"2","_score":0.11506981,"_source":
{
"name": "Yang Guo",
"gender": "Male",
"age": 17,
"class": "Gumu Pai"添加
[root@master1 ~]# curl -XPUT 'localhost:9200/students/class1/3?pretty' -d '
{
"name": "Huang Rong",
"gender": "Female",
"age": 22,
"parent": "Guo Xiaotian"
}'
{"_index" : "students","_type" : "class1","_id" : "3","_version" : 1,"created" : true
}只要域中带guo,都能搜出来:
[root@master1 ~]# curl -XGET 'localhost:9200/students/_search?q="Guo"'
{"took":12,"timed_out":false,"_shards":{"total":5,"successful":5,"failed":0},"hits":{"total":3,"max_score":0.11506981,"hits":[{"_index":"students","_type":"class1","_id":"1","_score":0.11506981,"_source":
{
"name": "Guo Jing",
"gender": "Male",
"age": 25,
"class": "Gai Bang"
}},{"_index":"students","_type":"class1","_id":"2","_score":0.11506981,"_source":
{
"name": "Yang Guo",
"gender": "Male",
"age": 17,
"class": "Gumu Pai"
}},{"_index":"students","_type":"class1","_id":"3","_score":0.11506981,"_source":
{
"name": "Huang Rong",
"gender": "Female",
"age": 22,
"parent": "Guo Xiaotian"
}}]}}[只搜索Guo Jing
[root@master1 ~]# curl -XGET 'localhost:9200/students/_search?q="Guo%20Jing"'{"took":11,"timed_out":false,"_shards":{"total":5,"successful":5,"failed":0},"hits":{"total":1,"max_score":0.23013961,"hits":[{"_index":"students","_type":"class1","_id":"1","_score":0.23013961,"_source":
{
"name": "Guo Jing",
"gender": "Male",
"age": 25,
"class": "Gai Bang"查询name=Guo
[root@master1 ~]# curl -XGET 'localhost:9200/students/_search?q=name:"Guo"'
{"took":30,"timed_out":false,"_shards":{"total":5,"successful":5,"failed":0},"hits":{"total":2,"max_score":0.19178301,"hits":[{"_index":"students","_type":"class1","_id":"1","_score":0.19178301,"_source":
{
"name": "Guo Jing",
"gender": "Male",
"age": 25,
"class": "Gai Bang"
}},{"_index":"students","_type":"class1","_id":"2","_score":0.19178301,"_source":
{
"name": "Yang Guo",
"gender": "Male",
"age": 17,
"class": "Gumu Pai"
}}]}}[再添加一个人:
[root@master1 ~]# curl -XPUT 'localhost:9200/students/class1/4?pretty' -d '
> {
> "name": "GuoXiang",
> "gender": "Female",
> "age": 10,
> "class": "Emei Pai"
> }'再次搜索Guo,没有郭襄(切词后的结果):
[root@master1 ~]# curl -XGET 'localhost:9200/students/_search?q=name:"Guo"'
{"took":18,"timed_out":false,"_shards":{"total":5,"successful":5,"failed":0},"hits":{"total":2,"max_score":0.19178301,"hits":[{"_index":"students","_type":"class1","_id":"1","_score":0.19178301,"_source":
{
"name": "Guo Jing",
"gender": "Male",
"age": 25,
"class": "Gai Bang"
}},{"_index":"students","_type":"class1","_id":"2","_score":0.19178301,"_source":
{
"name": "Yang Guo",
"gender": "Male",
"age": 17,
"class": "Gumu Pai"
}}]}}只搜Guo Jing:
[root@master1 ~]# curl -XGET 'localhost:9200/students/_search?q=name:"Guo%20Jing"'
{"took":21,"timed_out":false,"_shards":{"total":5,"successful":5,"failed":0},"hits":{"total":1,"max_score":0.38356602,"hits":[{"_index":"students","_type":"class1","_id":"1","_score":0.38356602,"_source":
{
"name": "Guo Jing",
"gender": "Male",
"age": 25,
"class": "Gai Bang"
}}]}}[root@master1 ~]# 

7.5 年龄搜索测试

[root@master1 ~]# curl -XGET 'localhost:9200/students/_search?q=25'
{"took":10,"timed_out":false,"_shards":{"total":5,"successful":5,"failed":0},"hits":{"total":1,"max_score":0.11506981,"hits":[{"_index":"students","_type":"class1","_id":"1","_score":0.11506981,"_source":
{
"name": "Guo Jing",
"gender": "Male",
"age": 25,
"class": "Gai Bang"
}}]}}再加一个人,声明25人之一
[root@master1 ~]# curl -XPUT 'localhost:9200/students/class1/5' -d '
> {
> "name": "Xiaolong Nv",
> "gender": "Female",
> "age": 18,
> "description": "one of 25"
> }'再搜索25:
[root@master1 ~]# curl -XGET 'localhost:9200/students/_search?q=25'
{"took":12,"timed_out":false,"_shards":{"total":5,"successful":5,"failed":0},"hits":{"total":2,"max_score":0.11506981,"hits":[{"_index":"students","_type":"class1","_id":"5","_score":0.11506981,"_source":
{
"name": "Xiaolong Nv",
"gender": "Female",
"age": 18,
"description": "one of 25"
}},{"_index":"students","_type":"class1","_id":"1","_score":0.11506981,"_source":
{
"name": "Guo Jing",
"gender": "Male",
"age": 25,
"class": "Gai Bang"
}}]}}[root@master1 ~]# 

7.6 通过marvel插件链接插件

浏览器访问
http://10.201.106.131:9200/_plugin/marvel/sense/

8、映射

8.1 查看指定类型的mapping

[root@master1 ~]# curl 'localhost:9200/students/_mapping/class1?pretty'
{"students" : {"mappings" : {"class1" : {"properties" : {"age" : {"type" : "long"},"class" : {"type" : "string"},"courses" : {"type" : "string"},"description" : {"type" : "string"},"first_name" : {"type" : "string"},"gender" : {"type" : "string"},"last_name" : {"type" : "string"},"name" : {"type" : "string"},"parent" : {"type" : "string"}}}}}
}

转载于:https://blog.51cto.com/zhongle21/2103449

Elasticsearch杂记(1)相关推荐

  1. Elasticsearch学习之路(一)

    一.前序 1.1正向索引和倒排索引 ** 正向索引通常用于数据库中,在搜索引擎领域使用的最多的就是倒排索引 ** 通过例子表示: 我爱编程, 我爱编程,我是小码农 1.1.1 正向索引 假设我们使用m ...

  2. 2021年大数据ELK(二十五):添加Elasticsearch数据源

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 添加Elasticsearch数据源 一.Kibana索引模式 添加Elast ...

  3. 2021年大数据ELK(十九):使用FileBeat采集Kafka日志到Elasticsearch

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 使用FileBeat采集Kafka日志到Elasticsearch 一.需求分 ...

  4. 2021年大数据ELK(十七):Elasticsearch SQL 订单统计分析案例

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 订单统计分析案例 一.案例介绍 二.创建索引 三.导入测试数据 四.统计不同支 ...

  5. 2021年大数据ELK(十六):Elasticsearch SQL(职位查询案例)

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 职位查询案例 一.查询职位索引库中的一条数据 二.将SQL转换为DSL 三.职 ...

  6. 2021年大数据ELK(十五):Elasticsearch SQL简单介绍

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 Elasticsearch SQL简单介绍 一.SQL与Elasticsear ...

  7. 2021年大数据ELK(十三):Elasticsearch编程(添加职位数据)

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 Elasticsearch编程 一.添加职位数据 1.初始化客户端连接 2.实 ...

  8. 2021年大数据ELK(十二):Elasticsearch编程(环境准备)

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 Elasticsearch编程 一.环境准备 1.准备IDEA项目结构 2.准 ...

  9. 2021年大数据ELK(十一):Elasticsearch架构原理

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 Elasticsearch架构原理 一.Elasticsearch的节点类型 ...

最新文章

  1. 成功解决没有tf.nn.rnn_cell属性
  2. app调html页面,app界面管理(风格色调).html
  3. linux制作成后台服务,把dotnetcore 控制台app设置成linux后台服务
  4. iframe 跨域 cookies操作
  5. 深度优先搜索——单词方阵(洛谷 P1101)
  6. [Java]知乎下巴第3集:来人啊快把知乎的答案装到篮子里去
  7. Unity3D游戏开发之换装系统的实现
  8. jeecgboot 查询_Jeecg-Boot 技术文档
  9. 计算机无法安装应用,电脑没法安装软件?教您解决电脑没法安装软件
  10. PHY寄存器驱动调试总结
  11. 数据结构 严蔚敏 第八章 排序 期末复习总结
  12. 国际商务谈判 简答题
  13. 正大期货:期货交易常用的软件
  14. Java几种设计模式
  15. 英国手机漫谈之签手机喽!
  16. Kindeditor使用常见问题
  17. 基于Android的短信应用开发(三)——读取手机短信
  18. elementui表格自定义合并单元格根据相同值合并单元格;指定列合并;解决自定义合并后单元格样式错乱
  19. 什么是像ANSI和Unicode这样的字符编码,它们有何不同?
  20. webpack-chain项目中文翻译

热门文章

  1. comsol圆柱形永磁体_几组特殊形状永磁体的磁场及梯度COMSOL分析
  2. 基于灰狼优化算法的TSP搜索算法
  3. 最大值与最小值的算法分析
  4. MOOC清华《程序设计基础》第1章第5题:银行存款问题
  5. android 动画失效,Activity退出动画无效的解决方案
  6. 【2021软件创新实验室暑假集训】SpringMVC框架(设计原理、简单使用、源码探究)
  7. 如何评估流程管理的紧迫度
  8. 怎样调用星图地球数据云的开发接口?
  9. 【特别篇】- 常见学习问题的解决
  10. 中东政策_中东游戏的简要历史