spark大資料處理技術 應用與效能優化

2021-08-28 21:20:03 字數 1492 閱讀 1337

**spark簡介**

spark是什麼

基於記憶體的分布式實時計算框架,保證高容錯高可伸縮性

與hadoop的關係

hadoop是mapreduce以及hdfs等基礎加上hive,hbase,等上層的生態關係,

spark是mapreducce的替代方案,sparksql是hive的替代方案,sparkstreaming是storm的替代方案,mllib是mahout的替代方案,graphx是graphlab的替代方案

與hadoop相比的優勢

輸出結果上,以stage為單元的有向無環圖,多個任務可以串聯或可以並行執行,

資料格式或記憶體布局上,採用rdd作為分布式資料集,分布式讀寫,

執行策略上,基於任務執行計畫圖,dag輸出,避免shuffle耗費太多的時間,

任務排程上,基於時間驅動的mkka啟動任務,避免程序或執行緒啟動開銷

spark帶來的好處

全棧計算正規化的流水線

輕量級快速處理

易於使用,支援多語言

與hdfs相容

社群活躍度高

spark集群安裝與部署

安裝jdk

安裝scala

配置ssh

安裝hadoop

安裝spark

spark工作機制

spark程式設計實踐

benchmark使用詳解

bdas簡介

mesos:相當於生態系統中的yarn,資源管理任務排程

hdfs;

tachyon:分布式記憶體檔案系統,快取資料並進行快速的讀寫

spark:核心計算引擎,能夠將任務並行化,在集群中進行大規模平行計算

spark streaming :流式計算引擎

spark sql :sql on hadoop ,能夠提供互動式查詢和報表查詢,通過jdbc等介面呼叫

graphx:圖計算引擎

mllib:機器學習庫

spark效能調優

引數優化

1.設定合適的資源

2.spark jvm 引數優化

3.更高效序列化方法,如kyro

4.設定offheap記憶體

5.調整並行度

6.小檔案合併

7.大小表join

8.sql謂詞下推

9.推測式執行

10.網路連線超時時間

**優化

1.filter操作後進行coalesce操作

2.優化資料結構,使用基礎型別

3.處理資料傾斜

4.rdd復用

5.選擇合適運算元

6.使用dataset

集群優化

防止不必要的jar重複分發

2.資料本地性

3.儲存格式選擇

4.資源隔離

5. nm jvm引數優化

6.集群硬體環境

大資料處理技術 基礎介紹

1.5個v 1 volume 高容量 2 velocity 高速度 3 variety 多樣性 4 veracity 真實性 5 value 價值性 2.工作 1 儲存 2 管理 3 分析 這裡主要講這個 3.大資料分析 通過對大量資料進行分析,挖掘發現其中的模式和模型。1 valid 對新資料有效...

大資料處理技術之資料整合

大資料處理技術是乙個十分重要的工作,就好比做菜,我們做菜之前就需要對蔬菜進行清洗,洗過的菜我們才能夠吃的放心,同時還有助於我們的身體健康。而大資料處理就好比清洗蔬菜一樣,當我們對資料整理以後,我們才能夠分析出乙個準確的結果。而大資料處理的技術有很多,其中最常見的就是資料整合,那麼什麼是資料整合呢?下...

大資料處理

大資料處理的流程主要包括以下四個環節 採集 匯入 預處理 統計 分析 挖掘,下面針對這四環節進行簡單闡述。大資料處理之一 採集 在大資料的採集過程中,其主要特點和挑戰是併發數高,因為同時有可能會有成千上萬的使用者來進行訪問和操作,比如火車票售票 和 它們併發的訪問量在峰值時達到上百萬,所以需要在採集...