Elasticsearch:自动使用服务器时间设置日期字段并更新时区

news2024/9/24 1:24:56

在大多数情况下,你的数据包含一个以 create_date 命名的字段。 即使没有日期字段,处理各种格式和时区的日期对数据仓库来说也是一个重大挑战。 与此类似,如果要检测变化的数据,则必须准确设置日期字段。

在 Elasticsearch 中还有一个选项可以自动将服务器的日期设置为字段。

我们将使用摄取管道属性的 set 和 date 处理器。

创建摄入管道

首先我们需要设置一个时间戳字段。 之后我们将使用日期处理器来更新字段。

日期处理器有一些功能。 target_field 属性就是其中之一。 如果未定义 target_field 属性,它将计算 field 并写入一个名为 @timestamp 的新字段。 但我们想要改变一个已经存在的字段。

PUT _ingest/pipeline/sales-timestamp
{
  "description": "Set two different timestamp fields.",
  "processors": [
    {
      "set": {
        "field": "timestamp",
        "value": "{{{_ingest.timestamp}}}"
      }
    },
    {
      "date": {
          "field": "timestamp",
          "target_field": "tr_timestamp",
          "timezone": "+0300",
          "formats": [ "ISO8601"]
      }
    }
  ]
} 

运行上面的脚本后,系统将显示(“acknowledged”:true)消息:

{
  "acknowledged": true
}

此外,还可以使用 DELETE 命令进行删除或使用 GET 命令验证属性。 重新运行 PUT 命令应该足以更新管道。

GET _ingest/pipeline

DELETE _ingest/pipeline/sales-timestamp

下一步是使用管道创建索引。 对于新建立的摄取管道,必须设置 index.default_pipeline。

即使它会自动填充 date 字段,你仍然需要在索引的映射中定义它们

# Create "sales" Index
PUT sales
{
  "settings": {
    "index.default_pipeline": "sales-timestamp"
  },
  "mappings": {
     "properties": {
       "timestamp": { "type": "date" },
       "tr_timestamp": { "type": "date" },
       "name": { "type": "text" },
       "authour": { "type": "keyword" }
     }
   }
}

写入数据

当你想同时向一个索引添加多个数据时,可以使用 Bulk API。 它尝试从每一行解析你的脚本。 这意味着你不能在批量插入期间使用格式化的 JSON。

通过这种技术,Elasticsearch 会自动为数据分配一个 ID。

POST sales/_bulk
{"index":{}}
{"name":"The Lord of the Rings: The Fellowship of the Ring","authour":"J. R. R. Tolkien"}
{"index":{}}
{"name":"The Lord of the Rings 2: The Two Towers","authour":"J. R. R. Tolkien"}

下一步将允许我们列出或搜索我们的数据。

GET sales/_search?filter_path=**.hits
{
  "size": 5, 
  "query": {
    "match_all": {}
  }
}

上面运行的结果为:

{
  "hits": {
    "hits": [
      {
        "_index": "sales",
        "_id": "rVjrTooBxPLM4Lwr4CwQ",
        "_score": 1,
        "_source": {
          "name": "The Lord of the Rings: The Fellowship of the Ring",
          "authour": "J. R. R. Tolkien",
          "tr_timestamp": "2023-09-01T07:06:35.783+03:00",
          "timestamp": "2023-09-01T04:06:35.783682Z"
        }
      },
      {
        "_index": "sales",
        "_id": "rljrTooBxPLM4Lwr4CwQ",
        "_score": 1,
        "_source": {
          "name": "The Lord of the Rings 2: The Two Towers",
          "authour": "J. R. R. Tolkien",
          "tr_timestamp": "2023-09-01T07:06:35.792+03:00",
          "timestamp": "2023-09-01T04:06:35.792130Z"
        }
      }
    ]
  }
}

在这种情况下,你应该密切关注 tr_timestamp 和 timestamp 数据。 tr_timestamp 列中的数据末尾有 “+03:00”。

你可以向索引添加更多数据。

POST sales/_bulk
{"index":{}}
{"name":"The Lord of the Rings 3: The Return of the King", "authour":"J. R. R. Tolkien"}
      {
        "_index": "sales",
        "_id": "r1j0TooBxPLM4LwreSyl",
        "_score": 1,
        "_source": {
          "name": "The Lord of the Rings 3: The Return of the King",
          "authour": "J. R. R. Tolkien",
          "tr_timestamp": "2023-09-01T07:15:59.397+03:00",
          "timestamp": "2023-09-01T04:15:59.397509Z"
        }
      }

更多关于 pipeline 的使用方法,请阅读文章 “Elasticsearch:ingest pipelines - 使用技巧和窍门”。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/958597.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

蓝牙运动耳机哪个牌子好、好用的运动蓝牙耳机推荐

作为一个热爱运动的人,我对耳机非常关注。我相信许多喜欢运动的人在锻炼时都会佩戴耳机,这样可以为运动增添一份乐趣,享受自己喜爱的音乐或聆听有趣的小说,激发内心的动力。但很多人都不知道要怎么选一款优质的运动耳机&#xff0…

C语言:字符函数和字符串函数(一篇拿捏字符串函数!)

目录 求字符串长度: 1. strlen(字符串长度) 长度不受限制函数: 2. strcpy(字符串拷贝) 3. strcat(字符串追加) 4. strcmp(字符串比较) 长度受限制函数: 5. strncpy(字符串拷贝) 6. strncat(字符串追加) 7. strncmp(字符串比较) 字…

关于大学考研与不考研自己一点看法

据网上报道,2023年研究生报考人数为474万,相较22年报名人数457万人,同比增长 17 万 2023年的考研录取率为20%,如今,在北京的硕士博士生超过本科生人数 学历的贬值,通胀,速度远远超乎了想象 近几年的考研热,考公,考编热是年年基本上…

完美解决xinput1_3.dll丢失问题,修复xinput1_3.dll文件

在电脑游戏中经常遇到xinput1_3.dll丢失的问题,这个问题是因为系统缺少该文件而引起的。而且,这个问题很容易导致游戏无法正常运行,给玩家带来很大的烦恼。在本文中,我们将详细介绍如何修复这个问题,给大家详细的说明多…

YOLO目标检测——时间检测数据集下载分享

时间数据集是表示一天中不同时间的图像集合,日出和日落被视为同一类别。数据集包含日出/日落、白天场景和夜间场景的图像,并已重新缩放为 224 x 224 x 3 像素,描绘了不同的地点和不同的天气条件,如晴朗的天空,阴天等。…

Chrome自动升级了,找不到最新版本的webdriver怎么办?

Chrome自动升级了,找不到最新版本的webdriver怎么办? 背景解决办法 背景 我用Selenium开发了Facebook和Linkedin爬虫,有些新需求要调一下,今天启动selenium时有报错,报错如下:selenium.common.exceptions.SessionNotCreatedExce…

pygame实现物体运动拖尾尾迹-渐隐版

解说文案: 视频讲解:https://www.bilibili.com/video/BV14w411S74E/ 上一集我们实现了物体本体形式的拖尾,这一集我们基于上一集来实现物体逐渐变透明到消失的拖尾。 上集我们也说过,逐渐变透明到消失的物体拖尾只不过是给物体…

Qt无边框青绿色主题

收费产品,学生党、闹眼子党勿扰 收费金额:500元 1 概述 最近因项目需要,写了一个炫酷的青绿色、无边框界面,和3DSMax的界面有点类似。 2 截图 首先看看3DSMax的界面 不知道大家看出来没,这个ui其实很简单&#xff…

15. Docker实战监控神器Uptime Kuma

目录 1、前言 2、什么是Uptime Kuma? 3、Docker部署Uptime Kuma 3.1、安装 3.2、访问 3.3、配置 3.4、集成飞书机器人 3.5、效果 1、前言 在利用Docker部署项目时,我们需要时刻知道已部署的容器的状态。且通常会把所有的站点监控配置到云平台上&#xff0c…

算法通关村十三关 | 辗转相除法、素数和丑数

1. 辗转相除法 辗转相除法又称欧几里得算法,求两个数的最大公因数,希腊数学家喜欢用图形来处理问题,于是将要求最大公约数问题转化为,以两个数字构成矩形,寻找可以铺满整个矩形的最大正方形的边长问题。 题目 例如8和1…

基于Spring Boot的企业门户网站设计与实现(Java+spring boot+MySQL)

获取源码或者论文请私信博主 演示视频: 基于Spring Boot的企业门户网站设计与实现(Javaspring bootMySQL) 使用技术: 前端:html css javascript jQuery ajax thymeleaf 微信小程序 后端:Java springboot…

<Xilinx AXI4> AXI4_Full(一)总线说明

目录 01 AXI4-Full Brust传输介绍 write burst transcation read burst transcation 02 AXI4_Full读写事务接口说明 写事务(Write transaction) AXI4-Full_master写事务逻辑信号 AXI4-Full_slave写事务逻辑信号 读事务(Read transaction) AXI4-Full_master读事务逻辑信…

删除、移动、复制文件时总是要卡在99%一段时间解决方法

Win10文件夹重命名、移动、删除等操作卡顿3-5秒。 原因分析: 查看发现,卡顿期间资源管理器无响应,并且其高度占用CPU资源,但是对于非文件夹文件操作没有问题。 解决方案: 1、双击“此电脑”,选择“查看”,再选择“选…

基于 Spring 前后端分离版本的论坛系统

访问地址:http://8.130.142.126:18080/sign-in.html 代码获取:基于 Spring 前后端分离版本的论坛系统: 基于 Spring 前后端分离版本的论坛系统 一.前置知识 1.软件生命周期 a. 可行性研究:通过分析软件开发要求,确定软件项目的性质、目标和规模&am…

苹果电脑同时使用内外网

公司用的有线的内网,自己要用无线的外网。插上网线就不能用wifi,很烦。于是学到了一种插上网线也能使用wifi的方法。 第一步,调整wifi和网线的顺序 系统偏好设置-网络-左下角设定服务顺序,把wifi调到有线网络前面。 第二步&…

盘点2023最新国内SaaS系统TOP20排名,中国的SaaS系统有未来吗?

在SaaS系统飞速发展的2023年,国内涌现出了一大批优秀的SaaS系统公司,都有哪些企业位列其中呢?SaaS系统有着什么样独特的竞争力,能够不断发展,成为目前市面上发展的较好的云服务框架?SaaS究竟是什么&#xf…

21.3 CSS 背景属性

1. 背景颜色 background-color属性: 设置元素的背景颜色. 它可以接受各种颜色值, 包括命名颜色, 十六进制颜色码, RGB值, HSL值等.快捷键: bctab background-color:#fff;<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"…

微芯I/O控制器瞄准工业与嵌入式运算应用

微芯科技(Microchip Technology)日前发布SCH322X系列I/O控制器新品&#xff0c;该系列产品基于工业及嵌入式开发工程师的需求而开发&#xff0c;功能丰富且具高灵活性。新一代I/O控制器系列拥有尺寸更小的包装和更长的产品生命周期&#xff0c;可运用于更多经济型工业及嵌入式开…

DSP_TMS320F28377D_算法加速方法3_使用TMU库加速

继上两篇方法 DSP_TMS320F28377D_算法加速方法1_拷贝程序到RAM运行_江湖上都叫我秋博的博客-CSDN博客 DSP_TMS320F28377D_算法加速方法2_添加浮点运算快速补充库rts2800_fpu32_fast_supplement.lib_江湖上都叫我秋博的博客-CSDN博客 之后&#xff0c;本文继续讨论第三种DSP算法…

Google Pay外包开发流程

集成 Google Pay 可以为你的应用提供方便的支付体验。下面是一个简要的 Google Pay 集成流程概述&#xff0c;希望对大家有所帮助。北京木奇移动技术有限公司&#xff0c;专业的软件外包开发公司&#xff0c;欢迎交流合作。 1.创建 Google 开发者账号&#xff1a; 如果你还没有…