MySQL文件表结构及ES索引库结构

一、MySQL中文件表

业务字段如下,公共字段如创建人,修改时间等随自己需求增加。

file_id_:file表主键。

file_name_:文件名称(中文原名称)。

new_name_:文件新名称(时间戳数字),文件名称在服务器保存时,有可能会重复,所以使用时间戳。

path_:文件在服务器地址。

ext_:文件扩展名,标识文件是docx,pdf,img等格式。

desc_:文件描述。

total_bytes_:总字节数。

record_status_:归档状态。

二、ES中索引库

我创建的索引库名为Grammar。索引库的字段根据自己想要索引什么字段进行设计。

创建索引库有两种方法。

1、使用Kibana语法创建。

2、使用注解创建,项目中创建索引类型后,索引类上方加上注解,项目启动就会自己创建。

第1种方法没什么说的,查询Kibana官方API就行。

第2种@Document注解,以及内部属性简单介绍一下。
点进去如图:

在这里插入图片描述
@Document(indexName = “grammar”,type = “grammar”,shards = 3,replicas = 1)

该行注解的意思为索引库名字为grammar,类型为grammar,分片数为3,副本数为1。

关于分片和副本以及ES其他名词介绍放到以后讲,现在主要介绍业务实现。

索引类上有@Document注解,索引类中字段属性上方要加@Field注解。

在这里插入图片描述

@Field注解有很多属性,常用的只有三个。

type:字段属性,枚举类型,如FieldType.Keyword,FieldType.Text。默认为FieldType.Auto,自动检测类型,一般自己设置。

在这里插入图片描述

index:是否被索引,默认为true,如果某一个字段不想被索引,要改为false。

analyzer:指定分词器,如常用的IK分词器,如果不指定分词器的话,默认使用ES自带分词器,不好用。

分词以及分词器是一个大的概念,后边会单独写一篇博客。

猜你喜欢

转载自blog.csdn.net/numbbe/article/details/108485785
今日推荐