当前位置: 首页 > news >正文

【Elasticsearch】使用Postman操作es的_bulk批量操作

众所周知,Elasticsearch的语法还是很恶心的。因此需要大量的调试,有些人在kibana上进行调试,但是如果想使用Postman进行调试时,大部分还是没有问题的。主要是bulk操作,有一些特殊性。关键问题在于换行这里。

如果你要使用postman调试时,如果有以下报错,希望可以帮助到你
在这里插入图片描述

以下方案以Elasticsearch7.10版本官方文档Elasticsearch7.10 Bulk为例
官方示例

POST _bulk
{ "index" : { "_index" : "test", "_id" : "1" } }
{ "field1" : "value1" }
{ "delete" : { "_index" : "test", "_id" : "2" } }
{ "create" : { "_index" : "test", "_id" : "3" } }
{ "field1" : "value3" }
{ "update" : {"_id" : "1", "_index" : "test"} }
{ "doc" : {"field2" : "value2"} }

在这里插入图片描述
第二句大致翻译为:actions 使用换行符分隔的 JSON (NDJSON) 结构在请求正文中指定:
在这里插入图片描述
翻译:数据的最后一行必须以换行符 \n 结尾。每个换行符前面可以有一个回车符 \r。向 _bulk 端点发送请求时,应将 Content-Type 标头设置为 application/x-ndjson

官网说的很明白,就是每个插入以及最后一行都必须有换行!!我们可以将最后一行空出来
在这里插入图片描述

结果成功 !!!
在这里插入图片描述

当然还有另外一种导入方式就是选择二进制文件的导入方式

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

第三种方法是使用curl的方式

如果要向 curl 提供文本文件输入,则必须使用 --data-binary 标志,而不是普通的 -d。后者不保留换行符。例:

$ cat requests
{ "index" : { "_index" : "test", "_id" : "1" } }
{ "field1" : "value1" }
$ curl -s -H "Content-Type: application/x-ndjson" -XPOST localhost:9200/_bulk --data-binary "@requests"; echo
{"took":7, "errors": false, "items":[{"index":{"_index":"test","_type":"_doc","_id":"1","_version":1,"result":"created","forced_refresh":false}}]}

挺麻烦的,不建议使用

http://www.dtcms.com/a/37374.html

相关文章:

  • Redis面试知识点总结
  • 【原创工具】文件清单生成器 By怜渠客
  • 【算法设计与分析】(一)介绍算法与复杂度分析
  • WEEX交易所安全教學:如何應對剪切板被劫持駭客攻擊?
  • 复合字面量
  • 第十八:路由传参 query
  • Jupyter Notebook中使用GPU进行计算
  • ubuntu离线安装Ollama并部署Llama3.1 70B INT4
  • 刷题总结 栈和队列:单调栈
  • 玩机日记 14 飞牛fnOS部署qBittorrent、AList、Jellyfin,实现下载、存取、刮削、观看一体的家庭影音中心
  • 基于 CFD 预测的机器学习第 2 部分:在 Benchmark 应用程序上使用 Stochos 预测流场
  • VMware建立linux虚拟机
  • github 部署前端静态网页(react vite)
  • 【PLL】相位检测器:PFD
  • Java多线程安全
  • QT零基础学习之路(四)--信号和槽机制
  • 第五章:队列管理模块
  • DAY40|动态规划Part08|LeetCode: 121. 买卖股票的最佳时机 、 122.买卖股票的最佳时机II 、 123.买卖股票的最佳时机III
  • 文本编辑器使用指南:Linux中的文本编辑器大冒险
  • 算法题(76):跳跃游戏II
  • 【JavaWeb13】了解ES6的核心特性,对于提高JavaScript编程效率有哪些潜在影响?
  • 静止的钉子
  • transformer架构嵌入层位置编码之动态NTK-aware位置编码
  • 第四章 哈希表
  • 每天一个Flutter开发小项目 (4) : 构建收藏地点应用 - 深入Flutter状态管理
  • 递归、搜索与回溯算法 —— 名词解析
  • Elasticsearch面试宝典【刷题系列】
  • 【深度学习神经网络学习笔记(三)】向量化编程
  • 将CUBE或3DL LUT转换为PNG图像
  • 怎么修改node_modules里的文件,怎么使用patch-package修改node_modules的文件,怎么修改第三方库原文件。