問答題:
1.了解到的從資料庫抽取資料到數倉的軟體都有那些,目前大資料平台大多不支援updata操作,針對每日增量資料與歷史資料合併,常用的都有那些方法。
解題關鍵點: full outer join insert overwrite 每天保留乙份全量快照
2.有沒有遇到過資料質量的問題,一般都是那些環節問題,平時是如何保證資料的正確性。
3.業務方資料庫的資料型別和大資料數倉的資料型別不一致,你是怎麼處理的,統一表結構的規則是什麼?一般這個規則是誰來制定。
4.hive分割槽表和分桶表的區別是什麼。有哪些應用場景。
5.es了解麼?講下對於es游標的理解。
6.redis了解麼?一般都有什麼應用場景,redis的資料型別有那些。
7.hbase了解麼?rowkey一般怎麼設計。一般都有什麼應用場景。
8.什麼是資料倉儲,如何構建資料倉儲?
解題關鍵點:
業務調研 需求調研 資料調研
業務域 主題域 資料域
分層架構 定製規範 命名規範、開發規範、流程規範
維度建模 星座模型 寬表 粒度 指標體系
任務排程 資料質量 元資料管理 血緣關係 資料治理
bi視覺化 olap多維分析 使用者畫像 推薦系統
9.元資料的理解?元資料管理系統?
10.數倉如何分層的?及每一層的作用?思考:為什麼要這麼分層?
應用題題目背景
現有一張使用者**記錄表 ev_fs_view,基於該錶需要進行相關統計分析。
資料如下
ymduser_id
ageview_time
register_time
20200401
0001
2515min
2020-04-01 13:01:23
20200401
0002
3324min
2020-04-01 15:06:36
20200402
0001
2535min
2020-04-01 13:01:23
20200403
0004
384min
2020-04-03 21:00:01
20200404
0001
159min
2020-04-01 13:01:23
20200402
0002
3333min
2020-04-01 15:06:36
20200403
0002
3317min
2020-04-01 15:06:36
20200402
0003
4547min
2020-04-02 11:00:01
20200404
0005
5527min
2020-04-04 21:00:01
20200405
0005
5524min
2020-04-04 21:00:01
問題如下
統計:使用者總量,使用者平均年齡
統計:每天註冊的使用者數,和使用者累計**時長,使用者平均**時長
統計:每10歲乙個分段,統計每個區間的使用者總量,使用者平均**時長
統計:每天**時長最長的使用者userid
統計:使用者次日留存情況
統計:每天**時長都大於20min的使用者總量,只要有一天**時長小於20min就不算。
解題要求
1.請用hive-sql分別寫出每個問題的解題過程。
面試題 數倉
如何判定乙個表是事實表還是維度表?資料建模過程說一下?三正規化緩慢變化維處理方式?什麼也不該,保留原始值 直接覆蓋 增加新行,需要為新航分配新的 鍵 增加新屬性列 增加微型維度 某些維度屬性變化較快導致維度表越來越大可以把這些屬性柴麗出來單獨構建微型維度表 雙重外來鍵並且方式1與方式2結合 在方式2...
面試題 數倉專案技術如何選型?
要提供兩套方案,紅色的一套,黑色的一套,提供對比 優先選擇紅色的那一套,因為比較通用,而且熟悉 flume解決日誌的採集,kafka解決訊息的分發和消峰,sqoop用於hdfs和關係型資料庫進行資料的傳遞 mysql主要用於查詢,它用於儲存與前端程序互動比較頻繁的資料,因為查詢要速度比較塊,hdfs...
大資料數倉面試流程和重點面試題
一 自我介紹 看簡歷 表達能力 2 3分鐘左右 學歷 參加工作 愛好 特長 二 專案 背三 資料倉儲 1 以數倉為中心 不要直接上來說ods dwd dws ads 2 正規化建模與維度建模的方式區別 3 主題劃分是否合適 4 事實表與維度表的介紹 有多少張,哪些緩解進行度量 5 總結矩陣 6 變化...