首页 > 其他分享 >Elasticsearch入门

Elasticsearch入门

时间:2023-04-11 23:00:32浏览次数:48  
标签:入门 Kibana 索引 elasticsearch 文档 Elasticsearch 节点

1、Elasticsearch的认识

1.1 Elasticsearch概述及其应用领域介绍

当我们思考如何在海量数据中快速查找数据并获取准确结果时,Elasticsearch就起到了非常重要的作用。Elasticsearch是一种分布式的搜索引擎,可以用于全文检索、结构化检索和数据分析等领域。
具体来说,它的应用领域包括但不限于以下几个方面:
1.电商网站
电商网站需要提供快速的搜索和过滤功能,以便顾客快速找到自己所需要的商品,而Elasticsearch可以提供高效灵活的搜索结果。另外,电商网站也需要对商品进行分类、推荐等操作,Elasticsearch也可以针对这些需求提供有效的解决方案。
2.新闻媒体
在新闻媒体中,实时的搜索和数据分析非常重要。Elasticsearch不仅可以实现全文检索、数据过滤,还可以结合其他工具,如Kibana和Logstash等,实现对新闻数据的实时分析和展示。
3.日志分析
日志分析可以让软件开发人员识别和解决系统问题。在这种情况下,Elasticsearch可以处理和存储大量数据,并可以实现更高级的搜索、过滤、聚合等操作,以便使数据提供更多维度的分析视角。
4.网络安全领域
网络安全领域需要对大量的日志数据进行大数据分析,以便发现和防止黑客攻击。Elasticsearch可以快速搜索和过滤请求,同时提供高级聚合和可视化工具,在网络安全领域具有良好的应用前景。
综上所述,Elasticsearch由于其高效快速和易扩展等特点,已经成为了诸多行业中优秀的开源软件,相信在未来也会被更广泛的应用到越来越多的领域中。

1.2 Elasticsearch核心概念

1.节点(Node)
节点是Elasticsearch集群中的一个单独的服务器,可以容纳整个集群的一部分数据。它实际上是一个运行着Elasticsearch的服务器实例。
2.索引(Index)
索引是我们存储的文档的逻辑容器,一个索引中可以包含多个文档。每个文档都有一个唯一的ID,可以通过这个ID来标识和访问特定的文档。
3.分片(Shard)
分片是将索引分成多个小块的过程,这样每个节点就可以处理自己节点上的索引部分,从而达到分布式存储和查询的目的。
4.复制(Replica)
复制是将分片的副本存储在另一个节点上的过程。复制提高了集群的可用性,因为如果一个节点宕机,其它节点上的分片可以继续处理请求,并在恢复节点后重新分配数据。
5.文档(Document)
文档是Elasticsearch中的最小数据单元,可以是JSON、XML、HTML等格式。每个文档都有一个唯一的ID,并属于一个索引。
6.类型(Type)
从Elasticsearch 7.0开始,所谓类型已经被删除。如果之前使用了不同类型的文档,现在需要将它们重新建立为不同的索引(eg: products、users),以便将文档进行分类。
7.映射(Mapping)
映射定义了索引中文档的结构和字段类型。它决定了我们按照哪些字段进行索引和查询,需要根据实际需求创建映射。
8.查询(Query)
查询是向 Elasticsearch 提出请求的方式。它允许我们按照指定的条件搜索文档,并根据查询条件生成相关的分数。

1.3 Elasticsearch环境搭建

  1. 安装Java
    Elasticsearch和Kibana都需要Java运行时环境,请确保您已经安装了Java 8或以上版本。您可以使用以下命令检查Java版本:
java -version

如果Java未安装,则可以使用以下命令在服务器上安装Java 8:

sudo apt update
sudo apt install openjdk-8-jdk
  1. 下载并解压Elasticsearch
    您可以从Elasticsearch的官方网站 https://www.elastic.co/downloads/elasticsearch 下载最新版本的Elasticsearch。将下载的文件解压缩到所选目录(我们将其命名为/usr/local/elasticsearch),然后进入该目录。
  2. 配置Elasticsearch
    打开目录/usr/local/elasticsearch/config,并编辑elasticsearch.yml文件(您也可以创建自己的yml文件,并将其设置为配置文件)。在其中添加以下行,以便配置您的集群和节点名称:
cluster.name: my-cluster
node.name: my-node
  1. 启动Elasticsearch
    通过运行下面的命令来启动Elasticsearch:
cd /usr/local/elasticsearch/bin
./elasticsearch

现在,您的Elasticsearch节点正在运行,并在默认端口9200上提供服务。在浏览器中前往http://localhost:9200,您应该可以看到显示Elasticsearch状态的JSON响应。

  1. 下载并解压Kibana
    您可以从Kibana的官方网站 https://www.elastic.co/downloads/kibana 下载最新版本的Kibana。将下载的文件解压缩到所选目录(我们将其命名为/usr/local/kibana),然后进入该目录。
  2. 配置Kibana
    打开目录/usr/local/kibana/config,并编辑kibana.yml文件。在其中添加以下行,以便Kibana可以找到Elasticsearch:
server.host: "localhost"
elasticsearch.hosts: ["http://localhost:9200"]
  1. 启动Kibana
    通过运行下面的命令启动Kibana:
cd /usr/local/kibana/bin
./kibana

现在,您的Kibana应用程序正在运行,您可以前往http://localhost:5601跳转到Kibana控制台。

标签:入门,Kibana,索引,elasticsearch,文档,Elasticsearch,节点
From: https://www.cnblogs.com/mugo/p/17308198.html

相关文章

  • Semantic Kernel 入门系列:
    语义的归语义,语法的归语法。基础定义最基本的NativeFunction定义只需要在方法上添加SKFunction的特性即可。usingMicrosoft.SemanticKernel.SkillDefinition;usingMicrosoft.SemanticKernel.Orchestration;namespaceMySkillsDirectory;publicclassMyCSharpSkill......
  • SpringBoot整合ElasticSearch8.x 踩坑记录
    背景jdk版本openjdk-17springboot版本2.6.11pom.xml<!--ElasticSearch提供的依赖--><dependency><groupId>co.elastic.clients</groupId><artifactId>elasticsearch-java</artifactId><version>8.6.2</version>......
  • delphi入门-控制台console application
    1programProject1;2usesWindows;3begin4MessageBox(0,PChar('Ok!'),PChar('Title'),0);5end.programProject1;{$APPTYPECONSOLE}varstr:string;beginWriteln('请输入:');Readln(str);Writeln('你输入的是:&#......
  • ansible剧本(playbook)- 快速入门
    ansible剧本(playbook)-快速入门Cloud研习社 Cloud研习社 2023-04-0407:31 发表于山东收录于合集#一站式教程220个#云计算196个#计算机185个#ansible22个#linux209个教程每周二、四、六更新剧本(playbook)比AD-Hoc模式更强大,可以一次性完成多个任务,类似于sh......
  • Go语言入门5(map哈希表)
    Map​ 哈希表是一种巧妙并且实用的数据结构。它是一个无序的key/value对的集合,其中所有的key都是不同的,然后通过给定的key可以在常数时间复杂度内检索、更新或删除对应的value。​ 在Go语言中,一个map就是一个哈希表的引用,map类型可以写为map[K]V,其中K和V分别对应key和value。m......
  • UnrealEngine - 网络同步入门
    1网络同步机制UE提供了强大的网络同步机制:RPC:可以在本地调用,对端执行属性同步:标记一个属性为UPROPERTY(Replicated)就可以自动将其修改后的值同步到客户端移动复制:Actor开启了移动复制后会自动复制位置,旋转和速度创建和销毁:Server创建Actor时根据其权限会在所有连......
  • git 入门笔记
    Git与Github入门笔记Git版本控制软件引用视频同步笔记:狂神聊Git(qq.com)git小游戏......
  • 全网最详细中英文ChatGPT-GPT-4示例文档-智能聊天机器人从0到1快速入门——官网推荐的
    目录Introduce简介setting设置Prompt提示Sampleresponse回复样本APIrequest接口请求python接口请求示例node.js接口请求示例curl命令示例json格式示例其它资料下载ChatGPT是目前最先进的AI聊天机器人,它能够理解图片和文字,生成流畅和有趣的回答。如果你想跟上AI时代的潮流......
  • kettle从入门到精通 第十一课 kettle javascript 解析json数组
    1、json步骤虽然可以解析json数组,但是不够灵活。通过javascript步骤来解析json数组比较灵活,且可以按照需要组装数据流转到下个步骤。1)步骤名称:可以自定义2)TransformScripts:当前步骤编写的javascript脚本3)TransformConstants:重新定义的静态常量,用于控制数据行发生的情况。您必......
  • Semantic Kernel 入门系列:
    如果把提示词也算作一种代码的话,那么语义技能所带来的将会是全新编程方式,自然语言编程。通常情况下一段prompt就可以构成一个SemanticFunction,如此这般简单,如果我们提前可以组织好一段段prompt的管理方式,甚至可以不需要写任何的代码,就可以构造出足够多的技能来。使用文件夹管......