银行ETL-监管报送

1104报表

1104报表主要包括:资产负债,表外业务、流动性风险、贷款质量、投向行业和地区、重点客户等。

1104报表分类

普通报表、特色类报表。

反洗钱

大额交易、可疑交易。标签分类:疑似犯罪、疑似毒品、疑似传销。

反洗钱—接口报表

在这里插入图片描述

数仓面试题

什么时候用星型模式?什么时候用雪花模型?

星型模型:事实表和维度表直接关联。
雪花模型:只要有任何一个维度表和事实表是间接关联的。
在数仓建设时比较适合使用星型模型构建底层数据Hive表,通过大量的冗余来提升查询效率。
雪花模型比较适合用在数据市集。

什么是维度表?什么是事实表?

事实表就是你要关注的内容。
维度表就是你观察该事务的角度。

如果现在有一千张表从一个库到另外一个库的ODS层,你会怎么做?

利用消息队列做数据订阅发布。

如何把数据从源系统抽到ods层?

通过 kettle 这个ETL工具来实现的,从不同源系统中抽取数据,做数据清洗,把不同类型的数据转换成目标表的数据,然后通过调度工具每天跑数。

抽数频率是什么?有没有做实时抽数?

不同job的抽数频率不一样,有些T+1天抽取,有些是每2小时。

数据表设计三范式?

  1. 每一列都要拆分到不能再拆分的最小粒度。
  2. 每个表都要有主键,并且主键列必须和其他列有关联。
  3. 主键必须和所有列直接关联,而不是间接关联。

说说数仓分层?

  • ODS层:原始数据层。存放原始数据。
  • DWD层:明细数据层。对ODS层数据进行清洗(去除空值、脏数据、超过极限范围的数据)。
  • DWS层:服务数据层。以DWD为基础,进行轻度汇总。
  • ADS层:数据应用层。为各种统计报表提供数据。

为什么要对数仓进行分层?

  • 把复杂问题简单化。
  • 减少重复开发。
  • 隔离原始数据。

说说你对数据仓库的理解?

数据仓库经历三个阶段:简单报表阶段、数据集市阶段、数据仓库阶段。

常见的缓慢变化维处理方式有那三种?

  • 直接覆盖:不记录历史数据,薪数据覆盖旧数据。
  • 新加一行数据(纵向扩展)。
  • 新加两个字段(横向扩展)。

结合具体例子说说你是怎么做缓慢变化的?

背景:有100w用户,用户表记录了他们的状态,部分用户状态每天都有更新。
做法:用拉链表,每天把更新用户的数据插入到用户表。这样既保留了历史数据,并且使存储最为节约。

如何控制数据质量?

  • 运用校验机制。
  • 数据内容的比对,抽样对比。
  • 复盘、每月做一次全量。

说一下你们数仓的数据处理流程?

按照数仓分层思想,分为ods贴源层、dw主题层、mid维表层、dm集市层、app应用层。
过程如下:

  1. 数据通过采集或同步落地基于HDFS存储的ods层。
  2. 主题抽取确认。
  3. 构建维表层数据,如时间、地区、产品类别等数据。
  4. 进行数据集市构建如统计结果、用户画像、TopN热门数据。
  5. 进行集市数据的输出到app进行BI可视化展示。

表分类?

  • 实体表:指业务对象。
  • 维度表。
  • 事务型事实表:一般指随着业务发生不断产生数据,特点是一旦发生不会再变化。
  • 周期型事实表:一般指随着业务发生不断产生变化(更新,新增)的数据。

同步策略有哪些?

  • 全量表:存储完整的数据。
  • 增量表:存储新增加的数据。
  • 新增及变化表:存储新增加的数据和变化的数据。
  • 拉链表:对新增及变化表做定期合并。

实体表(用户,商品,商家):每日全量。
维度表(订单状态,审批状态,商品分类):每日全量。
事务型实时表(交易流水,操作日志):数据量大且不变,每日增量表,每日创建一个分区存储。
周期型事实表(订单,请假等):用每日新增和变化表,制作一张拉链表。

一张500W的表同步过来数据变成了800W,分析哪里的问题?

全量:表里原来就有数据,没有清空;增量:限定的时间有问题。

一张特别大的表 ,几千万的表 怎么通过ETL工具同步?

在ETL工具中,插入数据的时候,可以设置批量提交。比如10万条记录提交一次 ,而不是一次性提交 。

如果抽来的数据有重复的怎么解决?

使用 kettle 核心组件中的去除重复记录控件。

kettle抽数一般遇到什么问题,你们是怎么解决的?

Kettle在不同的数据库抽取数据时,有时会出现中文乱码问题。在输出时,对输出的数据库进行编码配置。

有两张很大的表关联,怎么做才能关联性能好?

关联之前先过滤,再关联。

Oracle怎么进行性能优化?

Oracle性能优化三板斧:索引优化,分区表优化,执行计划(HINTS 优化器优化)。

怎么去重?

用 distinct 或 group by。直接去重、分组去重。

什么是拉链表?

拉链表是为了保留历史数据,并且使存储最为节约。不需要保留历史记录的表一般不做拉链表。

拉链表的实现方式有哪几种?

  • 每天只留最新的一份,比如我们每天用 kettle 抽取最新的一份全量数据到Hive中。
  • 每天保留一份全量的切片数据。

拉链表怎么更新的?

  • 每天drop掉前一天的数据,重新抽一份最新的。
  • 每天一份全量的切片。这是一种比较稳妥的方案,而且历史数据也在。

表分区有哪几种?

  • Range(范围) – 将一个表通过年份划分成三个分区,80年代(1980’s)的数据,90年代(1990’s)的数据以及任何在2000年(包括2000年)后的数据。
  • Hash(哈希) – 对表的一个或多个列的Hash Key进行计算,最后通过这个Hash码不同数值对应的数据区域进行分区。例如可以建立一个对表主键进行分区的表。

  • List(预定义列表) – 将定义的列表的值所对应的行数据进行分割。例如:DBA建立了一个横跨三个分区的表,分别根据2004年2005年和2006年值所对应的数据。

  • Composite(复合模式) - 其实是以上模式的组合使用而已。举例:在初始化已经进行了Range范围分区的表上,我们可以对其中一个分区再进行hash哈希分区。

Oracle常用函数有哪些?

聚合函数:SUM()、COUNT()、AVG()、MAX()、MIN()。
日期函数: LAST_DAY()、ADD_MONTH()。
字符函数: INSTR、SUBSTR、REPLACE、TRIM。
分析函数: OVER (PARTITION BY … ORDER BY…)。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MySQL基础指南:从入门到精通

MySQL基础指南:从入门到精通 MySQL是一个流行的开源关系型数据库管理系统,被广泛用于Web应用程序和服务器端开发。本文将从MySQL的基本概念开始,逐步介绍MySQL的安装、常用操作、数据类型、查询语句等内容,帮助你快速入门MySQL数…

物联网设计竞赛_5_Jetson Nano连接摄像头解决运行卡顿问题

我在命令行用camorama命令打开摄像头的时候发现摄像头非常流畅 当我用python的cv2库打开摄像头的时候发现摄像头显示图片异常卡顿,在网上多方寻觅无果后,经过偶然尝试,我发现了卡顿原来是视频帧率问题 淘宝官方资料看我的摄像头只有30fps, …

##21 深入理解文本处理:使用PyTorch进行NLP基础操作

文章目录 前言简介文本预处理实现分词构建词汇表 文本向量化构建简单的文本分类模型结论 前言 在现代深度学习应用中,文本处理是不可或缺的一部分,尤其在自然语言处理(NLP)领域。借助强大的框架如PyTorch,我们可以更加…

超实用的excel进销存管理系统(75份),自带库存预警,直接用!

进销存(Inventory Management)是企业管理中的一个核心组成部分,它涉及到商品的采购(进货)、销售和存储(库存)等环节。有效的进销存管理可以帮助企业降低成本、提高效率和客户满意度。 1. 采购管…

LeetCode 题目 119:杨辉三角 II

❤️❤️❤️ 欢迎来到我的博客。希望您能在这里找到既有价值又有趣的内容,和我一起探索、学习和成长。欢迎评论区畅所欲言、享受知识的乐趣! 推荐:数据分析螺丝钉的首页 格物致知 终身学习 期待您的关注 导航: LeetCode解锁100…

Transformer - Self-Attention层的复杂度的计算

Transformer - Self-Attention层的复杂度的计算 flyfish 矩阵的维度 下面矩阵的维度是32即 3行,2列 6,10等都是矩阵里的元素 如果矩阵A的列数与矩阵B的行数相同,那么这两个矩阵可以相乘。即,若A是一个mn矩阵,B是一个np矩阵&am…

c++多态机制

多态 在 C 中,多态(Polymorphism)是一种面向对象编程的重要概念,它允许不同类的对象对同一消息做出不同的响应。具体来说,多态性允许基类的指针或引用在运行时指向派生类的对象,并且根据对象的实际类型来调…

ASP.NET在线二手交易系统的设计与实现

摘 要 随着当今社会信息技术的进步,基于互联网的各种应用日益受到了人们的重视,二手商品的重新利用也逐渐被人们关注,二手交易系统就在这种形势下产生了,它利用网络,改变了人们的购物方式。 本文是基于现代二手交易…

Java入门基础学习笔记22——程序流程控制

程序流程控制:控制程序的执行顺序。 程序有哪些执行顺序? 顺序、分支和循环。 分支结构: if、switch 循环: for、while、do-while 顺序结构是程序中最简单最基本的流程控制,没有特定的语法结构,按照代码…

SpringBoot上传文件到服务器(跨服务器上传)

目录 (一)上传文件到本地(windows) (二)上传文件到linux服务器 (三)跨服务器上传文件 (一)上传文件到本地(windows) 1.新建一个文件…

【OpenHarmony IDL工具规格及使用说明书】

OpenHarmony IDL工具规格及使用说明书 IDL接口描述语言简介 当客户端和服务器进行IPC通信时,需要定义双方都认可的接口,以保障双方可以成功通信,OpenHarmony IDL(OpenHarmony Interface Definition Language)则是一种…

Python代码:二、多行输出

1、题目 将字符串 Hello World! 存储到变量str1中,再将字符串 Hello Nowcoder! 存储到变量str2中,再使用print语句将其打印出来(一行一个变量)。 2、代码 import sys str1 Hello World! str2 Hello Nowcoder! print (str1,st…

Python 开发 框架安全:Django SQL注入漏洞测试.(CVE-2021-35042)

什么是 Django 框架 Django 是一个用 Python 编写的 Web 应用程序框架。它提供了许多工具和库,使得开发 Web 应用程序变得更加容易和高效。Django 遵循了“MTV”(模型-模板-视图)的设计模式,将应用程序的不同组件分离开来&#x…

解决kali Linux2024无法获取动态IPv4地址(DHCP)解决方案

用root用户启动终端 进入根目录,选择配置文件 cd到根目录下/../etc/network找到interfaces文件 编辑interfaces文件 vi interfaces,编辑interfaces文件 输入如下命令 打开虚拟网络编辑器 选择虚拟机选项卡,编辑,打开虚拟网络编…

AIGC行业现在适合进入吗

AIGC行业目前正处于快速发展阶段,市场需求正处于爆发期,上大学网(www.sdaxue.com)认为,对于有兴趣的个人或企业而言,现在可能是一个适合进入的时机,以下是具体的分析,供大家参考! 一、AIGC行业前…

【电路笔记】-有源低通滤波器

有源低通滤波器 文章目录 有源低通滤波器1、概述2、有源低通滤波器2.1 一阶低通滤波器2.2 带放大功能的有源低通滤波器3、有源低通滤波器示例4、二阶低通有源滤波器通过将基本的 RC 低通滤波器电路与运算放大器相结合,我们可以创建一个具有放大功能的有源低通滤波器电路。 1、…

TikTok Shop认知课 打通TK小店全流程

资料 001-先导课.mp4 002-如何用思维导图工具做课程笔记.mp4 003-TTS入驻模式.mp4 004-如何获取店铺.mp4 005-TTS店铺注册全流程,mp4 006-店铺整体运营思路.mp4 007-运营的几个误区.mp4 008-新店起店准备工作,mp4 009-规店铺风控注意事项,mp4 010-店铺基础设置之店铺…

【数据结构】堆(超详细)

文章目录 前言堆的概念及结构堆的实现堆的向下调整算法(建小堆为例)堆的向上调整算法(建小堆为例)堆的初始化销毁堆堆的插入堆的删除(规定删堆顶的数据)取堆顶元素判断堆是否为空获取堆的个数 完整代码(包括测试代码&a…

BUU-[极客大挑战 2019]Http

考察点 信息收集 http构造请求数据包 题目 解题步骤 参考文章:https://zhuanlan.zhihu.com/p/367051798 查看源代码 发现有一个a标签,但是οnclick"return false"就是点击后不会去跳转到Secret.php的页面 所以我就自己拼接url http://no…

JavaScript基础知识强化:变量提升、作用域逻辑及TDZ的全面解析

🔥 个人主页:空白诗 文章目录 ⭐️ 引言🎯 变量提升(Hoisting)👻 暂时性死区(Temporal Dead Zone, TDZ)解释📦 var声明🔒 let与const声明📖 函数声明 与 函数表达式函数声…