1.資料架構

2.資料倉庫建模
目前的構建方法主要有三種:
? 范式建模法
? 維度建模法
? 物體建模法
1.范式建模:主要解決關系型資料庫的資料存盤
資料庫六大范式說明
? 第1范式-1NF:無重復的列、列不可再拆分,
? 第2范式-2NF:屬性完全依賴于主鍵
? 第3范式-3NF:屬性不依賴于其它非主屬性,即屬于依賴于主鍵不能出現傳遞依賴,
? 巴斯-科德范式(BCNF),第四范式(4NF),第五范式(5NF,又稱完美范式)
2.維度建模法
事實表,維度表來構建資料倉庫,最被人廣泛知曉的名字就是星型模式(Star-schema)和雪花模式(Snowflake-schema),
事實表:
發生在某個時間點上的一個事件,即具體的物體內容,
維度表:
從事實表中抽離出來的分析粒度,維度表中包含事實資料表中事實記錄的特性,
星型建模法

雪花建模法
優點是通過最大限度地減少資料存盤量以及聯合較小的維表來改善查詢性能,
雪花型結構去除了資料冗余,

3.資料分析
3.1 函式分類
分析函式
- ROW_NUMBER:序列分析函式,用于排序,按照順序,不關心是否有相等情況,從1開始逐條給資料一個加1后的序列號,如1,2,3,4…
- RANK:序列分析函式,用于排序,按照順序,關心相等情況,如遇到相等情況,名次會留下空位,如1,2,2,4,4,6…
- DENSE_RANK:序列分析函式,用于排序,關心相等情況,如遇到相等情況,名次不會留下空位,如1,2,2,3,3,4…
視窗函式
- LAG:函式LAG(col,n,DEFAULT)用于統計視窗內往上第n行值,
- LEAD:與LAG作用相反,函式形式如LEAD(col,n,DEFAULT) 用于統計視窗內往下第n行值,
- FIRST_VALUE: 取分組內排序后,截止到當前行,第一個值
- LAST_VALUE:與FIRST_VALUE相反
over()從句:指定分析視窗函式的細化落圍規則
- 與標準的聚合函式COUNT、SUM、MIN、MAX、AVG聯用,如sum(…) over(…)
- PARTITION BY陳述句,使用一個或者多個原始資料型別的列
- PARTITION BY與ORDER BY陳述句,使用一個或者多個資料型別的磁區或者排序列
使用視窗規范視窗規范支持以下格式:
- ROWSBETWEEN:視窗子句,屬于物理截取,即物理視窗,從行數上控制截取資料的大小多少,
- RANGE BETWEEN:視窗子句,屬于邏輯截取,即邏輯視窗,從列值上控制視窗的大小多少,
- PRECEDING:window子句之往前
- FOLLOWING:window子句之往后 CURRENT ROW:window子句之當前行
- UNBOUNDED:window子句之起點,UNBOUNDED PRECEDING 表示從前面的起點,UNBOUNDED
- FOLLOWING:表示到后面的終點, 注意:order by子句后邊如果沒有跟著多大視窗,則默認為range between unbounded preceding and current row
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/342079.html
標籤:其他
上一篇:面試官:TCP為什么是三次握手?而不是兩次或四次...
下一篇:nginx安裝http2.0協議
