- 博客(18)
- 问答 (2)
- 收藏
- 关注
原创 实时大数据Flink知识结构(深度好文,附脑图)
实时大数据Flink知识结构图·Flink基本概念o概念官方定义:Apache Flink is a framework and distributed processing engine for stateful computations over unbounded and bounded data streams. Flink has been designed to run in all common cluster environments perform computa...
2021-10-26 19:00:00 789
原创 数据仓库需求管理文档
需求名称:干系人:分析师:数仓开发:需求涉及项: 需求涉及项 记录 离线or实时* 是否涉及历史数据处理* 是否涉及报表处理* 是否需要UAT或测试环境数据* 需求变更记录: 调整主要内容* 变更日期 版本号 .
2021-10-14 16:28:06 555
原创 验证collect_set后的数据是否比展开的数据占用空间小
验证collect_set后的数据是否比摊开的数据占用空间小?文件格式:parquet去重记录数:776885759验证方式:读取用户日志表,A表记录用户id和日志时间的去重记录,B表把用户id和该用户对应的日志时间的数组作为一行来记录。B表展开后与A表相同。两表存储的数据量是相同的。最后观察A表和B表的磁盘占用空间是否相同。实现结论:A表占用10.9G,B表占用4.7G,说明collect_set后的数据占用空间更小,节省磁盘空间57%。-- 表A:crea
2021-10-12 14:19:51 231
原创 数仓归因逻辑实践方案(sql实现)
分享一个相对简洁的处理归因的方式:使用下面逻辑归因的前提是归因事件类型是可枚举的,且是有一定的顺序的(其实归因事件都具备)。例如直播中的上下麦归因事件中,把同属于一组的上麦下麦的流水日志归到同一条记录中,方便后续对上下麦的各种统计。从业务上来讲,上麦下麦正常的事件发生顺序只有以下三种:申请上麦->上麦成功->下麦 上麦成功->下麦 申请上麦->取消申请然后给不同的事件类型以预期时间序列值,就是下面脚本中的action_seq。下面的截图展示了如何区分同一个序
2021-10-09 15:04:47 802 1
原创 数据仓库之—埋点全流程
控制好上游的埋点,就能在数仓范围上,更合理的规划模型。试想,如果把所有的埋点数据抽象到一个模型中,一个模型能满足所有的埋点查询需求,是不是解放了数仓的大量流量数据需求。埋点流程① 提出埋点需求产品运营预估未来的数据需求,并根据这些数据需求提出埋点。② 埋点评审产品运营+数据团队+开发团队,三方共同评审埋点的合理性。埋点评审评什么?有无埋点的必要?是否有除了埋点更好的方案? 埋点内容的技术可行性?——技术回答 埋点是否能满足未来的数据需求? 是否有更合适的埋点方案?③ 埋点
2021-10-02 21:14:32 520
原创 greatest()遇到null怎么处理?
greatest(1,null) spark和hive跑出来的结果不一样,小心有坑!!!greatest在spark中如果遇到null值是被忽略的,但是在hive中直接就返回null了。
2021-09-28 20:33:43 1731
原创 Spark并行机制简记
几个基础概念RDD分区:Spark中的RDD就是一个不可变的分布式对象集合。每个RDD都被分为多个分区(partitions),这些分区被分发到集群中的不同节点上进行计算。每个分区对应需要启动一个task去执行该分区的数据计算。Executor:是spark任务(task)的执行单元executor下的cores:顾名思义这个参数是用来指定executor的cpu内核个数,分配更多的内核意味着executor并发能力越强,能够同时执行更多的task。下面是一个具体的case分区数:表示同
2021-09-26 23:16:53 756
原创 SparkUI怎么看—Stage指标汇总
SparkUI是spark任务的重要工具,这里能看到spark任务的运行状态到底是如何的,它能给我们的调优工作提供大部分的线索。下面是一个spark任务在map、shuffle、reduce三个阶段的典型情况,供参考:Map Stage:Shuffle Stage:Reduce Stage:...
2021-08-29 14:44:32 1475
原创 小程序开发——解决用户登陆时发生onLaunch与onLoad异步的问题
在app.js的onLaunch中执行登录部分的代码时,由于异步,index页面中的onLoad已经开始执行。而此时onLaunch还没运行完呐,index获取不到登陆信息。怎么办?一种方式是通过回调函数,我刚开始也是用的这个方法,但是这个方法有一定的缺陷(如果启动页中有多个组件需要判断登陆情况,就会产生多个异步回调,过程冗余),不建议采用。我这里采用另一个方法:通过Object.defi...
2019-09-16 15:19:57 1724
原创 小程序设置缓存和读取缓存
创建xx.wxml文件并写入设置缓存和读取缓存的触发项<view bindtap='f1' >设置1</view><view bindtap='f2' >设置2</view><view bindtap='f3' >设置3</view><view bindtap='f4' >读取4</view>...
2019-09-07 13:57:37 958
原创 JavaScript promise的创建与使用
promise对象使用是处理异步等待时常用手段,用于在异步程序中同步脚本的执行。 let fs=require('fs') let p1=new Promise(function (resolve,reject) { fs.readFile('a.tssxt',function (err,data) { if(!err){ ...
2019-08-16 22:22:43 847
原创 JavaScript异步执行
以下的代码执行顺序体现出了JavaScript异步执行机制:的代码始终在同步得代码(主线程)执行后再产生回调。而异步的回调代码,谁先成功谁先走。console.log('1.纯输出')setTimeout(function () { console.log('2.延迟10秒钟打印')},10000)setInterval(function () { cons...
2019-08-14 22:40:04 183
原创 Node.JS中模块的导出
Node.JS中模块的导出//定义模块中的变量var str="你好,我是一个模块"//定义模块函数function print_str() { return '我是一个模块函数的返回值'}//定义模块函数function square(num) { return num*num}//导出模块对象module.exports={ str, p...
2019-08-11 22:57:15 166
原创 微信小程序开发之通过自定义组件实现导航栏
先说结果——如下面的图所示是呈现出的最终结果,通过顶部的导航栏,分别展示不同的业务。下面说一说具体的实现方法:一、创建自定义组件"udc-navigation"文件夹,并通过"新建Component"的方式创建组件。二、在udc-navigation.wxml文件中编写布局代码如下:<!-- 导航栏 --><block> <v...
2019-08-04 18:59:58 2647
原创 微信小程序开发之获取服务端数据
下面的示例使用node.js作为后端服务脚本,展示了小程序获取服务端数据的方式。步骤如下:1. 创建server.js文件var http = require('http');//下面的变量tracks取的是一个json对象,也可换做别的。var tracks='{"ret":200,"data":{"currentUid":29364890,"albumId":19272845,"tr...
2019-08-03 10:11:13 2351
原创 微信小程序开发之获取服务端数据
下面的示例使用node.js作为后端服务,展示了小程序获取服务端数据的方式。步骤如下:1. 创建server.js文件var http = require('http');//下面的变量tracks取的是一个json对象,也可换做别的。var tracks="{\"ret\":200,\"data\":{\"currentUid\":29364890,\"albumId\":35...
2019-08-02 23:54:31 1032
原创 js实现的猜拳小游戏
最近在学js,实现了一个猜拳小游戏,分享一下<!DOCTYPE html><html><head> <meta charset="utf-8"> <title>index</title> </head><body><h3>猜拳游戏</h3> <...
2019-06-26 10:10:24 3319 1
原创 SQL优化之视图合并
下面两个脚本的写法得到的结果是相同的。但是聚合的过程一个发生在外部一个发生在内部,执行过程是大不相同的,其运行的效率也自然不同。脚本1:select t1.meterial_id ,t2.play_cnt ,t2.play_device_cntfrom t_material as t1 inner join ( select track_id ...
2019-06-02 21:43:09 1805
空空如也
采访一下,你们眼中的数据仓库是干嘛的?
2021-09-30
关于Flink WATERMARK,下面两种理解方式哪种是对的?
2021-09-12
TA创建的收藏夹 TA关注的收藏夹
TA关注的人