1.介绍
ElasticSearch vs Solr 总结
(1)es基本是开箱即用,非常简单。Solr安装略微复杂一丢丢,可关注(solr6.6教程-基础环境搭建(一))
(2)Solr 利用 Zookeeper 进行分布式管理,而 Elasticsearch 自身带有分布式协调管理功能。
(3)Solr 支持更多格式的数据,比如JSON、XML、CSV,而 Elasticsearch 仅支持json文件格式。
(4)Solr 官方提供的功能更多,而 Elasticsearch 本身更注重于核心功能,高级功能多有第三方插件提供,例如图形化界面需要kibana友好支撑
(5)Solr 查询快,但更新索引时慢(即插入删除慢),用于电商等查询多的应用;
ES建立索引快(即查询慢),即实时性查询快,用于facebook新浪等搜索。
Solr 是传统搜索应用的有力解决方案,但 Elasticsearch 更适用于新兴的实时搜索应用。
(6)Solr比较成熟,有一个更大,更成熟的用户、开发和贡献者社区,而 Elasticsearch相对开发维护者较少,更新太快,学习使用成本较高。
默认情况下,在Elasticsearch中的每个索引被分配5个主分片和一份拷贝,这意味着假设你的集群中至少有两个节点,你的索引将会有5个主分片和5个复制分片(每个主分片对应一个复制分片,5个复制分片组成一个完整拷贝),总共每个索引有10个分片。
2.安装
2.1.Ubuntu安装
https://www.elastic.co/downloads/past-releases
下载elasticsearch-6.3.2.tar.gz
解压tar -xf elasticsearch-6.3.2.tar.gz
运行cd elasticsearch-6.3.2/bin
./elasticsearch
报错:
Java HotSpot™ 64-Bit Server VM warning: INFO: os::commit_memory(0x00000000c5330000, 986513408, 0) failed; error=‘Cannot allocate memory’ (errno=12)
Sudo shutdown
虚拟机修改内存为2g
或减小内存
Cd config
Vim jvm.options
改为512m
报错:
max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
sudo vim /etc/security/limits.conf
添加如下内容:
- soft nofile 65536
- hard nofile 131072
- soft nproc 2048
- hard nproc 4096
vi /etc/security/limits.d/90-nproc.conf
找到如下内容:
- soft nproc 1024
#修改为 - soft nproc 4096
保存, 重启虚拟机
报错:
max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]
原因:最大虚拟内存太小
Sudo vi /etc/sysctl.conf
添加vm.max_map_count=655360
Sudo sysctl -p 重启
从配置文件“/etc/sysctl.conf”加载内核参数设置
关闭es, 启动es
2.2.启动
不能用root启动, 必须用普通用户启动
Cd bin
./elasticsearch -h 查看命令说明
./elasticsearch 前台启动, ctrl+c或者关闭窗口就关闭服务了
./elasticsearch -d 后台启动
Jps查看elasticsearch进程
2.3.访问
2.3.1.Es首页
虚拟机打开浏览器, 输入localhost:9200, 可以访问
或者
curl http://localhost:9200
外网访问不了
vi elasticsearch-2.3.5/config/elasticsearch.yml
#设定绑定的ip
network.host: 0.0.0.0
Chrome可以访问
360浏览器会自动变成下载
2.4.关闭
Ps -ef|gre