elasticsearch文档索引API(一),文末有福利

这篇具有很好参考价值的文章主要介绍了elasticsearch文档索引API(一),文末有福利。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

elasticsearch文档索引API(一),文末有福利,2024年程序员学习,elasticsearch,jenkins,大数据

以ddd开头的索引名称也无法自动创建:

elasticsearch文档索引API(一),文末有福利,2024年程序员学习,elasticsearch,jenkins,大数据

而以ccc开头的索引名称则可以自动创建出来,如下:

elasticsearch文档索引API(一),文末有福利,2024年程序员学习,elasticsearch,jenkins,大数据

对于无法自动创建的索引,可以先手动创建index,然后再添加文档。

版本控制

====

版本控制实际上涉及到Elasticsearch的并发访问问题。小伙伴们应该知道,数据库锁有悲观锁和乐观锁之分:

  • 悲观锁,顾名思义就是很悲观,每次操作数据时都认为数据也会被其他线程修改,因此屏蔽一切有可能破坏数据完整性的操作,在传统的关系型数据库中,常见的行锁、表锁、读/写锁都用到了这种锁机制。

  • 乐观锁,顾名思义就是很乐观,认为每一次的数据操作都不会发生并发访问冲突,因此不会锁定要操作的数据资源,只是在每次提交时检查操作是否违反了数据完整性,Elasticsearch中就是采用了这种锁机制,使用乐观锁的一个好处是可以提高系统的吞吐量。

Elasticsearch作为一个分布式系统,在elasticsearch文档读写模型一文中,我们已经向读者介绍了Elasticsearch的读/写模型,读者已经了解到,一个操作在主分片执行完成后,会被转发到其他副本分片上去执行,这个过程是一个并发操作,也是一个异步操作,既然是异步操作,就有可能发生顺序问题,例如一个最新的更新文档先到达副本上,而另一个本该先到达的更新文档反而后到达了,此时就会破坏数据完整性,解决这个问题,可以使用Elasticsearch中提供的版本控制功能。

执行如下命令添加一个文档:

curl -X PUT “localhost:9200/twitter/_doc/1?pretty” -H ‘Content-Type: application/json’ -d’

{

“user” : “kimchy”,

“post_date” : “2009-11-15T14:12:12”,

“message” : “trying out Elasticsearch”

}

执行结果如下:

elasticsearch文档索引API(一),文末有福利,2024年程序员学习,elasticsearch,jenkins,大数据

可以看到,新创建的文档版本号为1,此时,我们再执行一个更新操作,去修改user的值,如下:

curl -X POST “localhost:9200/twitter/_doc/1/_update?pretty” -H ‘Content-Type: application/json’ -d’

{

“script” : “ctx._source.user=“sang””

}

执行结果如下:

elasticsearch文档索引API(一),文末有福利,2024年程序员学习,elasticsearch,jenkins,大数据

可以看到,user已经成功更新了,此时版本号也变为2了。此时如果再想去获取或者更新version为1的文档,则会发生版本冲突问题,如果要指定版本号,版本号必须和当前版本号一致:

elasticsearch文档索引API(一),文末有福利,2024年程序员学习,elasticsearch,jenkins,大数据

也可以使用外部版本号,使用外部版本号的话,要求外部版本号大于等于当前版本号,如下:

curl -X POST “localhost:9200/twitter/_doc/1?pretty&version=3&version_type=external” -H ‘Content-Type: application/json’ -d’

{

“name” : “sang2”

}

执行完后,外部版本号会作为新的版本号。

注意

版本控制是完全实时的,并且不受搜索操作的NRT的影响。如果未提供版本,则执行该操作而不进行任何版本检查。

操作类型

====

有两种方式可以明确指定索引操作类型,实现一种“put-if-absent”行为,不过这种操作只有在目标文档不存在的情况下有效,如果目标文档已经存在,则操作失败(如果不加该参数,不会出现操作失败的情况,只是verison会发生变化)。

有如下两种指定操作类型的方式:

curl -X PUT “localhost:9200/twitter/_doc/1?op_type=create” -H ‘Content-Type: application/json’ -d’

{

“user” : “kimchy”,

“post_date” : “2009-11-15T14:12:12”,

“message” : “trying out Elasticsearch”

小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
elasticsearch文档索引API(一),文末有福利,2024年程序员学习,elasticsearch,jenkins,大数据
elasticsearch文档索引API(一),文末有福利,2024年程序员学习,elasticsearch,jenkins,大数据
elasticsearch文档索引API(一),文末有福利,2024年程序员学习,elasticsearch,jenkins,大数据

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频

如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Java)
elasticsearch文档索引API(一),文末有福利,2024年程序员学习,elasticsearch,jenkins,大数据

总结

互联网大厂比较喜欢的人才特点:对技术有热情,强硬的技术基础实力;主动,善于团队协作,善于总结思考。无论是哪家公司,都很重视高并发高可用技术,重视基础,所以千万别小看任何知识。面试是一个双向选择的过程,不要抱着畏惧的心态去面试,不利于自己的发挥。同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,是不是能真的得到锻炼。其实我写了这么多,只是我自己的总结,并不一定适用于所有人,相信经过一些面试,大家都会有这些感触。

**另外本人还整理收藏了2021年多家公司面试知识点以及各种技术点整理 **

下面有部分截图希望能对大家有所帮助。

elasticsearch文档索引API(一),文末有福利,2024年程序员学习,elasticsearch,jenkins,大数据

中的应该不止薪资,还要看你是不是真的喜欢这家公司,是不是能真的得到锻炼。其实我写了这么多,只是我自己的总结,并不一定适用于所有人,相信经过一些面试,大家都会有这些感触。

**另外本人还整理收藏了2021年多家公司面试知识点以及各种技术点整理 **

下面有部分截图希望能对大家有所帮助。

[外链图片转存中…(img-XccU66IA-1711133016929)]

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录文章来源地址https://www.toymoban.com/news/detail-843173.html

到了这里,关于elasticsearch文档索引API(一),文末有福利的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【ElasticSearch】ElasticSearch Java API的使用——常用索引、文档、查询操作(二)

    Elaticsearch ,简称为es,es是一个开源的 高扩展 的 分布式全文检索引擎 ,它可以近乎 实时的存储 、 检索数据; 本身扩展性很好,可以扩展到上百台服务器,处理PB级别(大数据时代)的数据。es也使用java开发并使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的 目的

    2024年01月16日
    浏览(57)
  • 程序员福利,免费好用的API汇总

    全国快递物流地图轨迹查询:【H5物流轨迹、单号识别】通过物流单号和收寄件地址,自动评估物流时效,并在地图中展示包裹运输轨迹。包括顺丰、圆通、申通等主流快递公司。自动识别快递公司及单号,实时查询,稳定高效,服务器毫秒响应,数据及时准确。 全国快递物

    2024年02月06日
    浏览(38)
  • Visual Studio神级插件——ReSharper(文末有破解文件)

    前言: Visual Studio已经是极具效率的C#生产工具,但是这还不够。使用Resharper 插件,可以更多的帮助到你。快速识别不会发现的错误和代码效率低下,通过安全的快速修复和强大的重构来消除它们。这些都可以通过Resharper来实现。 Resharper是什么? ReSharper是一个由JetBrains公司)

    2024年02月03日
    浏览(23)
  • 现在的程序员真是越来越懒了,api 文档都懒得写!程序员:“api工具惯的”

    为了让大家更能清楚了解 Api 相关往期内容,我写了一个阅读指引: 序号 学习路径指引 链接 1 Api -- 连接世界的 Super Star Api -- 连接世界的Super Star_不吃西红柿丶的博客-CSDN博客 2 软件吞噬世界,Api 快速入门到放弃 软件吞噬世界,Api快速入门到放弃_不吃西红柿丶的博客-CSDN博客

    2024年02月20日
    浏览(28)
  • 基于python的简介以及应用知识,快做好,要发车啦(文末有个投票)

    目录 简介: 流程: 实现: 环境: UrlManager类 HtmlDownloader类 HtmlParser类

    2024年02月06日
    浏览(24)
  • Metashape(Photoscan)【制作DOM和DEM】超级详细的步骤,文末有安装包

    Metashape是一款比较常见的航测软件,可生产高分辨率真正射影像以及带 精细彩色纹理的DEM。自动化的工作流程,即使非专业人员也可在一台电脑上处理成百上千张航摄影像,生成专业级别的摄影测量数据。 下面是Metashape的页面介绍: 下图是Metashape的主界面 在“File”栏下,

    2024年02月06日
    浏览(43)
  • 长春理工大学第六届CTF网络攻防大赛题解(文末有题目下载链接)

    此题解仅为部分题解,包括: 【RE】:①Reverse_Checkin ②SimplePE ③EzGame 【Web】①f12 ②ezrunner 【Crypto】①MD5 ②password ③看我回旋踢 ④摩丝 【Misc】①爆爆爆爆 ②凯撒大帝的三个秘密 ③你才是职业选手 ① Reverse Checkin: 双击文件看到如上提示:“也许你能从字符串里找到什么”

    2024年02月05日
    浏览(48)
  • 【粉丝专享福利】联合6大博主送出18本ChatGPT扫盲教程实体书,文末有惊喜

    人工智能技术的发展已经逐渐改变了我们的生活和工作方式,其中,语言模型技术是近年来关注度很高的一个领域。在这个领域,ChatGPT是一个备受瞩目的产品,它不仅是一个聊天程序,更是一个能够产生具有连贯性和逻辑性的文本的神经网络模型。 2018年6月  : OpenAI发布G

    2024年02月01日
    浏览(27)
  • ElasticSearch创建文档以及索引文档的详细流程

            当我们发起一个查询请求之后,ES是怎么处理这个请求然后返回数据的呢?今天就来详细说一下。 首先看一下整体结构:           在集群模式下一个索引有多个分片,在上图中有三个节点(一个主节点两个从节点),一个索引被分为两个分片(P0、P1),每个主分片有两

    2024年02月01日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包