![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ElasticSearch
文章平均质量分 53
ElasticSearch内容学习
大数据开发工程师-宋权
攻城狮,嗷!!!!
展开
-
(27)Idea 中操作 ElasticSearch
6.1 在 Idea 中编写操作 ES 的工具类 (1) 在 Idea 中创建新的 Mavan 模块,gmall2020-realtime (2) 添加 Scala 支持(3) 选择操作 ES 的 java 客户端◼ 一类是 TransportClient 为代表的 ES 原生客户端,不能执行原生 DSL 语句必须使 用它的 Java api 方法。 ◼ 一类是以 Rest ApI 为主的 client,最典型的就是 jest。 这种客户端可以直接使用 .原创 2021-07-26 09:45:34 · 1110 阅读 · 1 评论 -
(26)查看系统中已有的模板清单
5.8.4 查看某个模板详情 5.8.5 使用场景➢ 分割索引 分割索引就是根据时间间隔把一个业务索引切分成多个索引。 比如 把 order_info 变成 order_info_20200101,order_info_20200102 ….. 这样做的好处有两个:◼ 结构变化的灵活性 因为 ES 不允许对数据结构进行修改。但是实际使用中索引的结构和配置难免变化,那 么只要对下一个间隔的索引进行修改,原来的索引维持原状。这样就有了一定的灵活性。 要想实现这...原创 2021-07-26 09:44:26 · 112 阅读 · 0 评论 -
(25)索引模板
索引模板(Index Template),顾名思义就是创建索引的模具,其中可以定义一系列 规则来帮助我们构建符合特定业务需求的索引的 mappings 和 settings,通过使用索引模 板可以让我们的索引具备可预知的一致性。 5.8.1 创建索引模板其中 "index_patterns": ["movie_test*"]的含义就是凡是往 movie_test 开头的索引写 入数据时,如果索引不存在,那么 ES 会根据此模板自动建立索引。 在 "aliases..原创 2021-07-26 09:44:12 · 408 阅读 · 0 评论 -
(24)索引数据拷贝
ElasticSearch 虽然强大,但是却不能动态修改 mapping 到时候我们有时候需要修改 结构的时候不得不重新创建索引; ElasticSearch 为我们提供了一个 reindex 的命令,就是会将一个索引的快照数据 copy 到另一个索引,默认情况下存在相同的_id 会进行覆盖(一般不会发生,除非是将两个索引 的数据 copy 到一个索引中),可以使用 POST _reindex 命令将索引快照进行 copy5.7 索引别名 _aliases 索引别名就像一个.原创 2021-07-26 09:43:57 · 234 阅读 · 1 评论 -
(23)关于 mapping
之前说 Type 可以理解为关系型数据库的 Table,那每个字段的数据类型是如何定义的 呢? 实际上每个 Type 中的字段是什么数据类型,由 mapping 定义,如果我们在创建 Index 的时候,没有设定 mapping,系统会自动根据一条数据的格式来推断出该数据对应的字段 类型,具体推断类型如下: ➢ true/false → boolean ➢ 1020 → long ➢ 20.1 → float ➢ “2018-02-01” → date ➢原创 2021-07-26 09:43:34 · 517 阅读 · 0 评论 -
(22) 自定义词库-本地指定
有的时候,词库提供的词并不包含项目中使用到的一些专业术语或者新兴网络用语,需 要我们对词库进行补充。具体步骤➢ 通过配置本地目录直接指定自定义词库◼ 修改/opt/module/elasticsearch/plugins/ik/config/中的 IKAnalyzer.cfg.xml 5.5.6 自定义词库-远程指定➢ 远程配置一般是如下流程,我们这里简易通过 nginx 模拟◼ 修改/opt/module/elasticsearch...原创 2021-07-26 09:43:17 · 398 阅读 · 0 评论 -
(21)分词
5.5.1 查看英文单词默认分词情况5.5.2 查看中文默认分词情况5.5.3 中文分词器通过上面的查询,我们可以看到ES本身自带的中文分词,就是单纯把中文一个字一个字 的分开,根本没有词汇的概念。但是实际应用中,用户都是以词汇为条件,进行查询匹配的,如 果能够把文章以词汇为单位切分开,那么与用户的查询条件能够更贴切的匹配上,查询速度也更 加快速。 常见的一些开源分词器对比,我们使用IK分词器5.5.4 IK 分词器的安装及使用...原创 2021-07-26 09:42:59 · 60 阅读 · 0 评论 -
(20)查询操作
5.4.2 按条件查询(全部)5.4.3 按分词查询(必须使用分词 text 类型) 测试前:将 movie_index 索引中的数据恢复到初始的 3 条ES 中,name 属性会进行分词,底层以倒排索引的形式进行存储,对查询的内容也会进行 分词,然后和文档的 name 属性内容进行匹配,所以命中 3 次,不过命中的分值不同。 注意:ES 底层在保存字符串数据的时候,会有两种类型 text 和 keyword text:分词 keyword:不分词...原创 2021-07-26 09:42:42 · 86 阅读 · 1 评论 -
(19)根据文档 id 更新文档
除了创建和替换文档外,ES 还可以更新文档中的某一个字段内容。注意,Elasticsearch 实际上并没有在底层执行就地更新,而是先删除旧文档,再添加新文档。5.3.7 根据条件更新文档(了解)5.3.8 删除文档属性(了解)5.3.9 根据条件删除文档(了解) 5.3.10 批处理 除了对单个文档执行创建、更新和删除之外,ElasticSearch 还提供了使用_bulk API 批量执行上述操作的能力。 ...原创 2021-07-26 09:41:53 · 85 阅读 · 0 评论 -
(16)ElasticSearch 的基本概念
4.1 概念 Elasticsearch 有几个核心概念,先理解这些概念将有助于掌握 Elasticsearch。 4.1.1 近实时(Near Realtime / NRT) Elasticsearch 是一个近实时的搜索平台,从生成文档索引到文档成为可搜索,有一个 轻微的延迟(通常是一秒钟)。 4.1.2 集群(Cluster) ES 默认就是集群状态,整个集群是一份完整、互备的数据。 集群是一个或多个节点(服务器)的集合。集群中的节点一起存储数据,对外提供搜索功 能。集原创 2021-07-20 09:07:25 · 119 阅读 · 0 评论 -
(15)Kibana 的安装
Elasticsearch 提供了一套全面和强大的 REST API,我们可以通过这套 API 与 ES 集群 进行交互。例如: 我们可以通过 API: GET /_cat/nodes?v 获取 ES 集群节点情况,要想访问这个 API, 我们需要使用 curl 命令工具来访问 Elasticsearch 服务 curl http://hadoop202:9200/_cat/nodes?v也可以使用任何其他 HTTP/REST 调试工具,例如 POSTMAN。 Kibana 是为原创 2021-07-20 09:07:10 · 82 阅读 · 0 评论 -
(14)集群启动脚本
在/home/atguigu/bin 目录下创建 es.sh,并授予执行权限 根据自己的配置进行修改.10 测试 测试方式 1:curl http://hadoop202:9200/_cat/nodes?v 测试方式 2:在浏览器中,输入 http://hadoop202:9200/查看效果11 如果启动未成功 如果启动未成功,请去查看相关日志 vim /opt/module/elasticsearch/logs/my-es.log...原创 2021-07-20 09:06:55 · 69 阅读 · 0 评论 -
(13)ElasticSearch 的安装
选择的版本是 elasticsearch-6.6.0 Elasticsearch 官网: https://www.elastic.co/products/elasticsearchhttps://www.elastic.co/cn/downloads/past-releases/elasticsearch-6-6-01 上传安装包 将/2.资料/02-工具/elasticsearch 下的压缩包上传到 opt/software/目录下2 将 ES 解压到/opt/mo..原创 2021-07-20 09:06:37 · 86 阅读 · 0 评论 -
(12)Lucene、Nutch、ElasticSearch 关系
➢ 1998 年 9 月 4 日,Google 公司在美国硅谷成立。正如大家所知,它是一家做搜索引擎起家的公司。 ➢ 同时期,一位名叫 Doug Cutting 的美国工程师,也迷上了搜索引擎,他基于 Java 语 言开发了一个用于文本搜索的函数库(姑且理解为软件的功能组件),叫做 Lucene。 Lucene是第一个提供全文文本搜索的函数库,提供了一个简单而强大的应用程序接口, 是一个高性能、可伸缩的信息搜索库。作为一个成熟免费的开源项目,Lucene 在 Java 信息检索程序原创 2021-07-20 09:06:15 · 394 阅读 · 0 评论 -
(11)ElasticSearch 的特点
.1 天然分片,天然集群ES 把数据分成多个 shard,下图中的 P0-P2,多个 shard 可以组成一份完整的数据, 这些 shard 可以分布在集群中的各个机器节点中。随着数据的不断增加,集群可以增加多 个分片,把多个分片放到多个机子上,已达到负载均衡,横向扩展。 在实际运算过程中,每个查询任务提交到某一个节点,该节点必须负责将数据进行整理 汇聚,再返回给客户端,也就是一个简单的节点上进行 Map 计算,在一个固定的节点上进 行 Reduces 得到最终结果向客户.原创 2021-07-20 09:05:32 · 502 阅读 · 1 评论 -
(10)实时数仓ElasticSearch
ElasticSearch 基础1 简介Elasticsearch 是一个高度可伸缩的开源全文搜索引擎。Elasticsearch 让你可以快速、 实时地存储、搜索和分析大量数据,它通常作为互联网应用的内部搜索引擎,为需要复杂搜 索功能的应用提供支持。 ElasticSearch 是一个基于 Lucene 的搜索服务器。它提供了一个分布式多用户能力的 全文搜索引擎,基于 RESTful web 接口。Elasticsearch 是用 Java 开发的,并作为 Apache 许原创 2021-07-19 09:53:16 · 714 阅读 · 0 评论