供做文体累计
Posted 煎pang煎pie
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了供做文体累计相关的知识,希望对你有一定的参考价值。
从mysql 到hive:
tinyint通过sqoop到hive变成string类型的时候,会隐式转换 变成布尔类型
需要加强转,cast(is_official as char(3))
hive中 join连接不能用大于小于号,盘古hive版本较高,所以可以用,跑任务的时候不能用
hive中trunc函数不能用季函数: trunc(shijian,‘q’),需要利用shell 给参数
盘古hive版本较高,所以可以用,跑任务的时候不能用
4、前端测的不是数据,是数据格式,
只用把数据发他们就好
,数据对不对根本不重要,只要符合他们使用的格式就行。
5、造数:造数不好,本身的数不测造的全是符合他们场景的数据,
出问题全是推给造数的问题,
尤其是排行榜数据,造一条,关联部分的其他所有数据排行都受影响,出问题都说是造数的问题。
可以反问,前端测试为什么连数据都不会造,自己要什么场景的数据肯定是自己造
造数和脚本逻辑没有关系!
-- 数据同步
1 全量数据同步
1.1 不带参数的实现方式
每次更新目标表的时候,先把目标表中的数据清空,然后用源表的数据插入目标表中 。
1.2 通过参数 ,会计期(一个会计期 = 1个月 ,格式为 年-月 )更新目标表的部分数据 ,对会计期内的数据 进行全量的更新
每次更新,只更新目标表最近一个会计期的数据 ,
更新之前先根据 参数 删除 会计期 内的数据,然后查询源表会计期的数据插入到目标表中。
2 增量数据同步
有一个目标表 EMP_BAK 字段名称跟 EMP表一样 .
为了方便检查,需要在目标表中 添加 审计字段 DATA_DATE ,LAST_UPDATE_DATE
ALTER TABLE EMP_BAK ADD DATA_DATE DATE ;
--------------------------- 全量数据同步 ----------------------
/*需求 :通过存储过程 全量更新 EMP_BAK */
CREATE OR REPLACE PROCEDURE SP_EMP_BAK
IS
BEGIN
-- 先清空目标表的数据 ,为了支持 重跑
DELETE FROM EMP_BAK WHERE 1 = 1 ;
-- 然后 将源表 EMP 的数据 插入到 目标表 EMP_BAK 中
INSERT INTO EMP_BAK
(EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO, DATA_DATE)
SELECT EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO, SYSDATE
FROM EMP;
COMMIT;
END SP_EMP_BAK;
------- 调用存储过程
BEGIN
SP_EMP_BAK;
END ;
SELECT * FROM EMP_BAK;
---------------- 比如 我想一次更新 某一年的数据
CREATE OR REPLACE PROCEDURE SP_EMP_BAK_Y( P_YEAR VARCHAR2)
IS
BEGIN
-- 先清空目标表的数据 ,为了支持 重跑
DELETE FROM EMP_BAK WHERE TO_CHAR(HIREDATE,'YYYY') = P_YEAR ;
-- 然后 将源表 EMP 的数据 插入到 目标表 EMP_BAK 中
INSERT INTO EMP_BAK
(EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO, DATA_DATE)
SELECT EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO, SYSDATE
FROM EMP
WHERE TO_CHAR(HIREDATE, 'YYYY') = P_YEAR;
COMMIT;
END SP_EMP_BAK_Y;
------- 调用存储过程
BEGIN
SP_EMP_BAK_Y('1987');
END ;
SELECT * FROM EMP_BAK ;
-------------------------------------
全量同步 适合数据量不大的小表的更新 。
一般针对 百万行数据以内的小表 我们采用全量方式 ,超过百万以上的表 我们都用 增量的方式更新 。
因为这种方式 准确率非常高。
但是对于大表而言 直接删除表的数据 风险太大 。
于是有了 切片全量 更新方式 ,可以大大提高全量的更新效率,并且可以避免对整张表的操作 。
以上是关于供做文体累计的主要内容,如果未能解决你的问题,请参考以下文章
[机缘参悟-74]:沟通技巧-无论在职场还是在家,尽量少用反问句