
Elasticsearch
lzzyok
脚踏实地,一步一步往上爬。
展开
-
Elasticsearch让 keyword 和 term 忽略大小写
在Elasticsearch中处理字符串类型的数据时,如果我们想把整个数据作为一个完整的 term 存储,我们通常会将其类型(type)设定为keyword。而这种设定又会给我们带来麻烦,比如Bar、bar两个实际都是bar,但当我们去搜索bar时却无法返回 Bar的文档。要解决这个问题,就需要Normalizer出场了!PUT test_normalizer{ "mappings": { "doc":{ "properties": { ...原创 2020-07-01 09:39:39 · 11235 阅读 · 1 评论 -
十、Elasticsearch中properties中index含义
咱们通过一个实例来看情况1、创建一个索引,对id/email的属性指定index=false( 默认不指定时为true)2、接下来我们写入一笔数据PUT /my-index/_doc/1{ "id": 1, "age":33, "email":"liqin@163.com", "name":"李中国"}3、下面我们对id和name做一个查询GET /my-index/_search{ "query": { "match": {..原创 2020-06-22 11:40:46 · 3157 阅读 · 0 评论 -
八、ES查询记录
matchQuery:会将搜索词分词,再与目标查询字段进行匹配,若分词中的任意一个词与目标字段匹配上,则可查询到。termQuery:不会对搜索词进行分词处理,而是作为一个整体与目标字段进行匹配,若完全匹配,则可查询到。...原创 2020-06-09 18:36:36 · 419 阅读 · 0 评论 -
七、Eleasticsearch内置分词器
目录标准分词器:standard tokenizer 关键词分词器:keyword tokenizer 字母分词器:letter tokenizer 小写分词器:lowercase tokenizer 空白分词器:whitespace tokenizer 模式分词器:pattern tokenizer UAX URL电子邮件分词器:UAX RUL email tokenizer 路径层次分词器:path hierarchy tokenizer详细见:https://www.cnbl...转载 2020-06-08 19:02:03 · 192 阅读 · 0 评论 -
六 Elasticsearch——常用_cat命令
当我们把ES重启生,就可以通过浏览器查看相关信息了(相关命令如下)如查看节点信息: http://es节点的IP:端口/_cat/nodes/_cat/allocation/_cat/shards/_cat/shards/{index}/_cat/master/_cat/nodes/_cat/indices/_cat/indices/{index}/_cat/segments/_cat/segments/{index}/_cat/count/_cat/count/{inde.原创 2020-06-08 14:52:22 · 507 阅读 · 0 评论 -
Docker安装Elasticsearch问题归集
前提:docker容器中的log目录和data目录挂载到物理机上,如下#数据目录- /data/xxx/es-config/data:/usr/share/elasticsearch/data#日志目录- /data/xxx/es/logs:/usr/share/elasticsearch/logs1、启动时报:Error opening log file 'logs/gc.log': Permission denied#root用户登录给日志目录授权chown -R 100.原创 2020-07-02 17:18:25 · 452 阅读 · 0 评论 -
五、基于Docker的ES环境搭建
前提:系统中已经安装好docker和docker-compose。1、新建一个目录用 Elasticsearch,用于存放相关的配置文件(我的目录为:/Volumes/Home/Elasticsearch)2、新建 docker-compose.yml 其内容如下:version: '2'services: es-data-server: image:elasticsearch:7.6.0 container_name: es-data-server envir...原创 2020-07-17 14:09:08 · 370 阅读 · 0 评论 -
四、Elasticsearch基本概念:索引-文档-分片
Elasticsearch有几个核心概念,我们先了解一下,对后面的学习有很大的帮忙。Elasticsearch是一个分布式文档(document oriented)存储。与关系型数据库数据保存到由行和列不同,Elasticsearch不将信息存储为列数据,而是存储已序列化为JSON文档的复杂数据结构。当集群中有多个Elasticsearch节点时,存储的文档分布在整个集群中,可以从任何节点立即...原创 2019-11-08 17:11:09 · 455 阅读 · 0 评论 -
三、Elasticsearch API
如何与Elasticsearch交互取决于你是否使用Java。Java API Elasticsearch为Java用户提供了两种方法:1、传输客户端(Transport client):这个更轻量的传输客户端能够发送请求到远程集群。它自己不加入集群,只是简单转发请求给集群中的节点,这个在 7.0.0 版本不建议使用,在8.0会删除这些API。2、High Level REST C...原创 2019-10-25 17:09:47 · 142 阅读 · 0 评论 -
二、Elasticsearch的安装
当前最新版本为:7.4.1 (Elasticsearch 的安装包中已经包含有JDK)下载地址:https://www.elastic.co/cn/downloads/elasticsearch在windows或Linux中将文件解压即可。禁用X-Pack修改:config/elasticsearch.ymlxpack.ml.enabled: f...原创 2019-10-25 16:22:39 · 125 阅读 · 0 评论 -
一、Elasticsearch 是什么
Elasticsearch是一个基于Apache Lucene(TM)的开源搜索引擎。 Lucene可以被认为是迄今为止性能最好的、功能最全的搜索引擎库。Lucene只是一个Java 库,想要单独使用它,你必须使用Java来作为开发语言并将其直接集成到你的应用中,而且Lucene非常复杂,理解它是如何工作原理你需要深入了解检索的相关知识。Elasticsearch也使用Java开发并对Luce...原创 2019-10-25 15:29:08 · 316 阅读 · 0 评论