如何在海豚调度器自动监测报表是否跑出数据

news/2024/9/20 1:33:12/ 标签: 调度器, ETL, 数据分析, pandas, 数据挖掘, pyspark

在数据仓库报表开发时,有的报表依赖的表多,虽然在海豚调度任务上是跑成功,但实际上没有跑出数据来。开发人员负责的任务和表越来越多,每天去手动检查费时费力,不去理睬默认是成功的,等到业务或产品发现问题时,又给人一种不专业不负责的感觉。

比较好的方式是用代码进行自动巡检,由于项目现在是用海豚调度器,为了统一及利用海豚调度器的失败通知,下面用海豚调度器来实现自动监测报表是否跑出数据来。

由于海豚调度器是分布式的,后面不但要监测mysql、还要监测hive或hbase,但pyspark可以方便来访问这些数据库,同时不用在不同机器额外安装软件。

1、编写查看mysql的包按日期或月份是否有数据的脚本

from pyspark.sql import SparkSession
from pyspark.sql.functions import col
import sys# 创建SparkSession
spark = SparkSession.builder \.appName("Database Query") \.getOrCreate()# 数据库连接信息
DB_HOST = 'your_db_host'
DB_PORT = 3306  # MySQL默认端口号
DB_NAME = 'your_db_name'
DB_USER = 'your_db_user'
DB_PASSWORD = 'your_db_password'# 检查的日期和月份
DATE_TO_CHECK = '2024-05-22'
MONTH_TO_CHECK = '202404'# 表名和相应的SQL查询语句
TABLE_QUERIES = {'test_measu

http://www.ppmy.cn/news/1462387.html

相关文章

[emailprotected](7)父子通信,传递元素内容

目录 1,children 属性2,多个属性 普通对象等,可以通过变量直接传递,那类似 vue 中的 slot 插槽,如何传递元素内容? 1,children 属性 实际上,写在自定义组件标签的内部代码&#xf…

【系统架构师】-论文模板(二)

【摘要】 xxx年x月,我参与了xxx项目的研发,该系统主要完成xxx等功能的整合。我在该项目中担任xxx职务,全程参与了xxx工作。本文以xxx系统为例,主要论述了xxx在该系统的具体应用,通过采用xxx,采用xxx&#x…

MySql--SQL语言

目录 SQl---DDL 结构定义 创建、删除 数据库 代码 运行 设计表 数据类型 整数 浮点数 主键 约束 主键自增长 默认值 字段注释 创建、删除 表 代码 运行 代码 代码 运行 SQL---DML 数据操纵 插入数据 代码 运行 代码 运行 代码 运行 代码 …

2024年5月软考,别再傻傻啃书了!

备考2024年软考,不听课也不刷题,只是看教材的话,想要考试通过,几乎是不可能的,特别是基础比较薄弱的考生。 为什么只看教材通不过? 如果只是把教材从头到尾看一遍,毫无目的地看书,…

Linux中解决普通用户使用不了sudo问题

目录 sudo的使用场景sudo使用不了的原因解决方法 sudo的使用场景 之前我们介绍了文件的权限问题 如果一个普通用户想去执行一个它命令之外的权限,只能使用sudo 比如普通用户使用yum去安装软件,需要sudo yum xxxx sudo使用不了的原因 这里我们用普通用户…

LLaMA2详解

padding_side llama系列训练和推理都是right padding: 训练:其实只要设置padding mask,那么left/right pad是没有区别的。然而实际上huggingface中某些tokenizer在training的时候必须设成right padding,因为有些tokenizer使用的是…

【Android安全】AOSP版本对应编号| AOSP版本适配Pixel或Nexus型号 | 驱动脚本下载地址

AOSP版本对应编号 https://source.android.com/docs/setup/about/build-numbers?hlzh-cn#source-code-tags-and-builds 例如android-8.1.0_r1 对应的编号是OPM1.171019.011 可以适配Pixel 2 XL AOSP驱动脚本下载 编译AOSP时,需要Google的驱动,后面才…

ISSC-原神启动

题目: f12 python代码攻击Tomcat漏洞 import struct def pack_string(s):if s is None:return struct.pack(">h", -1)l len(s)return struct.pack(">H%dsb" % l, l, s.encode(utf8), 0) def unpack(stream, fmt):size struct.calcsiz…

【Vue3进阶】- Vite 配置

视频 Vite 配置 基础配置项 server 选项 本地运行时,开发环境服务器的配置。 host 默认 localhost,设置为 true 或 0.0.0.0 时会监听所有地址,让局域网内的设备进行访问,否则只有本机能访问项目。 open 默认 false&#x…

Mysql超详细安装配置教程(保姆级图文)

MySQL是一种流行的开源关系型数据库管理系统,它广泛用于网站和服务的数据存储和管理。MySQL以其高性能、可靠性和易用性而闻名,是许多Web应用程序的首选数据库解决方案之一。 一、下载安装包 (1)从网盘下载安装文件 点击此处直…

15:00面试,15:08出来,面试问的有点变态。。。。

🍅 视频学习:文末有免费的配套视频可观看 🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 从小厂出来,没想到在另一家公司又寄了。 到这家公司开始上班,加班是每天…

Spring Boot集成shiro之使用redis缓存demo

1.背景 上次发了这篇文章《Spring Boot集成Shiro快速入门Demo》后,有网友“just.blue”后台反馈集成redis有点问题,今天特地把集成过程发出来 2.为什么要使用cache 用来减轻数据库的访问压力,从而提升查询效率。 3.Shiro使用Redis做缓存 …

Spring (14)什么是Spring Boot

Spring Boot是一个开源的Java基础框架,旨在简化Spring应用的创建和开发过程。Spring Boot通过提供一套默认配置(convention over configuration),自动配置和启动器(starters)来减少开发者的开发工作量和配置…

机器学习之二分类决策丛林(Two-class Decision Jungle)

二分类决策丛林(Two-class Decision Jungle)是一种集成学习方法,结合了决策树和随机森林的优点,并引入了图模型的概念。决策丛林旨在通过构建多个决策树并将它们的结构图合并为一个“丛林”图来提高分类性能。下面详细介绍二分类决策丛林的核心概念、工作原理、优点和缺点,…

继承初级入门复习

注意:保护和私有在类中没有区别,但是在继承中有区别,private在继承的子类不可见,protect在继承的子类可见 记忆方法:先看基类的修饰符是private,那都是不可见的。如果不是,那就用继承的修饰和基…

Java方法的递归

Java方法的递归 前言一、递归的概念示例代码示例 二、递归执行过程分析代码示例执行过程图 三、递归练习代码示例按顺序打印一个数字的每一位(例如 1234 打印出 1 2 3 4)递归求 1 2 3 ... 10写一个递归方法,输入一个非负整数,返回组成它的数字之和. …

.NET8 动态添加定时任务(CRON Expression, Whatever)

需要使用 Quartz .NET <PackageReference Include"Quartz.AspNetCore"/>建立 Global JobKey public static class GlobalJobKey {public static JobKey CustomizedKey > new JobKey("xxx scheduled", "group1"); }建立 Job public clas…

QT使用特点汇总

一.Qt的历史及功能介绍 Qt 最早在1991年由挪威的两位程序员 Eirik Chambe-Eng 和 Haavard Nord 开发&#xff0c;他们在1994年创立 Trolltech 公司&#xff08;奇趣科技&#xff09;正式经营软件业务。 Qt 的第一个公众预览版于1995年面世&#xff0c;之后在2008年被诺基亚收购…

实现自动化巡检多台交换机并将输出信息保存到文本文件中

为了实现自动化巡检多台交换机并将输出信息保存到文本文件中,可以扩展之前的 SSHInspectionTool 类,使其能够处理多台交换机的连接和命令执行。我们可以使用多线程来并行处理多个 SSH 连接,以提高效率。 目录 一、导入依赖包 二、编写Java类 (1)SSH.java (2)SSHIns…

Java enum 枚举类

Java Enum 枚举类 概述 枚举类型本质上也是一种类&#xff0c;只不过是这个类的对象是有限的、固定的几个&#xff0c;不能让用户随意创建。 如果针对于某个类&#xff0c;其实例是确定个数&#xff0c;则推荐将此类声明为枚举类。 如果枚举类的实例只有一个&#xff0c;则可…