前面学习了ElasticSearch的概况以及一些配套插件的安装。这篇旨在记录对ES结构的了解和一些基本的操作。

ElasticSearch结构:

对于ES来说,有几个专有名词。比如索引,类型,id这些东西,甚至是倒排插序等等。对于ES来说,ES的基本结构大致为下

ElasticSearch
索引1
......
......
类型1
......
......
文档1
......
字段1
字段2
字段3
......

拿传统的关系DB对比:

  • ElasticSearch相当于关系DB
  • 索引(Indices)相当于database数据库
  • 类型(type)相当于数据库中的一个表
  • 文档(document)相当于表中的某一行
  • 字段(field)相当于每一列字段的数据

但是优点不一样的是:关系DB给人的感觉更严谨(还是繁琐),比如他的数据库要进行建立数据库,建表,让才能插值。而ES通过简单的API可以直接插入,如果没有该索引会直接建立。同样,再更改数据也是一样。操作起来更像我们平时用起来的Nosql,map之类。这样的便捷又难免让人担心ES的严谨性,如果不慎的操作可能带来的影响较大,不过还好ES支持文件备份。

ElasticSearch基本操作:增删改查

ES中常用的请求方式有:

  • PUT 表示增加
  • GET 表示获取
  • DELETE 表示删除
  • UPDATE 表示更新

ElasticSearch基本操作:增

  1. 创建索引
    PUT bigsai
  2. 查看是否创建成功
    GET _cat/indices?v

  3. 插入数据(可直接连同索引创建)


    再次GET _cat/indices?v查看发现索引直接被创建。其中
    _index 表示哪个索引
    _type 表示哪个表
    _id 主键
    _version 版本
    found 数据存在
    _source: 数据内容

ElasticSearch基本操作:删

  1. 删除数据
    直接DELETE {索引}/{类型}/{主键} 即可

    可能会好奇get 后面的pretty干啥的,百度上说没啥大用,是为了简洁给出的结果。
  2. 删除索引
    DELETE {索引名称}

    可以看到前面的bigsai索引已经被删除了。

ElasticSearch基本操作:改
修改数据有两种方式:第一种类似插入覆盖的思想,第二种比较纯正,但是效果一致

查看数据,直接GET下去,查询索引,GET _cat/indices?v

附上上述操作的一些指令,再kibana中进行。http://localhost:5601/app/kibana#/dev_tools/console?_g=()

PUT index1/type1/id1
{"name":"test"
}
GET _cat/indices?v
GET index1/type1/id1?prettyPUT index1/type1/id2
{"school":"just"
}
GET index1DELETE index1/type1/id1
GET index1/type1/id1?prettyDELETE bigsai
GET _cat/indices?vPUT index1/type1/id2
{"school":"江科大"}
POST index1/type1/id2/_update
{"doc":{"school":"江科大"}}GET index1/type1/id2?pretty

学会这些,对ES结构有了初步了解,能够简单呃储存信息。下一步学习目标:学习一些主要查询—>结合javaAPI—>在服务器环境运行。

  • 如果对后端、爬虫、数据结构算法等感性趣欢迎关注我的个人公众号交流:bigsai

ElasticSearch学习笔记(二)—结构了解和索引文档增删改相关推荐

  1. 2018/2/11 ELK技术栈之ElasticSearch学习笔记二

    终于有时间记录一下最近学习的知识了,其实除了写下的这些还有很多很多,但懒得一一写下了: ElasticSearch添加修改删除原理: ElasticSearch的倒排索引和文档一旦生成就不允许修改(其 ...

  2. ElasticSearch学习笔记二 初识Elasticsearch

    初识Elasticsearch Elasticsearch简介 Elasticsearch术语及概念 文本(Text) 索引词/精确值(term) 精确值 VS 全文 分析(Analysis)与分析器 ...

  3. elasticsearch学习笔记——二.querystring查询document方式与dsl查询document方式

    // 1.创建test_serach索引,指定主要分片数量,副本分片数量,文档中字段的数据类型,分词器,是否作为搜索条件 PUT test_search { "settings": ...

  4. 移动开发技术总结!字节大神强推千页PDF学习笔记,附超全教程文档

    Android开发的现状 目前,移动开发已经处于饱和的阶段,Android开发也不如当年盛况,已经不再像前几年前那么火爆.正如一种编程语言如果经历过盛极一时,那么必然有这样的一条曲线,像我们学的正弦曲 ...

  5. Django学习笔记(10)——Book单表的增删改查页面

    一,项目题目:Book单表的增删改查页面 该项目主要练习使用Django开发一个Book单表的增删改查页面,通过这个项目巩固自己这段时间学习Django知识. 二,项目需求: 开发一个简单的Book增 ...

  6. mybatis学习笔记(2)两种配置实现增删改查

    第二天学习mybatis,发现框架的存在确实是省了我们很多时间,我们完全可以把一些操作简化,或者实现简单的封装提供我们使用.昨天是跟着教程云里雾里的实现了配置,今天再次使用就方便很多. String ...

  7. python处理图片文件_python 学习(二)处理图片、TXT文档

    一.尝试实现场景:将一个txt文档内容读到程序的数组内 1.新建一个文档 array.txt,写入内容 ,如: 2.使用命令行读取: 1)在上述新建文档位置相同目录下打开命令提示窗 2)打开文件,读入 ...

  8. 学习笔记:利用markdown写readme文档 (Udacity学城)

    周末逛知乎等资讯平台的时候,无意间了解到Udacity学城有一期关于利用markdown撰写readme文档的教程,想到CSDN博客也提供了markdown编辑功能,而自己到现在还不会用,看着自己写的 ...

  9. Oracle数据库学习笔记(七)--事务及数据的增删改查

    事务的概念 事务是逻辑上的一组操作,要么都执行,要么都不执行. 事务最经典也经常被拿出来说的例子就是转账了.假如小明要给小红转账 1000 元,这个转账会涉及到两个关键操作就是:将小明的余额减少 10 ...

最新文章

  1. vant 做表格_Vant List 列表
  2. android 学习查阅笔记
  3. plSql读取Oracle数据库中文乱码
  4. 软件工程概论第二周 开课作业
  5. python把cookie分割成字典
  6. 仅用语音,AI 就能“脑补”你的脸! | 技术头条
  7. MyBatis整合Spring的实现(11)
  8. 画一个圆角多边形_用SolidWorks一个扫描画出这个多边形瓶子
  9. 技能高考多少分上本科计算机,技能高考多少分上一本
  10. 2021牛客暑期多校训练营8,签到题ADEK
  11. ubuntu-12.04.5-desktop-amd64.iso:ubuntu-12.04.5-desktop-amd64:安装Oracle11gR2
  12. CSDN页面完美格式打印
  13. iOS IPV6审核被拒 - 芒果iOS开发
  14. Chrome应用商店镜像方法 | Crx根据ID直接下载 | 浏览器插件推荐网站
  15. android 6.0 创建文件或文件夹失败
  16. 算法竞赛入门经典-第五章错位输出
  17. SpreadJS表格中关于下拉框new GC.Spread.Sheets.CellTypes.ComboBox()的设置和使用
  18. 【舆情监测平台】舆情危机处置的四大原则。
  19. Spring事务抛出Exception异常不回滚
  20. 各大银行ATM跨行取款收费一览表

热门文章

  1. 《研磨设计模式》chap6 工厂模式factory(2)案例实现
  2. java结丹期(12)----javaweb(servletHTTPweb相关基本概念)
  3. Kubernetes API 聚合开发汇总
  4. buu 凯撒?替换?呵呵!
  5. [工具]-文件明文导出工具
  6. [ARM异常]-图解armv7/armv8的异常向量表和基地址
  7. XSS编码问题以及绕过
  8. android推送如何推送不在线设备,推送系统从0到1(四):消息如何到达用户设备...
  9. java查看虚拟机信息_java分析工具系列4:jinfo(实时的调整和查看虚拟机信息)...
  10. 带你了解什么样的信息是陷阱或为勒索病毒在诱骗