大資料技術-hive視窗函式詳解
有不少同學一聽這個標題,hive視窗函式是什麼鬼?沒聽說過還有視窗函式這個東西啊,其實它的用處可大了,下面聽小千慢慢道來。
hive視窗函式
視窗函式指定了函式工作的資料視窗大小(當前行的上下多少行),這個資料視窗大小可能會隨著行的變化而變化。
視窗函式和聚合函式區別
視窗函式對於每個組返回多行,組內每一行對應返回一行值。聚合函式對於每個組只返回一行。
在日常的開發中常用那些型別函式??
1、字串操作函式?split、concat、ifnull、cast
2、聚合函式 : hive適用於分析,所以常用。
3、時間函式 : 數倉的特徵隨時間變化而變化,所以時間也特別多
4、視窗函式:sum() over() 、 count() over() 、 排名函式
瞭解哪些視窗函式,都是什麼意思?
sum(col) over() : 分組對col累計求和
count(col) over() : 分組對col累計
min(col) over() : 分組對col求小
max(col) over() : 分組求col的大值
avg(col) over() : 分組求col列的平均值
first_value(col) over() : 某分割槽排序後的個col值
last_value(col) over() : 某分割槽排序後的後一個col值 lag(col,n,DEFAULT) : 統計往前n行的col值,n可選,預設為1,DEFAULT當往上第n行為NULL時候,取預設值,如不指定,則為NULL
lead(col,n,DEFAULT) : 統計往後n行的col值,n可選,預設為1,DEFAULT當往下第n行為NULL時候,取預設值,如不指定,則為NULL
ntile(n) : 用於將分組資料按照順序切分成n片,返回當前切片值。注意:n必須為int型別。
over(分組 排序 視窗) 中的order by後的語法: 1、物理視窗(真實往上下移動多少行rows between):
CURRENT ROW | UNBOUNDED PRECEDING | [num] PRECEDING AND UNBOUNDED FOLLOWING | [num] FOLLOWING| CURRENT ROW
如: over(partition by col order by rows between 1 preceding and 1 fllowing)
邏輯視窗(滿足條件上下多少行):(金融行業、保險行業、p2p等)
range between [num] PRECEDING AND [num] FOLLOWING
如: over(partition by col order by range between 5 preceding and 5 fllowing)
注意:視窗函式一般不和group by搭配使用。
以上就是關於大資料hive視窗函式的介紹了,希望對大家有所幫助。想了解更多大資料相關知識,歡迎關注小千,後期會繼續分享大資料技術知識。
本文來自千鋒教育,轉載請註明出處。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31548651/viewspace-2788628/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- hive視窗分析函式使用詳解系列二之分組排序視窗函式Hive函式排序
- hive視窗分析函式使用詳解系列一Hive函式
- Hive視窗函式Hive函式
- 大資料技術Hbase和Hive詳解大資料Hive
- hive視窗函式使用Hive函式
- hive05_視窗函式Hive函式
- 大資料技術 - Hive大資料Hive
- Hive視窗函式保姆級教程Hive函式
- Hive 視窗函式(Windowing Functions)Hive函式Function
- 【大資料開發】Hive——Hive函式大全大資料Hive函式
- 詳解SQL操作的視窗函式SQL函式
- 大資料時代的技術hive:hive介紹大資料Hive
- SQL視窗分析函式使用詳解系列三之偏移量類視窗函式SQL函式
- 大資料時代的技術hive:hive的資料型別和資料模型大資料Hive資料型別模型
- Hue-hive sql常用函式詳解HiveSQL函式
- 視窗函式函式
- Oracle分析函式之開窗函式over()詳解Oracle函式
- PostgreSQL:視窗函式SQL函式
- SQL 視窗函式SQL函式
- Mysql視窗函式MySql函式
- Sql Server資料庫開窗函式Over()的使用例項詳解SQLServer資料庫函式
- 圖解大資料 | 海量資料庫查詢-Hive與HBase詳解圖解大資料資料庫Hive
- Oracle分析函式與視窗函式Oracle函式
- PHP快取技術:memcache函式詳解之一PHP快取函式
- 詳解 Oracle 分散式系統資料複製技術Oracle分散式
- 【SQL】Lag/Rank/Over視窗函式揭秘,資料分析之旅SQL函式
- 【函式】oracle視窗函式over()的理解函式Oracle
- 雲端計算大資料學習路線課程大綱資料:hive內部函式大資料Hive函式
- Hive學習筆記 5 Hive的資料查詢、函式Hive筆記函式
- 一篇文章詳解大資料技術和應用場景 大資料大資料
- 與SQL視窗函式相同SQL函式
- PostgreSQL>視窗函式的用法SQL函式
- MySQL視窗函式彙總MySql函式
- hive 的函式 lateral view 用法詳解 | 附pdf下載Hive函式View
- mysql視窗函式中的滑動視窗MySql函式
- hive函式Hive函式
- MySQL資料庫基礎篇視窗函式示例解析教程RATZMySql資料庫函式
- 詳解Android資料儲存技術Android