一个分布式、可扩展、实时的搜索与数据分析引擎。可用于实现全文搜索和实时数据统计
Spring Data Elasticsearch:spring提供的一种以Spring Data风格来操作数据存储的方式,可以避免编写大量的样板代码

常用注解

@Document

  1. //标示映射到Elasticsearch文档上的领域对象
  2. public @interface Document {
  3. //索引库名次,mysql中数据库的概念
  4. String indexName();
  5. //文档类型,mysql中表的概念
  6. String type() default "";
  7. //默认分片数
  8. short shards() default 5;
  9. //默认副本数量
  10. short replicas() default 1;
  11. }

@Id

  1. //表示是文档的id,文档可以认为是mysql中表行的概念
  2. public @interface Id {
  3. }

@Field

  1. public @interface Field {
  2. //文档中字段的类型
  3. FieldType type() default FieldType.Auto;
  4. //是否建立倒排索引
  5. boolean index() default true;
  6. //是否进行存储
  7. boolean store() default false;
  8. //分词器名次
  9. String analyzer() default "";
  10. }
  11. //为文档自动指定元数据类型
  12. public enum FieldType {
  13. Text,//会进行分词并建了索引的字符类型
  14. Integer,
  15. Long,
  16. Date,
  17. Float,
  18. Double,
  19. Boolean,
  20. Object,
  21. Auto,//自动判断字段类型
  22. Nested,//嵌套对象类型
  23. Ip,
  24. Attachment,
  25. Keyword//不会进行分词建立索引的类型
  26. }