ElasticSearch的安装及数据的使用

Elasticsearch Dump的详细安装和迁移es索引和数据的使用教程 【代码】Elasticsearch Dump的详细安装和迁移es索引和数据的使用教程。 阅读详情

一共要装三个东西 ElasticSearch   Node.js   ElasticSearch-head

下面的操作主要来源于

Windows 上安装 ElasticSearch_mottohlm的博客-优快云博客_elasticsearch windows安装和02-windows下elasticsearch安装elasticsearch-head_九师兄的博客-优快云博客

作在Window环境下操作

ElasticSearch   下载链接 Download Elasticsearch | Elastic

下载Zip后解压,在bin中,双击执行 elasticsearch.bat 。等待打印信息输出完之后打开浏览器,输入:localhost:9200 。页面显示如下,则说明安装好了。

再下一个Node.js 链接:下载 | Node.js 中文网 下载MSI格式的,然后点击里面的安装包安装

现在下ElasticSearch-head 链接 : https://github.com/mobz/elasticsearch-head 下到某目录  如elasticSearchHead目录下

然后 cd到此目录 

  1. npm install -g grunt-cli 
    grunt是一个很方便的构建工具,可以进行打包压缩、测试、执行等等的工作
D:\elasticsearch\elasticsearch-6.2.0\myplugins\elasticsearch-head-master>npm install -g grunt-cli
C:\Users\Administrator\AppData\Roaming\npm\grunt -> C:\Users\Administrator\AppData\Roaming\npm\node_modules\grunt-cli\bin\grunt
+ grunt-cli@1.2.0
updated 1 package in 4.429s

    2.npm install

 D:\elasticsearch\elasticsearch-6.2.0\myplugins\elasticsearch-head-master>npm install
npm WARN deprecated http2@3.3.7: Use the built-in module in node 9.0.0 or newer, instead
npm WARN deprecated coffee-script@1.10.0: CoffeeScript on NPM has moved to "coffeescript" (no hyphen)

> phantomjs-prebuilt@2.1.16 install D:\elasticsearch\elasticsearch-6.2.0\myplugins\elasticsearch-head-master\node_modules\phantomjs-prebuilt
> node install.js

PhantomJS not found on PATH
Download already available at C:\Users\ADMINI~1\AppData\Local\Temp\phantomjs\phantomjs-2.1.1-windows.zip
Verified checksum of previously downloaded file
Extracting zip contents
Removing D:\elasticsearch\elasticsearch-6.2.0\myplugins\elasticsearch-head-master\node_modules\phantomjs-prebuilt\lib\phantom
Copying extracted folder C:\Users\ADMINI~1\AppData\Local\Temp\phantomjs\phantomjs-2.1.1-windows.zip-extract-1517991758740\phantomjs-2.1.1-windows -> D:\elasticsearch\elasticsearc
\elasticsearch-head-master\node_modules\phantomjs-prebuilt\lib\phantom
Writing location.js file
Done. Phantomjs binary available at D:\elasticsearch\elasticsearch-6.2.0\myplugins\elasticsearch-head-master\node_modules\phantomjs-prebuilt\lib\phantom\bin\phantomjs.exe
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN elasticsearch-head@0.0.0 license should be a valid SPDX license expression
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.3 (node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})

added 384 packages in 40.221s  

这一点第一次安装会不一样,会有进度条,我这是第二次,为了写博客

问题1:可能会报错

Error making request.
Error: connect ETIMEDOUT 54.231.112.152:443
    at Object._errnoException (util.js:1022:11)
    at _exceptionWithHostPort (util.js:1044:20)
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1182:14)

Please report this full log at https://github.com/Medium/phantomjs
npm WARN elasticsearch-head@0.0.0 license should be a valid SPDX license expression
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.3 (node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! phantomjs-prebuilt@2.1.16 install: `node install.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the phantomjs-prebuilt@2.1.16 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\Administrator\AppData\Roaming\npm-cache\_logs\2018-03-02T02_46_07_354Z-debug.log

原因:网络原因 
解决方法:多次执行,总会成功的

      3. grunt server

D:\elasticsearch\elasticsearch-6.2.0\myplugins\elasticsearch-head-master>grunt server
(node:3492) ExperimentalWarning: The http2 module is an experimental API.
Running "connect:server" (connect) task
Waiting forever...
Started connect web server on http://localhost:9100

这样就完成安装了

安装IK分词器

官方地址:https://github.com/medcl/elasticsearch-analysis-ik/releases

有时候在官方地址Releases找不对Es对应版本的ik版本(版本不同会安装失败),可以直接拼下载地址

https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v版本号/elasticsearch-analysis-ik-版本号.zip 

比如https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.2.4/elasticsearch-analysis-ik-6.2.4.zip

或者直接进入 elasticsearch 安装目录下的 bin\ 目录,输入

elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/vX.X.X/elasticsearch-analysis-ik-X.X.X.zip

elasticSearch的elasticsearch-head-master 登录进去,显示集群不健康值 

问题解决:在config/elasticsearch.yml加上两句

http.cors.enabled: true
http.cors.allow-origin: "*"

ElasticSearch的一些概念

ES中的一些概念

index(索引)

相当于mysql中的数据库

type(类型)

相当于mysql中的一张表

document(文档)

相当于mysql中的一行(一条记录)

field(域)

相当于mysql中的一列(一个字段)

节点

一个服务器,由一个名字来标识

集群

一个或多个节点组织在一起

分片

将一份数据划分为多小份的能力,允许水平分割和扩展容量。多个分片可以响应请求,提高性能和吞吐量。

副本

复制数据,一个节点出问题时,其余节点可以顶上。

ES支持的数据类型

  • text 文本类型,text类型如果不显示指定映射的字段属性,默认是使用标准分词器进行分词,一般数据类型是text要么显示指定分词器,要么不分词,一般不使用默认的分词器(除非文本是纯英文)
  • keyword : 如果数组中的值是字符串,最好使用keyword, 它不会对字符串进行分词
  • date 支持的格式有:可以通过format定义日期的数据格式,也支持毫秒数
  • boolean
  • float
  • double
  • byte
  • short
  • integer
  • long
  • object
  • nested : 嵌套对象, 用于数组中的元素是对象的[{}, {}]
  • ip 即支持ipv4也支持ipv6
  • completion
  • binary
  • geo-point: 支持经纬度存储和距离范围检索
  • geo-shape:支持任意图形范围的检索,例如矩形和平面多边形

1.

下面是操作数据,我看很多博文用cUrl来操作数据,cUrl只是用来发送请求的,这个功能用Postman也是可以的

 索引的增删改查有一个类似的格式,总结如下:

 请求 : <Node>:<Port>/<Index>/<Type>/<ID>

       <Node>:节点ip

  <port>:节点端口号,默认9200

  <Index>:索引名

  <Type>:索引类型

  <ID>:操作对象的ID号

所以我这样加索引 localhost:9200/customer2?pretty 返回添加成功(注意,我这里单加索引用的是PUT请求)

然后我再给这个索引加一个类型,用的还是PUT请求,它报错,要求在添加类型时,要用POST请求

所以改成这样,result是创建成功,它的id因为没指定,是随机生成的一个

所以我又加了一个document而且指定了id

这里的id主要是用来获取指定数据,比如说想获取customer2索引下类型为order,id是1的文档

查询customer2索引下类型为order的所有文档

查询结果解释:

1,hits

返回结果中最重要的部分是 hits ,它 包含 total 字段来表示匹配到的文档总数,并且一个 hits 数组包含所查询结果的前十个文档。

2,took

took 值告诉我们执行整个搜索请求耗费了多少毫秒。

指定查询条件,发现不能模糊查询

3,timeout

timed_out 值告诉我们查询是否超时。默认情况下,搜索请求不会超时。 如果低响应时间比完成结果更重要,你可以指定 timeout 为 10 或者 10ms(10毫秒),或者 1s(1秒)。以下命令:

GET /_search?timeout=10ms

结果

数据更新,原本我是这样写的

后来查了下,改成这样写了,于是就修改成功了

设置索引的分片数量、副本数量、默认的分词器等

PUT /my_temp_index/_settings { "number_of_replicas": 1 }

为索引创建一个别名

PUT /school_v1/_alias/school

查看别名指向的索引

GET /*/_alias/school

查询索引对应的别名

GET /school_v1/_alias/*

我既可以这样写http://localhost:9200/school/students/_mapping查询映射

也可以这样写http://localhost:9200/school/_mapping/students

总结上面的语句

1.同一个请求,请求方式的不同,作用也会不同,比如说localhost:9200/customer2/order/1,POST请求跟GET请求的作用,一个是添加一个是查询

2.执行查询和修改数据时,要加_search和_update

2.

ElasticSearch的分词器查询,因为要支持中文,所以使用IK分词器

下载链接

https://github.com/medcl/elasticsearch-analysis-ik/releases

因为IK的版本要跟ElasticSearch的版本严格对应起来,所以我els是6.3.2版本,我ik也要选V6.3.2

将下载的ZIP文件解压至elasticsearch-6.3.2\elasticsearch-6.3.2\plugins\ik文件夹下(ik目录是我新建的),即可完成 ik 分词器的安装

然后重新启动els,看到有用了ik这个工具

ik_max_word和ik_smart分词的区别 

ik_max_word是最细粒度的分词

ik_smart是最粗粒度的分词

然后写一个分词器的例子来试试

3.

映射就是创建索引时指定都包含哪些字段以及字段的数据类型、分词器等一些设置。

为了能够把日期字段处理成日期,把数字字段处理成数字,把字符串字段处理成全文本(Full-text)或精确的字符串值,Elasticsearch需要知道每个字段里面都包含了什么类型。这些类型和字段的信息存储(包含)在映射(mapping)中。

当你索引一个包含新字段的文档——一个之前没有的字段——Elasticsearch将使用动态映射猜测字段类型,这意味着,如果你索引一个带引号的数字——"123",它将被映射为"string"类型,而不是"long"类型。然而,如果字段已经被映射为"long"类型,Elasticsearch将尝试转换字符串为long,并在转换失败时会抛出异常。

索引概念简介

通常说的索引有两种词性,名称和动词。

  • 动词索引indexing,索引一个文档,表示把一个文档存储到索引Index里,可以用来查询和检索,es采用倒排索引
  • 名词索引index,简单的理解成关系型数据库中的数据库的概念

索引的命名必须是全部小写,不能以下划线开头

倒排索引

搜索名词介绍 

  must 相当于DB查询中的And

should 相当于DB查询中的OR

【点云数据集】整理汇总(自用,更新ing) 涵盖了各种不同的城市场景:教堂、街道、铁路轨道、广场、村庄、足球场、城堡等等。邮件地址:dmich-request@graphics.stanford.edu,内容需包含:1. 您的姓名、头衔或职位,以及所在机构或隶属关系;license比较难获取,目前可获取的人员:(1)目前隶属于大学、工业研究实验室或其他主要机构的已发表过研究成果的研究人员;普林斯顿 ModelNet 项目的目标是为计算机视觉、计算机图形学、机器人技术和认知科学领域的研究人员提供全面、干净的物体 3D CAD 模型集合。 阅读详情

相关推荐

【教程】BM1684X-32边缘计算盒子 网络配置教程

BM1684X边缘计算盒子网络配置教程

ShiMetaPi的博客 714

ES 7.0.1安装head和sql插件报错处理

一、问题描述 ES集群安装sql插件后,重启ES报错:uncaught exception in thread [main] org.elasticsearch.bootstrap.StartupException: java.lang.IllegalArgumentException:Cannot replace existing handler for [/_sql] for method: POST 环境:ES 7.0.1 ;JDK 1.8.*;es-sql:7.0.1 二、问题处理 1、原因:这

企业实战系列集 ●●● https://ximenjianxue.blog.youkuaiyun.com 2393

基于Apache MINA SSHD配置及应用

Apache MINA SSHD是一个基于Java的开源SSH服务器/客户端实现,支持SSH2协议,提供文件传输、shell访问等功能。该代码实现了一个SftpClientService服务类,封装了SFTP文件操作,包括读取文件(readOnce/readLines)和写入文件(writeOnce)等核心功能。通过SftpProperties配置类管理连接参数,并采用Builder模式创建SSH会话。主要特点包括:支持大文件分块传输、自动创建目录、严格的异常处理和...

流沙QuickSand 945

关于启动ElasticSearch-head-master启动失败的问题处理:Fatal error: Unable to find local grunt

启动ElasticSearch-head-master启动失败的问题处理 今天在学习使用Elastic Search的过程中,需要使用到了一个插件ElasticSearch-head-master的工具来管理和监听Elastic Search的健康状态和相关的索引情况。 于是我安装好了Es、安装好了node.js,下载好了ElasticSearch-head-m...

qq_39941165的博客 8097

从桨叶设计到电机匹配:手把手教你调出无人机最佳动力组合

本文系统介绍了无人机动力系统的核心匹配原则,重点解析了如何通过测试与数据分析,优化螺旋桨与电机的组合,从而显著提升系统力效与续航。文章提供了从参数解读、实战测试到深度调优的完整指南,帮助开发者解决电机过热、推力不足等常见问题,实现无人机性能最大化。

weixin_29305313的博客 235

MultiOTP Credential Provider避坑指南:从安装到RDP双因素认证的全流程解析

本文详细解析了MultiOTP Credential Provider从安装到实现RDP双因素认证(MFA)的全流程,重点分享了Docker部署、Active Directory集成及网络级认证(NLA)兼容性等环节的实战避坑经验,旨在帮助运维人员高效、稳定地部署离线双因素认证方案,提升Windows远程桌面安全性。

weixin_29255731的博客 642

ElasticSearch(一)简介和安装

简介 Elasticsearch是由Shay Banon发起的一个开源搜索服务器项目,2010年2月发布。迄今,该项 目已发展成为搜索和数据分析解决方案领域的主要一员,广泛应用于声名卓著或鲜为人知的搜索 应用程序。此外,由于其分布式性质和实时功能,许多人把它作为文档数据库。 常见的Elastic的应用常见有 海量数据分析 数据仓库 站内搜索引擎 在介绍环境安装之前,...

frog4的专栏 537

开关电源EMI滤波设计:如何通过Cx和Cy电容精准抑制共模与差模干扰?

本文深入解析了开关电源EMI滤波设计中Cx和Cy电容的核心作用。Cx电容并联于火线与零线之间,专用于抑制差模干扰;Cy电容连接于火线/零线与地之间,则负责泄放共模干扰。文章详细阐述了二者选型、安规要求及PCB布局要点,并提供了基于测试频谱的实战调优策略,是解决电源传导噪声问题的实用指南。

7z8x2c4v6b9的博客 466

在Webstrom中,安装bootstrap依赖时的提示信息,很多地方可以作为延伸学习

/usr/local/bin/node /usr/local/lib/node_modules/npm/bin/npm-cli.js install --scripts-prepend-node-path=autonpm WARN deprecated http2@3.3.7: Use the built-in module in node 9.0.0 or newer, insteadnpm W...

weixin_30242907的博客 374

笔试题-2023-芯原-数字前端设计or验证【纯净题目版】

笔试题-2023-芯原-数字前端设计or验证【纯净题目版】

w0shishabi的博客 5685

注意力机制与经典 CV 网络:PyTorch 实现与实战

注意力机制(SE/空间/CBAM/Non-Local)通过权重重标定让模型聚焦关键特征,经典 CNN(ResNet/DenseNet/FPN)提供了深层网络、特征复用和多尺度融合的基础骨架。建议先在 ResNet 上插入 SE 模块(通道注意力)做基线实验,再根据任务类型引入空间注意力(分割任务)或非局部注意力(视频任务)。CIFAR-10 数据集适合快速验证注意力模块的有效性,迁移到更大数据集时保持相同的结构设计思路即可。

FJN110的博客 62

ElasticSearch 6.x 学习笔记:2.head插件

2.1 Head插件简介 ElasticSearch-head是一个H5编写的ElasticSearch集群操作和管理工具,可以对集群进行傻瓜式操作。 显示集群的拓扑,并且能够执行索引和节点级别操作 搜索接口能够查询集群中原始json或表格格式的检索数据 能够快速访问并显示集群的状态 有一个输入窗口,允许任意调用RESTful API。这个接口包含几个选项,可以组合在一起以产生有趣的结果;

程裕强的专栏 1万+

【Unity优化篇】| Unity3D场景 常用优化策略,遮挡剔除、层消隐距离技术 和 LOD多层次细节

本篇文章来简单介绍一下 Unity中几种常用3D场景优化策略 方法 对于整个项目来说,本文中出现的方法也只是冰山一角,慢慢积累学习吧! 内容包括遮挡剔除(Occlusion Culling)、层消隐距离技术 和 LOD多层次细节

努力前行,总会成为自己心中的那道光 1万+

ElasticSearch安装在SpringBoot下的使用,Mysql数据同步到ES包含多表

到这里es的环境搭建已经整合springboot在项目中的简单使用示例已经全部搞定啦,es的查询api有很多种,上面弄的都是一些简单的操作,但是万变不离其宗总体的查询思路与mysql很相似,一开始不熟悉不会用很正常多用用就都会了,不练习是不行滴,有任何问题可以在下面留言通知我,大家有没有其他感兴趣的想了解的知识也可以留言通知我,我抽时间整理一下es整合的代码我会抽时间整理到码云已经github上。...

Ajekseg的博客 1701

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

ElasticSearch安装在SpringBoot下的使用,Mysql数据同步到ES:包含多表

ElasticSearch安装在SpringBoot下的使用,Mysql数据同步到ES:包含多表ElasticSearch安装在SpringBoot下的使用,Mysql数据同步到ES:包含多表ElasticSearch的下载以及安装SpringBoot整合ElasticSearchmysql数据同步到esES在springboot中的简单示例总结 ElasticSearch安装在SpringBoot下的使用,Mysql数据同步到ES:包含多表 ElasticSearch的下载以及安装 ElasticSear

weixin_42523841的博客 3650

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

【ES数据库】Elasticsearch安装使用

Elasticsearch安装操作指南(基于docker)

Sherry_Yau的博客 2134

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Elasticsearch安装 Head插件安装和使用 IK分词器 Es跟mySql的数据同步

因为使用es-head工具,必须使用node js的环境支撑 Node.js 是什么? 前后台分离的时候, 前端想调用我们后端,需要依赖http请求,搭建前端的开发环境,node.js Node.js 就是运行在服务端的 JavaScript。 Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台。 Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。 ②安装node js .

。。。 744

Elasticsearch Dump的详细安装和迁移es索引和数据的使用教程(2)

node -vnpm -v根据上述步骤的结果,可以判断当前系统是否已安装Node.js和npm。如果两者都已安装并且显示了版本号,则说明可以在系统上使用它们。如果没有安装或显示错误信息,则需要根据需要安装Node.js和npm。

2401_87395466的博客 1272

Elasticsearch数据库安装及使用

Elasticsearch是一个实时的分布式开放源代码全文本搜索和分析引擎。可从RESTful Web服务界面访问它,并使用无模式的JSON(JavaScript对象表示法)文档存储数据。它基于Java编程语言构建,因此Elasticsearch可以在不同平台上运行。它使用户能够以很高的速度浏览大量的数据。

qq_48468029的博客 2824

windows 安装Elasticsearch、实现数据的插入以及使用kibana工具进行监控es数据

前言 由于es的使用目前比较常用,需要搭建一套本地的环境进行插入、更新、删除es数据以及使用kibana的工具进行监控es数据的使用情况,在此过程中遇到的坑在此进行mark一下 1.安装Elasticsearch-Head进行搜索本地es环境内的所有数据 下载git项目文件:https://github.com/mobz/elasticsearch-head 本地解压之后,直接使用浏览器打开即可 第二步:关于kibana不能监控es环境内数据的问题 打开es的安装包在co..

喜欢猪猪 3777

Elasticsearch Dump的详细安装和迁移es索引和数据的使用教程(1)

node -vnpm -v根据上述步骤的结果,可以判断当前系统是否已安装Node.js和npm。如果两者都已安装并且显示了版本号,则说明可以在系统上使用它们。如果没有安装或显示错误信息,则需要根据需要安装Node.js和npm。

2401_87395446的博客 1204

ES可视化工具--elasticsearch-head--下载、安装、使用

4654

q1054261752的博客 703

ES(ElasticSearch)数据库的安装、使用和Python交互

一、安装 下载:https://www.elastic.co/cn/products/elasticsearch 双击: 访问:http://127.0.0.1:9200

木尧大兄弟 834

您提供一个关于使用Elasticsearch构建分布式搜索引擎的基本示例,下面是一个简单的Demo流程。此流程包括安装Elasticsearch、创建索引、添加数据以及执行搜索查询。1. 安装El

实际应用中,您可能还需要了解更高级的主题,如分片(Sharding)、副本(Replicas)、分析器(Analyzers)、过滤器(Filters)等,以便构建更复杂和高效的搜索引擎解决方案。"content": "通过RESTful API和JSON格式的数据,您可以轻松地与Elasticsearch进行交互。"content": "Elasticsearch是一个基于Lucene的开源搜索引擎。"title": "如何使用Elasticsearch",现在我们可以尝试对这些文档执行搜索查询了。

weixin_66625287的博客 699

PGSync安装使用教程(PostgreSQL数据实时同步至Elasticsearch)

pgsync项目有两个,一个是的,用于pgsql之间的数据同步,另一个是的,用于pgsql的数据同步至es,本教程适用于第二个项目。pgsync应该是目前为止唯二支持es8的数据同步工具,另一个是canal,但是canal数据源只支持mysql。另外还有个flink cdc,数据源同时支持mysql和pgsql,但是只支持到es7,前几个月更新了es8的流驱动,flink sql es8的驱动应该也快了(

Variazioni的博客 2867

6.聊天室环境安装 - Ubuntu22.04 - elasticsearch(es)的安装和使用

Ubuntu22.04 - elasticsearch(es)的安装和使用

感谢观看 1674
上一篇: Spring那些标签
下一篇: SpringBoot与ElasticSearch的整合,用Grade构建
AAA821
博客等级 码龄14年 19粉丝 58原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值