Elasticsearch介绍与安装配置

Elasticsearch介绍

# 1 产生背景:大规模数据如何检索,数据安全(单点故障),备份,检索速度
# 2 Elasticsearch介绍
-是一个基于Lucene的分布式搜索和分析引擎,全文检索引擎
-Elasticsearch使用Java开发
-但是它的目的是通过简单的RESTful API来隐藏Lucene的复杂性,使得全文检索变得简单
# 3 Lucene与Elasticsearch关系
-Lucene只是java一个库----》只能java来使用
-python中集合--》只能python来用--》java,go用不了,其它语言想用,怎么做?
-做成服务---》django搭建一个服务---》对外通过restful接口  --->  get  /key  post /key=value
-基于Lucene封装 ,做成服务,通过restful来调用,使用全文检索
# 4 Elasticsearch vs solr
-solr 也是一个全文检索引擎
-跟es关系就像是mysql和oracle的关系
-传统搜索用solr多,es新兴互联网用的多
  
# 5 es核心概念
    -集群:多台服务器的集合,称为es的集群
  -节点:集群的每个服务器称为节点
  -分片:10g的数据(一个表中),对10g数据分片,分成2g,3g,5g,把这些数据,分别放在不同的节点上
  -副本:为提高查询吞吐量或实现高可用性,可以使用分片副本
  -全文检索:分词,全文检索---》可以根据关键字搜索
# 6 es跟mysql比较
mysql                              es
数据库                         索引(index)
表                               类型(type)
一条一条数据                    文档(document)
一列一列(字段)                 字段(field)(name,age)
字段属性(主键,类型,索引)       映射(mapping)
索引                           所有字段建索引(倒排索引)、
增删查改                        get、post、delete。。。

# 7 ELK是什么?
-ELK=elasticsearch+Logstash+kibana
-日志的收集和分析系统
# 8 Elasticsearch特点和优势
# 9 为什么使用es?
-我们项目如果有搜索功能,都可以用
-日志存储分析
-大数据量的存储和检索
# 10 Elasticsearch索引到底能处理多大数据
-es一个索引(数据库)可以有多个分片,一个分片是一个lucene的索引
-lucene一个索引不能处理多于21亿篇文档,或者多于2740亿的唯一词条
-理论上是可以无限加的

Elasticsearch安装配置

# 1 基于java开发的,安装jdk,windows上安装(jdk 1.8 以上),一路下一步(jdk,jre),(不需要配置环境变量了)
-java -version
# 2 安装es(去官网下载相应的版本,es+kiban. 注意版本一定要对应)
-版本问题:2 5版本  6版本  7版本  7.6.2版本最新(讲课用7版本),公司可能会用6或者6之前的版本
-haystack:不支持es,6以上版本,django上做全文检索的框架(对接es,对接solr,对接whoosh)
-whoosh-纯Python的全文搜索库,Whoosh是索引文本及搜索文本的类和函数库。它能让你开发出一个个性化的经典搜索引擎
  -6以后,不允许一个索引下建多个type(类型)---》一个数据库只能有一个表
# 3 解压到指定目录(随便,不要有空格,中文   c://soft  )
# 4 启动es
    -到es的bin路径下,elasticsearch.bat
  -Kibana 就是es的客户端(官方提供,相当于Navicat)
  -Elasticsearch-head 就是es的客户端(第三方的,相当于Navicat)
# 5 启动kibana
    -修改kibana.yml配置文件
     i18n.locale: "zh-CN" server.port:
5601 server.host: "127.0.0.1" server.name: lqz elasticsearch.hosts: ["http://localhost:9200/"] -配置跨域(改es的配置) -elasticsearch.yml http.cors.enabled: true http.cors.allow-origin: "*" -到kibana的bin路径下,kibana.bat 启动 # 6 启动Elasticsearch-head(第三方用node 写的一个es客户端) -node 环境要装好 -下载:https://github.com/mobz/elasticsearch-head -解压 -执行 npm install npm run start http://localhost:9100/ # kibana:官方提供的es客户端,主要用来做增删查改,有提示(postman,Elasticsearch-head) # Elasticsearch-head :看集群的状态,索引的状态

 

posted @ 2020-05-06 17:27  Hank·Paul  阅读(310)  评论(0)    收藏  举报