ES 十月 01, 2022

lombook注意点1

文章字数 5.4k 阅读约需 5 mins.

问题描述

一个实体类存有pId,即第一个字母小写,第二个字母大写的情况.

public class Department {
    private Long id;
    private Long pId...
查看全文

ES 十月 01, 2022

maven 上传私服

文章字数 3.6k 阅读约需 3 mins.

1.配置maven的settings配置.其中包含私服地址,账户等信息.

2.在idea中关联maven配置文件settings

关联settings

3.pom中配置私服地址

  <!-- 使用分发管理将本项目打成jar包,直接上传到指定服务器 --> 
  <distributionManagement> 
    <!--正式版本--> 
    <repository> 
      <!-- nexus服务器中用户名:在settings.xml中<server>的id...
查看全文

ES 十月 12, 2021

分词器

文章字数 6k 阅读约需 5 mins.

分词之前的预处理,过滤无用字符

切词用

常见的分词器

  • standard analyzer:默认分词器,中文支持的不理想,会逐字拆分。
  • pattern tokenizer:以正则匹配分隔符,把文本拆分成若干词项。
  • simple pattern tokenizer:以正则匹配词项,速度比pattern tokenizer快。
  • whitespace analyzer:以空白符分隔

中文分词器 ik

安装与部署

查看全文

ES 十月 12, 2021

聚合查询

文章字数 2.8k 阅读约需 3 mins.

聚合(aggs)查询中,进行聚合的字段必须是exact value,分词字段不可进行聚合,对于text字段如果需要使用聚合,需要开启fielddata,但是通常不建议,因为fielddata是将聚合使用的数据结构由磁盘(doc_values)变为了堆内存(field_data),大数据的聚合操作很容易导致OOM,详细原理会在进阶篇中阐述。

三种聚合分类

  1. 分桶聚合(Bucket agregations):类比SQL中的group by的作用,主要用于统计不同类型数据的数量

    函数:terms

    注意...

查看全文

ES 十月 12, 2021

环境搭建

文章字数 5.2k 阅读约需 5 mins.

  1. 下载elasticsearch镜像

    docker pull elasticsearch:8.2.0
    
    root@空痕影的matebook:~# docker pull elasticsearch:8.2.0
    8.2.0: Pulling from library/elasticsearch
    e0b25ef51634: Pull complete
    860caabdf263: Pull complete
    9fbe6bc43ac5: Pull complete
    9d4f6737f430: Pull complete...
查看全文

ES 十月 12, 2021

mapping

文章字数 5.3k 阅读约需 5 mins.

​ mapping就是ES数据字段field的type元数据,ES在创建索引的时候,dynamic mapping会自动为不同的数据指定相应mapping,mapping中包含了字段的类型、搜索方式(exact value或者full text)、分词器等。

  1. 在dev tools中命令查询

    GET user/_mapping

  2. 在索引管理界面中查看

    stack management ->index mamagement ->(select table) ->mappings

    ...
查看全文

ES 十月 10, 2021

搜索与查询

文章字数 20k 阅读约需 18 mins.

查询示例

GET kibana_sample_data_ecommerce/_search
{
  "size": 1
}


{
  "took" : 0,
  "timed_out" : false,
  "_shards" : {
    "total" : 1,
    "successful" : 1,
    "skipped" : 0,
    "...
查看全文

ES 八月 13, 2021

JDK动态代理生成的CLASS文件

文章字数 1.5k 阅读约需 1 mins.

在学习代理模式的时候,想看看动态代理生成的文件长啥样.只需要在程序启动时设置生成配置.

源码中可以看出文件输出是通过 saveGeneratedFiles 控制的.

而saveGeneratedFiles的生成是通过GetBooleanAction方法读取系统变量由来.

private static final boolean saveGeneratedFiles = (Boolean)AccessController.doPrivileged(new GetBooleanAction("...
查看全文
0%