继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Elasticsearch入门

JavaEdge
关注TA
已关注
手记 395
粉丝 1.4万
获赞 1475

1 简介

Elasticsearch是一个基于Lucene库的搜索引擎
它提供了一个分布式、支持多租户的全文搜索引擎,具有HTTP Web接口和无模式JSON文档。Elasticsearch是用Java开发的,并在Apache许可证下作为开源软件发布。
官方客户端在Java.NETC#)、PHPPythonApache GroovyRuby和许多其他语言中都是可用的。
根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr,也是基于Lucene。

Elasticsearch是与名为Logstash的数据收集和日志解析引擎以及名为Kibana的分析和可视化平台一起开发的。这三个产品被设计成一个集成解决方案,称为“Elastic Stack”(以前称为“ELK stack”)。

Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。”Elasticsearch是分布式的,这意味着索引可以被分成分片,每个分片可以有0个或多个副本。每个节点托管一个或多个分片,并充当协调器将操作委托给正确的分片。再平衡和路由是自动完成的。“相关数据通常存储在同一个索引中,该索引由一个或多个主分片和零个或多个复制分片组成。一旦创建了索引,就不能更改主分片的数量。

Elasticsearch使用Lucene,并试图通过JSON和Java API提供其所有特性。它支持facetting和percolating,如果新文档与注册查询匹配,这对于通知非常有用。

另一个特性称为“网关”,处理索引的长期持久性;例如,在服务器崩溃的情况下,可以从网关恢复索引。Elasticsearch支持实时GET请求,适合作为NoSQL数据存储,但缺少分布式事务。

2 需求

想要爬取一个网站或者程序 ,希望添加搜索功能, 发现搜索工作很难:

  • 我们希望搜索解决方案要高效
  • 我们希望零配置和完全免费的搜索方案
  • 我们希望能够简单的通过json和http与搜索引擎交互
  • 我们希望我们的搜索服务器稳定
  • 我们希望能够简单的将一台服务器扩 展到上百台

3 用户

image

4 关系数据库搜索的缺点

1.无法打分
2.无分布式
3.无法解析搜索请求
4.效率低
5.分词

5 下载

image

  • brew info elasticsearch
    image

各文件位置

Data:    /usr/local/var/lib/elasticsearch/elasticsearch_sss/
Logs:    /usr/local/var/log/elasticsearch/elasticsearch_sss.log
Plugins: /usr/local/var/elasticsearch/plugins/
Config:  /usr/local/etc/elasticsearch/

启动

To have launchd start elasticsearch now and restart at login:
  brew services start elasticsearch
Or, if you don't want/need a background service you can just run:
  elasticsearch

image
image
image
image

image

Config: /usr/local/etc/kibana/
To have launchd start kibana now and restart at login:
  brew services start kibana
Or, if you don't want/need a background service you can just run:
  kibana
  • 设置ES允许数据交换
    image

  • 主机
    image

  • 设置集群的主机列表,仅限于本地单机
    image

image
image
image
image
简介
特点
image.png

内容出自:JavaEdge

打开App,阅读手记
1人推荐
发表评论
随时随地看视频慕课网APP