Elasticsearch 安装和后台运行(真实有效,Mac版本已经验证)

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: 如何安装一个程序在日常的工作和学习中,例如学习一个新技术,经常需要安装一些程序,那么这个时候,最推荐的就是区技术的官网,学习最新的安装方法,进行安装。

如何安装一个程序

在日常的工作和学习中,例如学习一个新技术,经常需要安装一些程序,那么这个时候,最推荐的就是区技术的官网,学习最新的安装方法,进行安装。

一、Mac安装Elasticsearch

关于Elasticsearch的安装,在官网安装解释中说的很明确。
官方安装地址
其他版本的我暂时没有验证过,我在此仅验证一下Mac版本的。

  • 在macOS上,Elasticsearch也可以通过Homebrew安装:
brew install elasticsearch

这样就安装完了:

==> Downloading https://artifacts.elastic.co/downloads/elasticsearch/elasticsear
######################################################################## 100.0%
==> Caveats
Data:    /usr/local/var/lib/elasticsearch/elasticsearch_wangdong/
Logs:    /usr/local/var/log/elasticsearch/elasticsearch_wangdong.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
==> Summary
?  /usr/local/Cellar/elasticsearch/6.2.4: 112 files, 30.8MB, built in 8 minutes 19 seconds

~ ⌚ 16:02:02
$ 

三、运行Elasticsearch

只需要在命令行输入:elasticsearch就可以启动

$ elasticsearch
Java HotSpot(TM) 64-Bit Server VM warning: Cannot open file logs/gc.log due to No such file or directory
.....
[2018-07-18T16:02:55,520][INFO ][o.e.t.TransportService   ] [co8Ssev] publish_address {127.0.0.1:9300}, bound_addresses {[::1]:9300}, {127.0.0.1:9300}
[2018-07-18T16:02:58,636][INFO ][o.e.c.s.MasterService    ] [co8Ssev] zen-disco-elected-as-master ([0] nodes joined), reason: new_master {co8Ssev}{co8SsevGRTWDhnyjFsSD9A}{Pv9vnbYTQfaI-c4kxzYF3Q}{127.0.0.1}{127.0.0.1:9300}
[2018-07-18T16:02:58,640][INFO ][o.e.c.s.ClusterApplierService] [co8Ssev] new_master {co8Ssev}{co8SsevGRTWDhnyjFsSD9A}{Pv9vnbYTQfaI-c4kxzYF3Q}{127.0.0.1}{127.0.0.1:9300}, reason: apply cluster state (from master [master {co8Ssev}{co8SsevGRTWDhnyjFsSD9A}{Pv9vnbYTQfaI-c4kxzYF3Q}{127.0.0.1}{127.0.0.1:9300} committed version [1] source [zen-disco-elected-as-master ([0] nodes joined)]])
[2018-07-18T16:02:58,656][INFO ][o.e.h.n.Netty4HttpServerTransport] [co8Ssev] publish_address {127.0.0.1:9200}, bound_addresses {[::1]:9200}, {127.0.0.1:9200}
[2018-07-18T16:02:58,656][INFO ][o.e.n.Node               ] [co8Ssev] started
[2018-07-18T16:02:58,658][INFO ][o.e.g.GatewayService     ] [co8Ssev] recovered [0] indices into cluster_state

四、后台运行

如果要后台运行,请参考。
后台运行并杀死程序

五、操作Elasticsearch

如果你要操作Elasticsearch的话,就不能够直接通过命令行了!
你如你在这边官方文档ES检测,会看到一些操作。
例如:

  • 要检查群集运行状况:注意/_cat/health?v中间没有空格。
GET /_cat/health?v

对应的数据的意思,请看官方文档。
这里写图片描述

  • 获得群集中的节点列表
GET /_cat/nodes?v

这里写图片描述

  • 列出所有索引
GET /_cat/indices?v

这里写图片描述

下面意思是,我们目前的集群中没有索引。

health status index uuid pri rep docs.count docs.deleted store.size pri.store.size

六、创建索引添加数据

标准格式:
<REST Verb> /<Index>/<Type>/<ID>

1.创建一个名为customer的索引

两种方式:
1:

PUT /customer

2:

PUT /customer?pretty

这里写图片描述

注意索引是唯一的,错误会执行报错

{
  "error": {
    "root_cause": [
      {
        "type": "resource_already_exists_exception",
        "reason": "index [customer/9q9iDbOqQgSdlqxPENkEBA] already exists",
        "index_uuid": "9q9iDbOqQgSdlqxPENkEBA",
        "index": "customer"
      }
    ],
    "type": "resource_already_exists_exception",
    "reason": "index [customer/9q9iDbOqQgSdlqxPENkEBA] already exists",
    "index_uuid": "9q9iDbOqQgSdlqxPENkEBA",
    "index": "customer"
  },
  "status": 400
}

2.列出所有索引:

执行:

GET /_cat/indices?v

响应:

health status index    uuid                   pri rep docs.count docs.deleted store.size pri.store.size
yellow open   customer 9q9iDbOqQgSdlqxPENkEBA   5   1          0            0      1.1kb          1.1kb

第二个命令的结果告诉我们,我们现在有一个名为customer的索引,它有5个主分片和1个副本(默认值),并且它包含0个文档。

您可能还注意到客户索引标记了黄色运行状况。回想一下我们之前的讨论,黄色表示某些副本尚未(尚未)分配。此索引发生这种情况的原因是因为默认情况下Elasticsearch为此索引创建了一个副本。由于我们目前只有一个节点在运行,因此在另一个节点加入集群的较晚时间点之前,尚无法分配一个副本(用于高可用性)。将该副本分配到第二个节点后,此索引的运行状况将变为绿色。

3.给索引添加一点数据

给customer的索引添加数据,因为ES是以文档Json格式在存储,索引后面写个_doc,给它一个ID是1。

PUT /customer/_doc/1?pretty
{
  "name": "John Doe"
}

这里写图片描述
注意:同一个ID,在PUT的时候,是会去覆盖的,相当于更改,version字段就是这个ID更改的次数

4.下面来获取这个数据

执行:

GET /customer/_doc/1?pretty

响应:

{
  "_index": "customer",
  "_type": "_doc",
  "_id": "1",
  "_version": 7,
  "found": true,
  "_source": {
    "name": "熊 本"
  }
}

这里写图片描述

5.删除索引

执行
两种方式
1:

DELETE /customer

2:

DELETE /customer?pretty

再执行查看索引:

GET /_cat/indices?v

响应:
说明此时现在已经没有索引了。

health status index   uuid                   pri rep docs.count docs.deleted store.size pri.store.size
green  open   .kibana WZ_XKyA3RfaGIXiW3D4z-Q   1   0          1            0     13.1kb         13.1kb

结语:好的,后续再进一步分享一些更加高深的东西。

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
目录
相关文章
|
11天前
|
数据可视化 索引
elasticsearch head、kibana 安装和使用
elasticsearch head、kibana 安装和使用
|
23天前
|
存储 负载均衡 索引
linux7安装elasticsearch-7.4.0集群配置
linux7安装elasticsearch-7.4.0集群配置
109 0
|
1月前
|
开发工具 git iOS开发
Mac 安装软件包管理工具Homebrew
Mac 安装软件包管理工具Homebrew
|
10天前
|
JSON Unix Linux
Elasticsearch如何安装
Elasticsearch如何安装
|
7天前
|
Java Android开发 芯片
Mac M芯片安装DBeaver Ultimate
Mac M芯片安装DBeaver Ultimate
12 0
Mac M芯片安装DBeaver Ultimate
|
1月前
QT 5.14.2版本 MAC环境安装部署流程
QT 5.14.2版本 MAC环境安装部署流程
|
1月前
|
iOS开发 MacOS Python
Mac安装pip报错的解决办法
Mac安装pip报错的解决办法
|
1月前
|
存储 Ubuntu Linux
如何在 Mac M1 (Apple Silicon) 上安装 ABAP 1909
如何在 Mac M1 (Apple Silicon) 上安装 ABAP 1909
14 0
|
1月前
|
监控 安全 Java
ElasticSearch在Windows上的下载与安装
ElasticSearch在Windows上的下载与安装
|
2月前
|
开发工具 Docker 容器
docker安装集群版ElasticSearch
docker安装集群版ElasticSearch