码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Elasticsearch初探


    文章目录

      • es初识
      • 安装es
      • 安装 ElasticSearch-head
      • 安装kibana
        • 了解es基本概念
      • ik分词器
      • 下一节将学习kibana简单操作es

    es初识

    官方网址:https://www.elastic.co/cn/products/elasticsearch
    Github:https://github.com/elastic/elasticsearch
    总结:
    1、elasticsearch是一个基于Lucene的高扩展的分布式搜索服务器,支持开箱即用。
    2、elasticsearch隐藏了Lucene的复杂性,对外提供Restful 接口来操作索引、搜索。

    突出优点:
    1.扩展性好,可部署上百台服务器集群,处理PB级数据。
    2.近实时的去索引数据、搜索数据。
    es和solr选择哪个?
    1.如果你公司现在用的solr可以满足需求就不要换了。
    2.如果你公司准备进行全文检索项目的开发,建议优先考虑elasticsearch,因为像Github这样大规模的搜索都在用它。

    安装es

    发现docker是真的好用,一些基础服务都可以通过docker直接安装,方便快捷高效;下载下面链接都有,超级好用:
    docker还不会的同学点我

    安装 ElasticSearch-head

    推荐直接在谷歌的应用商店里面下载ElasticSearch Head;
    方便快捷:
    在这里插入图片描述
    直接点击安装的插件即可:
    在这里插入图片描述

    安装kibana

    官网下载地址版本是7-14:https://www.elastic.co/cn/downloads/past-releases/kibana-7-14-0
    我用的是7-7的:下载地址:https://www.elastic.co/cn/downloads/past-releases/kibana-7-7-0
    我用的阿里网盘不允许分析这种类型的文件…自己下载吧
    文件目录比较简单:
    修改配置文件在config/kibana.yml下:
    端口,es地址,中文;

    server.port: 5601
    elasticsearch.hosts: ["http://localhost:9200"]
    i18n.locale: "zh-CN"
    
    • 1
    • 2
    • 3

    然后终端直接进入bin目录执行 ./kibana即可执行,kibana版本跟es版本最好对应,否则可能启动失败;
    启动成功访问:http://localhost:5601/app/kibana进入kibana界面;

    进入开发工具:
    在这里插入图片描述

    了解es基本概念

    1. 索引(ElasticSearch)包多个分片
    2. 字段类型(映射)字段类型映射(字段是整型,还是字符型…)
    3. 文档 (几乎已经废除了)
    4. 分片(Lucene索引,倒排索引)

    可以把es当做mysql进行学习,前期理解就很明了

    mysqles
    数据库database索引 indices
    表(tables)文档 types es已经弃用,相当于一个库就一个表就好了
    行 rows文档documents
    字段 columnsfields

    es数据跟mysql数据差不多吧:
    在这里插入图片描述

    elasticsearch在后台把每个索引划分成多个分片,每分分片可以在集群中的不同服务器间迁移
    一个分片相当于一个Lucene索引,所以一个索引包含多个lucene索引,lucene索引其实就是一个包含倒排索引的文件目录

    • 什么是倒排索引

    正排索引:文档 —> 单词
    倒排索引:单词 —> 文档
    举个栗子:
    在这里插入图片描述
    倒排索引列表:
    在这里插入图片描述

    注意:elasticsearch在创建索引的时候,默认创建5个分片,一份副本,这个数据可以进行修改。分片的数量只能在创建索引的时候进行指定,不能在后期进行修改,备份可以进行动态修改的。那么我们怎么进行分片,分多少片呢? 分片不是分的越多越好,也不是越少越好,es推荐的最大jvm堆空间是30-32G,所以把分片的最大容量设置为30G,然后根据数据大小进行估算,如果有180G的数据,那就分六片,或者7片,因为后期不能修改,所以当数据增长起来的,需要重新进行分片的时候,也只能重新新建索引,并对数据重新索引.

    单机的ElasticSearch服务,也算个集群,且默认集群名为elasticsearch,我的是docker启动的默认是docker-cluste
    在这里插入图片描述

    ik分词器

    https://github.com/medcl/elasticsearch-analysis-ik/releases?page=6
    我的是docker,直接进入到docker命令行里面
    在这里插入图片描述
    然后安装ik分词器:

     docker exec -it 3ce9d7362ec615e80d254e5d6ba1e2936ca521b368d007d51db6a1187f1de627 /bin/sh
    
    cd plugins/
    
    elasticsearch-plugin install  https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.7.0/elasticsearch-analysis-ik-7.7.0.zip
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述
    安装完成重启;测试ik分词器:

    在这里插入图片描述

    下一节将学习kibana简单操作es

  • 相关阅读:
    1.HTML表格跨行、跨列操作
    9.16-学习
    RedissonClient中Stream流的简单使用
    图片码二次渲染绕过
    十大经典排序算法
    交通物流模型 | Python实现基于张量分解的交通流量时空模式挖掘(出租车车载GPS数据、公交卡刷卡数据、POI的分布数据)
    C语言课程设计|学生成绩管理系统(含完整代码)
    光储并网直流微电网simulink仿真模型,光伏采用mppt实现最大功率输出研究
    C++动态内存分配
    通过nginx代理:在本地浏览器访问远程服务器某目录里面的指定文件内容(如html),及修改配置后重启nginx方法
  • 原文地址:https://blog.csdn.net/qq_38366063/article/details/118764350
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号