初识es

es是什么?

es是基于Apache Lucene的开源分布式(全文)搜索引擎,,提供简单的RESTful API来隐藏Lucene的复杂性。

es除了全文搜索引擎之外,还可以这样描述它:

  • 分布式的实时文件存储,每个字段都被索引并可被搜索
  • 分布式的实时分析搜索引擎
  • 可以扩展到成百上千台服务器,处理PB级结构化或非结构化数据。

es的下载与安装

java for windows

es对于java jdk的版本有需求,必须是java1.8及以上版本。

安装步骤参考:https://www.cnblogs.com/Neeo/articles/10368280.html

es for windows

es开箱即用,也就是解压即可使用,安装参考https://www.cnblogs.com/Neeo/articles/10371306.html

kibana for windows

Kibana是一个为ElasticSearch 提供的数据分析的 Web 接口。可使用它对日志进行高效的搜索、可视化、分析等各种操作。

安装参考:https://www.cnblogs.com/Neeo/articles/10371213.html

es的快速上手

es的数据组织

  • 逻辑:索引>l类型> 文档

    • 与关系型数据库对比理解
关系型数据库 es
数据库database 索引indices
表table 类型type
记录 文档documents
字段 字段fields
  • 文档

    • 文档的特性:自我包含,层次型、结构灵活、无模式
    • 类型:在es6.x版本开始,一个索引下面只能有一个类型,类型是是文档的容器,并且,类型记录了字段和值的映射关系。
    • 索引,索引是映射类型的容器,elasticsearch中的索引是一个非常大的文档集合。索引存储了映射类型的字段和其他设置。然后它们被存储到了各个分片上了。
  • 物理:节点,分片

    • 节点,一个集群至少有一个节点,节点内可以有多个索引。在创建索引时,默认创建5个主分片,每个主分片搭配一个复制分片。
    • 分片:文档存储在各个分片上,一个分片也是一个Lucene索引。
    • 倒排索引,倒排索引是一个包含不重复词条的文档,我们称该文档为倒排文档。详情参考
    • es的索引和Lucene的索引对比
      • es的索引是由多个分片组成,而每个分片则是一个Lucene索引。
      • 一个Lucene索引能存储不超过21亿篇文档,或者不超过2740亿个唯一词条。

基本操作

  • 简单操作
PUT s18/doc/1
{
"name":"大刀"
}
PUT s18/doc/2
{
"name":"鹏程"
}
PUT s18/doc/3
{
"name":"laowang"
}

上例中,我们添加3篇文档,首先检查索引s18是否存在,不存在先创建,存在则添加(或更新)文档。

GET s18/doc/1	# 查看指定文档
GET s18/doc/_search # 查看所有文档
GET s18/doc/_search?q=name:laowang # 按条件查询

上例是简单的查询语句。

其他查询:

GET s18/_mapping   # 查看索引的映射类型
GET s18/_settings # 查看索引的设置信息
GET s18 # 查看索引的详情

删除

DELETE s18/doc/1   # 删除指定文档
DELETE s18 # 删除索引

最新文章

  1. Runtime.exec() sucks!!!!
  2. c/c++面试题(6)运算符重载详解
  3. 【python】
  4. php 自带过滤和转义函数
  5. Android ExpandableListView使用+获取SIM卡状态信息
  6. Android从零单排之免费短信验证
  7. java ssm框架入门(一)面向接口编程
  8. 【贪心】【Uva11292】 勇者斗恶龙
  9. Spark-GraphxAPI学习笔记
  10. Log4net 日志记录配置信息
  11. Kafka配置及简单命令使用
  12. Mysql 库表
  13. 阿里云被挖矿进程wnTKYg入侵的解决方法
  14. Ubuntu 下超简单的安装指定版本的nodejs
  15. JSP中的作用域
  16. Python进阶 学习笔记(一)
  17. Oracle VM VirtualBox做好虚拟硬盘后,如何进一步修改虚拟硬盘的大小
  18. [Java] 获取当前Project所在的路径
  19. Office 365部分安装及同时安装Visio的方法
  20. 【数据压缩】LZW算法原理与源代码解析

热门文章

  1. c#中关于Convert.ToDouble的一个注意事项
  2. .net core 读取、修改配置文件appsettings.json
  3. springcolud 的学习(四)服务治理. Eureka
  4. java之spring之helloword
  5. Linux生产环境上,最常用的一套“Sed“技巧
  6. 自学Python编程的第九天(希望有大牛帮我看看我第一个代码是否有弊端,感谢您们)----------来自苦逼的转行人
  7. 【RAC】 RAC For W2K8R2 安装--结尾篇(十)
  8. Oracle 12cR1 RAC集群安装(二)--使用图形界面安装
  9. php框架路由美化后提示No input file specified
  10. 网页代码编辑器Blocs for mac如何进行行的控制?