解决Presto dirver timestamp时区问题
#bigdata/metabase
一、背景介绍
1、Presto版本
使用阿里云集群的版本 EMR-5.4.2,Presto的版本为338;
Facebook后续不再维护,Trino 351为首个版本
2、Metabase版本
历史版本为0.38.4,新版本为0.51.5
3、0.38.4 cast to timeStamp
select cast(now() as timestamp),now()
4、0.51.5 cast to timeStamp
![[Pasted image 20241217171529.png]]
时区问题导致了Metabase无法升级
二、基于源码做二次开发
官网driver 开发模版
https://github.com/metabase/sample-driver
1、源码修改
下载源码可以忽略版本
https://github.com/metabase/metabase.git
通过日志可以看到drivers是从 modules下copy 过来的
![[Pasted image 20241217171802.png]]
查看下文件结构图
![[Pasted image 20241217172624.png]]
2、copy presto driver 及打包
- 修改metabase-plugin.yaml
driver:name: presto-jdbc-ninedisplay-name: Presto-ninelazy-load: trueparent: sql-jdbcinit:- step: load-namespacenamespace: metabase.driver.presto-jdbc-nine- step: register-jdbc-driverclass: com.facebook.presto.jdbc.PrestoDriver
- 修改presto_jdbc_nine.clj
- 直接将presto-jdbc 替换为 presto-jdbc
- 将该方法中的UTC 替换为 Asia/Shanghai ![[Pasted image 20241217172825.png]]
- 修改deps.edn,添加metabase/presto-jdbc-nine
:deps
{metabase/presto-jdbc {:local/root "presto-jdbc"}metabase/presto-jdbc-nine {:local/root "presto-jdbc-nine"}
}}
- 修改完后,根据README中的命令执行
clojure -X:build:drivers:build/driver :driver :presto-jdbc-nine
在resource/modules查看打好的jar
![[Pasted image 20241217173640.png]]
三、Trino支持的问题
可以使用starburst曲线救国,就可以查询Trino了,暂时没有时区问题
https://www.metabase.com/docs/v0.51/developers-guide/partner-and-community-drivers
https://github.com/starburstdata/metabase-driver
四、待解决问题
Decimal问题
select cast(order_fee as double),order_fee from dws.order_info_detail where data_dt = '2024-12-01' limit 1
![[Pasted image 20241217173844.png]]
底层还是使用Facebook的jar,可能是包的问题,也有可能是版本的问题,暂时使用cast to double去解决
没有办法上传jar,有需要留言吧
相关文章:
解决Presto dirver timestamp时区问题
#bigdata/metabase 一、背景介绍 1、Presto版本 使用阿里云集群的版本 EMR-5.4.2,Presto的版本为338; Facebook后续不再维护,Trino 351为首个版本 2、Metabase版本 历史版本为0.38.4,新版本为0.51.5 3、0.38.4 cast to time…...
【优选算法】Prefix-Kage:前缀和的算法影(上)
文章目录 1.概念解析2.代码实现2.1【模版】前缀和(一维)2.1.1 原理2.1.2 代码实现 2.2【模版】前缀和(二维)2.2.1 原理2.2.2 代码实现 希望读者们多多三连支持小编会继续更新你们的鼓励就是我前进的动力! 本篇是优选算…...
中阳科技:量化交易模型的技术革新与实践应用
在金融市场日益复杂化的今天,量化交易作为数据驱动的现代化交易方式,已成为金融领域发展的关键方向。中阳科技凭借深厚的技术积累与创新能力,积极探索量化交易模型的优化与应用,开辟了智能金融新局面。 量化交易的优势与市场前景…...
golang 判断一个点是否在一个多边形内
我有一需求为:判断一个点(经纬度范围)是否在一个多边形范围内(多个经纬度点) 这里我借助几何库( github.com/paulmach/orb)来处理地理空间数据 可以通过在线获取经纬度来确认代码正确性 packa…...
图论笔记1
1.1邻接矩阵储存法 //创建:二维数组vector<vector<int>> graph(n,vector<int>(n,0));//储存for(int i0;i<m;i){int x1,x2;cin>>x1>>x2;graph[x1-1][x2-1]1;}1.2邻接表储存法 补充:c中的list是链表 链接 //创建:数组…...
大模型QLoRA微调——基于Qwen2-7B的自动化病历摘要生成系统
01 项目简介 (1)项目背景 医疗文档中包含大量的诊疗信息,例如疾病诊断、手术名称、解剖部位、药物使用以及影像和实验室检查结果。这些信息是医疗数据分析的核心,但由于医疗文本内容复杂、格式多样,提取这些关键内容…...
CTFHub-ssrf
技能树--Web--SSRF 内网访问 开启题目 尝试访问位于127.0.0.1的flag.php吧 进入环境 根据提示输入即可 127.0.0.1/flag.php 伪协议读取文件 开启题目 尝试去读取一下Web目录下的flag.php吧 进入环境,根据提示输入 file:///var/www/html/flag.php 鼠标右键查看…...
使用ElasticSearch实现全文检索
文章目录 全文检索任务描述技术难点任务目标实现过程1. java读取Json文件,并导入MySQL数据库中2. 利用Logstah完成MySQL到ES的数据同步3. 开始编写功能接口3.1 全文检索接口3.2 查询详情 4. 前端调用 全文检索 任务描述 在获取到数据之后如何在ES中进行数据建模&a…...
【docker】容器编排之docker swarm
Docker Swarm容器编排详细讲解 Docker Swarm是Docker的原生容器编排工具,它通过将多个Docker引擎组合成一个集群来实现高效的容器部署和管理。 Swarm提供了服务发现、负载均衡、扩展、自动恢复等功能,能够让开发者和运维人员以更简便的方式管理容器化应…...
微信小程序苹果手机自带的数字键盘老是弹出收起,影响用户体验,100%解决
文章目录 1、index.wxml2、index.js3、index.wxss1、index.wxml <!--index.wxml--> <view class="container"><view class="code-input-container"><view class="code-input-boxes"><!-- <block wx:for="{{…...
SCAU期末笔记 - Linux系统应用与开发教程样卷解析(2024版)
我真的不理解奥,为什么会有给样卷不自带解析的,对答案都没得对,故整理一篇 样卷1 一、选择题 1、为了遍历shell脚本调用时传入的参数,需要在shell脚本中使用_____。 A.$#表示参数的个数B.S表示所有参数C.$0表示脚本名D.$1表示…...
2024 年贵州技能大赛暨全省第二届数字技术应用职业技能竞赛“信息通信网络运行管理员”赛项--linux安全题
Linux操作系统渗透测试 Nmap -sS -p- ip 扫描 这题有俩种做法,一种用3306端口,另一种用48119端口 用48119端口是最简单的做法 nc 连接这个端口如何修改root密码 ssh连接 这样我们就成功的拿到root权限 1.通过本地PC中渗透测试平台Kali对服务器场景进…...
CTFshow-php特性(Web125-150)
CTFshow-php特性(Web125-150) Web125 <?php error_reporting(0); highlight_file(__FILE__); include("flag.php"); $a$_SERVER[argv]; $c$_POST[fun]; if(isset($_POST[CTF_SHOW])&&isset($_POST[CTF_SHOW.COM])&&!isset($_GET[fl0g])){if(!p…...
机器学习一点基础
人工智能(Artificial Intelligence, AI)和机器学习(Machine Learning, ML)是当今最热门的技术领域之一。然而,初学者往往面对大量的术语和技术细节,不知道从何入手。本文将以通俗易懂的方式介绍机器学习的基…...
【C++】 While循环高级分析与实践扩展
博客主页: [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: C 文章目录 💯前言💯While 循环基础知识1.1 基本语法形式1.2 if 与 while 的区别1.3 循环结构比较 💯While 循环实例分析2.1 执行结果2.2 计算流程分析 💯While 循环注意…...
React Native状态管理器Redux、MobX、Context API、useState
Redux、MobX、Context API、useState都是React中用于状态管理的工具,但它们各自有不同的特点和使用场景。 Redux 介绍: Redux是一个JavaScript状态管理库,最初由Dan Abramov和Andrew Clark于2015年开发。它基于Flux架构,强调状态…...
【AI系列】Paddle Speech安装指南
文章目录 环境依赖1. 安装Python1.1 下载Python安装包1.2 安装gcc1.3 安装依赖库1.4 编译和安装Python1.5 配置环境变量 2. 安装PaddlePaddle3. 安装PaddleSpeech4. 运行PaddleSpeech5. 解决常见问题5.1 错误:libssl.so.1.1解决方法: 5.2 错误࿱…...
【学习笔记总结】华为云:应用上云后的安全规划及设计
一、背景和问题 数字化时代,随着信息技术的飞速发展,企业和各类组织纷纷将自身的应用程序迁移至云端。云计算凭借其诸多优势,如成本效益、可扩展性、灵活性以及便捷的资源共享等,已然成为了现代业务运营的重要支撑。 今年…...
数据可视化-2. 条形图
目录 1. 条形图适用场景分析 1.1 比较不同类别的数据 1.2 展示数据分布 1.3 强调特定数据点 1.4 展示时间序列数据的对比 1.5 数据可视化教育 1.6 特定领域的应用 2. 条形图局限性 3. 条形图图代码实现 3.1 Python 源代码 3.2 条形图效果(网页显示&#…...
设置Qt程序开机自启动(windows版本)
前言 本文展示在windows环境下,通过代码实现更改系统注册表的方式来实现程序的开机自动启动。 一、注册表 需要更改的系统注册表为: HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Run 二、代码演示 1.头文件 头文件autorun.h #ifndef …...
LeetCode hot100-80
https://leetcode.cn/problems/partition-labels/description/?envTypestudy-plan-v2&envIdtop-100-liked 763. 划分字母区间 已解答 中等 相关标签 相关企业 提示 给你一个字符串 s 。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。…...
Ubuntu批量修改文件名
文章目录 批量重命名文件:Ubuntu下使用find命令结合sed和mv参考 批量重命名文件:Ubuntu下使用find命令结合sed和mv 在日常开发和文件管理中,有时我们需要批量重命名一批文件,比如将文件名中的某个特定字符串替换为另一个字符串。…...
CVMJ 2024 | StyleDiffusion: 基于Prompt嵌入的真实图像反演和文本编辑
论文:《StyleDiffusion: Prompt-Embedding Inversion for Text-Based Editing》 代码:https://github.com/sen-mao/StyleDiffusionhttps://github.com/sen-mao/StyleDiffusion 问题背景 已有一些工作利用预训练扩散模型进行真实图像的编辑。这些方…...
UE5 帧数优化思路
A、思路 1、直接在GM的事件beginplay中改可延展性相对质量级别, 改为1或2,最简单粗暴的方式,而效果明显,帧数提高一倍,GPU占用率与显存占用直接下降一大截。在物体密集的地方卡顿会缓解很多,物体少的地方…...
【Java】正则表达式基础题+场景题练习
基础语法可以看我另一篇博客:正则表达式【规则】【实例】【技巧】_正则规则-CSDN博客 输出结果全是true public class StringRegexTest {public static void main(String[] args) {System.out.println(matchSingleNum("1"));System.out.println(matchMul…...
qq资料修改/空间操作
此工具仅支持 空间ck导入操作 发布说说 转发别人的动态分享 支持修改头像 修改昵称 空间权限获取 说说内容自定义 说放置说说图片 同样也支持多ck操作 详细支持如下 发布说说 转发分享 修改头像 修改昵称 允许空间 发送分享 设置访客权限 问题空间 清空相册 删除说说 封存三天…...
数据结构—图
目录 一、图的定义 二、图的基本概念和术语 2.1有向图 2.2无向图 2.3简单图 2.4多重图 2.5完全图 2.6子图 2.7连通、连通图和连通分量 2.8强连通图、强联通分量 2.9生成树,生成森林 2.10顶点的度、入度和出度 2.11边的权和网 2.12稠密图、稀疏图 2.1…...
【Prompt Engineering】2.迭代优化
一、环境配置 配置使用zhipuai API 的环境。安装 zhipuai 库,并设置 API_KEY。封装 zhipuai 接口的函数,参数为 Prompt,返回对应结果。 from zhipuai import ZhipuAI zhipu_client ZhipuAI(api_key"") # 一个封装 OpenAI 接口…...
每日十题八股-2024年12月16日
1.垃圾回收算法哪些阶段会stop the world? 2.minorGC、majorGC、fullGC的区别,什么场景触发full GC 3.垃圾回收器 CMS 和 G1的区别? 4.什么情况下使用CMS,什么情况使用G1? 5.G1回收器的特色是什么? 6.GC只会对堆进行GC吗&#x…...
使用 imageio 库轻松处理图像与视频
使用 imageio 库轻松处理图像与视频 imageio 是一个 Python 库,用于读取和写入多种图像和视频格式。它功能强大、易于使用,广泛应用于图像处理、视频编辑和数据可视化等领域。本篇文章将介绍 imageio 的基础功能、常见用法以及高级操作。 一、安装 imag…...
MR30分布式IO模块:驱动物流传输机高效升级
在日新月异的物流行业中,效率与智能化已成为推动企业转型升级的关键驱动力。随着物联网、大数据、云计算等技术的深度融合,传统物流传输机正逐步向智能化、自动化迈进。在这场技术革命中,明达技术MR30分布式IO模块以其独特的优势,…...
【开源免费】基于SpringBoot+Vue.JS在线竞拍系统(JAVA毕业设计)
本文项目编号 T 013 ,文末自助获取源码 \color{red}{T013,文末自助获取源码} T013,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 查…...
Docker
文章目录 仓库容器核心组件网络模式挂载方式Docker常用指令Compose常用指令代码 仓库 国内镜像仓库地址 修改方法见: https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors 科大镜像:https://docker.mirrors.ustc.edu.cn/网易:ht…...
上海艾一公司-运维工程师知识点备战
1.AD域控(ActionDirectory活动目录) ad域的作用:批量管理主机和用户(所以数量要多用这个才合适) 前置1:VM安装Windows镜像 2.IT资产管理 3.会议室管理...
程序员实用工具之推荐(Recommendations for Practical Tools for Programmers)
11款程序员实用工具,老少皆宜 优秀程序员之所以优秀的原因并不一定是他写代码的速度比所有人都快,但他解决事情的效率一定是比很多人都要高的,提升工作效率的方法并不需要我们十八般武艺样样精通,有时候使用好的工具就能帮助我们大…...
win服务器的架设、windows server 2012 R2 系统的下载与安装使用
文章目录 windows server 2012 R2 系统的下载与安装使用1 windows server 2012 的下载2 打开 VMware 虚拟机软件(1)新建虚拟机(2)设置虚拟机(3)打开虚拟机 windows server 2012(4)进…...
当服务器数据包丢失该怎样进行解决?
当企业面对服务器数据包丢失的情况,都有哪些解决策略呢? 首先对于数据丢失,最直接的方法就是尝试进行数据恢复,数据恢复过程通常包括使用数据恢复软件扫描丢失数据的磁盘驱动器,以此来尝试找回丢失的文件,在…...
go语言 爬虫 钉钉群机器人
第一步:钉钉新建一个群机器人 钉钉创建群机器人文档:https://open.dingtalk.com/document/orgapp/custom-robot-access 安全设置选择签名 签名设置文档:https://open.dingtalk.com/document/robots/customize-robot-security-settings 第二步…...
14篇--模板匹配
原理 模板匹配就是用模板图(通常是一个小图)在目标图像(通常是一个比模板图大的图片)中不断的滑动比较,通过某种比较方法来判断是否匹配成功。 匹配方法 1. 平方差匹配TM_SQDIFF 以模板图与目标图所对应的像素值使用…...
Cadence学习笔记 5 四路HDMI原理图绘制
基于Cadence 17.4,四层板4路HDMI电路 更多Cadence学习笔记:Cadence学习笔记 1 原理图库绘制Cadence学习笔记 2 PCB封装绘制Cadence学习笔记 3 MCU主控原理图绘制Cadence学习笔记 4 单片机原理图绘制 目录 5、四路HDMI原理图绘制 快捷键总结:…...
一文详解“分治—归并“在算法中的应用
找往期文章包括但不限于本期文章中不懂的知识点: 个人主页:我要学编程(ಥ_ಥ)-CSDN博客 所属专栏: 优选算法专题 这里的归并与我们在数据结构中学习的归并排序是一样的,我们可以先来复习一下归并排序。用一道题来帮助我们回想起归…...
哪些视频媒体平台可给企业直播间做分发拉流转播宣传?提升流量数据!
【本篇由 言同数字媒体直播分发 原创】在如今信息爆炸的时代,直播已成为企业进行品牌传播、产品推广和与消费者互动的重要渠道。为了最大化直播效果,企业通常需要选择合适的视频平台进行直播分发和拉流宣传。以下是一些热门的视频平台,它们为…...
软硬件漏洞有哪些
关于网络软件安全漏洞与硬件安全漏洞,这是一个涉及到信息安全领域的重要问题。在当前信息化快速发展的背景下,无论是软件还是硬件的安全问题都可能成为安全隐患,因此了解这两方面的安全漏洞对于提升整体系统的安全性至关重要。 ### 网络软件…...
ElasticSearch系列:索引分片调整
一、前言 ElasticSearch版本:8.11.1 操作环境:机器数5,规格为16核32 GB 索引名称:test 索引大小:1.5G 索引分片:1主1副 测试环境将test索引调整为2主2副。计划采用如下两种方案: 方式耗时…...
KeyFormer:使用注意力分数压缩KV缓存
Keyformer: KV Cache Reduction through Key Tokens Selection for Efficient Generative Inference 202403,发表在Mlsys Introduction 优化KV cache的策略,主要是集中在系统级别的优化上,比如FlashAttention、PagedAttention,它…...
ElementPlus Table 表格实现可编辑单元格
通过基础的Table表格来实现单元格内容的可编辑 1.首先定位到需要编辑的列,替换el-table-column <el-table-column label"Editable Column" width"300"><template #default"{ row, column, $index }"><el-inputsize&qu…...
ASR-LLM-TTS 实时语音对话助手:语音识别、大模型对话、声音生成
参考:https://blog.csdn.net/weixin_42357472/article/details/137020794 asr:funasr-SenseVoiceSmall 离线 llm:deepseek 在线api tts:edge-tts 在线api import pyaudio import wave import threading import numpy as np import time from queue import Queue import web…...
怎样正确做 Web 应用的压力测试?
Web应用,通俗来讲就是一个网站,主要依托于浏览器来访问其功能。 那怎么正确做网站的压力测试呢? 提到压力测试,我们想到的是服务端压力测试,其实这是片面的,完整的压力测试包含服务端压力测试和前端压力测…...
什么是MyBatis?
MyBatis 是一个优秀的持久层框架,它消除了几乎所有的 JDBC 代码和手动设置参数以及获取结果集的工作。MyBatis 使用简单的 XML 或注解用于配置和原始映射,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象…...
【网络云计算】2024第50周-每日【2024/12/13】小测-理论-写10个Bash Shell脚本-解析
文章目录 1. 计算1到100的和2. 列出当前目录下所有文件和文件夹3. 检查文件是否存在4. 备份文件到指定目录(简单示例)5. 打印系统当前日期和时间6. 统计文件中的行数7. 批量重命名文件(将.txt后缀改为.bak)8. 查找进程并杀死&…...