數據倉庫項目筆記4

知識點:

sparksession.createDataset 需要對元素序列化(發送到task), import sparksession.implicits_ 只支持基本數據類型和case class 序列化
自定義序列化 Encoders.kryo(clazz)
hive本地運行:set hive.exec.mode.local.auto=true 本地模式
with view as(select *from) 創建臨時表
hive分區dt 字段爲表默認字段
數據校驗方法: 可以用總數對比校驗
多維模型 數據立方體 全維度 group by fileds with cube
自由維度組合 grouping set((f1,f2),(f3))
更寬範圍取維度 rollup 從右到左維度變寬 (省 市 區 街道)

下鑽 上卷 切片切塊 旋轉
取更細維度 取更寬維度 取部分維度 改變group by字段順序
需求:

日新日活主題分析: 對uid分組, 獲取日活 通過歷史中間表獲取日新
日活: 每日從日誌中獲取的用戶
日新: 當日日活左連接歷史表 歷史表中沒有的即爲日新
歷史表設計
歷史表由自己和當日日活求出:
日活中沒有在歷史表中的(即日新) 則添加到歷史表並且首登日期和末登日期爲當日, 如果存在歷史表中則 將末登日期修改爲當日 使用full join實現
認知(儘量使用if 不使用where union)
首登日期可求出日新 最後登錄日期可求出日活(爲留存和新鮮度打基礎)

日期 用戶id 用戶首登日期 最後登錄日期

對比流量主題分析: 通過對uid sessionid 分區統計出pv uv 時長 訪問次數

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章