spark脫機數倉優化

2021-10-01 05:29:00 字數 919 閱讀 4674

當業務需求只取dataframe的某幾列時可以使用select方法來獲取其中幾列,dataframe.select(「欄位1」,「欄位2」,「欄位3」)  方法返回值為dataframe

dataframe.drop(「colname」)  刪除dataframe總的某列

dataframe.withcolumn(「新增列名」,column)

import org.apache.spark.sql.functions._
那麼dataframe的cache預設採用 memory_and_disk 這和rdd 的預設方式不一樣rdd cache 預設採用memory_only

spark sql預設shuffle並行度為200 可對 spark.sql.shuffle.partitions 引數進行修改

sparksql中如果經常用到乙個表,可以快取起來   df.cache()  /   df.unpersist   (預設快取級別是 記憶體和磁碟)

大表join小表時,使用廣播 小表。**實現如下:

import org.apache.spark.sql.functions.broadcast

broadcast(spark.table("src")).join(spark.table("records"), "key").show()

這裡涉及到乙個引數:spark.sql.autobroadcastjointhreshold10m,即當表的大小小於這個值時,會預設進行廣播

.set("spark.serializer","org.apache.spark.serializer,kryoserializer")

.registerkryoclasses(array(classof[dwsmember]))

使用條件:

脫機數倉與實時數倉案例

資料倉儲是乙個面向主題的 subject oriented 整合的 integrate 相對穩定的 non volatile 反映歷史變化 time variant 的資料集合,用於支援管理決策。資料倉儲是伴隨著企業資訊化發展起來的,在企業資訊化的過程中,隨著資訊化工具的公升級和新工具的應用,資料量...

實時數倉與脫機數倉總結 一

精選30 雲產品,助力企業輕鬆上雲!主要內容 數倉基本概念 數倉架構演變 實時數倉和脫機數倉的區別 數倉基本概念 首先說一下資料倉儲的概念,以下簡稱數倉。數倉的發展 數倉有兩個環節 乙個是數倉的建設 另乙個數倉的應用。早期的數倉 傳統數倉 目前 數倉的架構演變 脫機數倉和實時數倉 接下來我會分別介紹...

脫機數倉到實時數倉的架構演變

1.實時數倉的相關概述 1.1 實時數倉產生背景 我們先來回顧一下資料倉儲的概念。資料倉儲的概念是於 90 年代由 bill inmon 提出,當時的背景是傳統的 oltp 資料庫無法很好的支援長週期分析決策場景,所以資料倉儲概念的 4 個核心點,我們要結合著 oltp 資料庫當時的狀態來對比理解。...