1. 程式人生 > >Spark常見問題總結

Spark常見問題總結

1.java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.sql.metadata.SessionHiveMetaStoreClient

spark無法知道hive的元資料的位置,所以就無法例項化對應的client。 
解決的辦法就是必須將hive-site.xml拷貝到spark/conf目錄下

2.Spark not Serializable 
使用了非序列化的物件,在Java中若是在類中spark呼叫使用了匿名函式,則需要將該類實現Serializable介面,並且將成員變數用transient修飾

3.啟動spark時載入了hive配置 
(1) java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient 
Caused by: MetaException(message:Version information not found in metastore. ) 
解決:hive-site.xml 中的 “hive.metastore.schema.verification” 值為 false

Caused by: MetaException(message:Could not connect to meta store using any of the URIs provided. Most recent failure: 
解決: 因為沒有正常啟動Hive 的 Metastore Server服務程序。 :nohup hive –service metastore &

(2)org.datanucleus.store.rdbms.connectionpool.DatastoreDriverNotFoundException: The specified datastore driver

("com.mysql.jdbc.Driver") was not found in the CLASSPATH. Please check your CLASSPATH specification, and the name of the driver.

解決:在spark-env.sh檔案加入export SPARK_CLASSPATH="/Users/zouziwen/soft/spark-1.6.3/lib/mysql-connector-java-5.0.8-bin.jar"

(3)java.lang.OutOfMemoryError: PermGen space 
-Xms1024m -Xmx1024m -XX:MaxNewSize=256m -XX:MaxPermSize=256m

(4)java.lang.NoClassDefFoundError: javax/jdo/JDOException 
解決:將spark目錄下lib的jar包加入到執行classpath中

(5)org.apache.spark.sql.AnalysisException: Table not found 
解決:idea執行時找不到hive-site.xml,需要將該檔案加入到idea的執行環境中

(6)HDFS error: could only be replicated to 0 nodes, instead of 1

  1. stop all hadoop services

  2. delete dfs/name and dfs/data directories

  3. hadoop namenode -format # Answer with a capital Y

  4. start hadoop services

4.Java物件不能在Spark執行函式中進行更改

5. hive啟動問題 

hadoop dfsadmin -safemode leave

6. 使用map導致程式卡住

由於map的rehash方法不斷執行,導致wait

7. key數量不均勻或value數量不均勻,會導致資料傾斜問題,使得資料執行shuffly運算元操作時,大量task處於停滯狀態

8.ExecutorLostFailure:使用的資源過多,不能保證獨享,導致機器被搶佔,減少申請資源的量就好了

相關推薦

Maven+scala+spark常見問題總結

去除[WARNING] Using platform encoding (UTF-8 actually) to copy filter 在POM檔案的頂級目錄中,加入下面的配置。其實就是設定一下工程的編碼格式 <properties>

Spark常見問題總結

1.java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.sql.metadata.SessionHiveMetaStoreClientspark無法知道hive的元資料的位置,所以就

ehcache註解使用問題常見總結

查詢緩存 不一致 -c 獲取 導致 ng- 對象 忽略 shu 1. 支持緩存的方法最好有傳入參數和返回數據 1.1 沒有入參將無法自定義key,即無法保證數據更新時實時更新緩存中對應的數據(如果數據不會被改變則忽略)1.2 沒有返回數據的話,當從緩存中獲取的數據時,如法

spark知識點總結(1)

1.RDD彈性分散式資料集:是抽象出來的概念,元素的集合。是一批節點上一批資料的集合。 分散式:每個rdd會把資料分成多個parttioner放在多個節點上。eg:90萬條資料放在9個節點上面,每個   節點9萬條資料。 彈性:eg:每個節點上面個的記憶體中只能存放5萬條資料,那麼

程式碼優化,常見總結

用final關鍵字修飾類,直接宣告其中方法不能被重寫,提高jvm解析效率 儘量重用物件,減少物件建立 儘可能使用區域性變數,區域性變數用完直接銷燬,節省空間 及時關閉流,避免不必要的資源佔用,對資源的關閉,要分開操作,避免一個失敗,另一個也不能關閉 儘量減少對變數的計算 儘量使用

Spark知識點總結--持續更新

spark有哪些元件 (1)master:管理叢集和節點,不參與計算。 (2)worker:計算節點,程序本身不參與計算,和master彙報。 (3)Driver:執行程式的main方法,建立spark context物件。 (4)spark context:控制整個applicat

spark-使用總結-大資料基礎入門

1、partition數目 spark的輸入可能以多個檔案的形式儲存在HDFS上,每個File都包含了很多塊,稱為Block。 當Spark讀取這些檔案作為輸入時,會根據具體資料格式對應的InputFormat進行解析,一般是將若干個Block合併成一個輸入分片,稱為In

spark常見問題分析

分析 spark常見的問題不外乎oom: 我們首先看一下Spark 的記憶體模型: Spark在一個Executor中的記憶體分為三塊,一塊是execution記憶體,一塊是storage記憶體,一塊是other記憶體。 execution記憶體是執行記憶體,文件中

Spark常見程式設計問題解決辦法及優化

目錄 1.資料傾斜 2.TopN 3.Join優化 預排序的join cross join 考慮Join順序 4.根據HashMap、DF等資料集進行filter 5.Join去掉重複的列 6.展開NestedDF 7.計算session/

Spark學習總結

1.Spark是什麼?     Spark是一個基於記憶體的快速的用於大規模資料處理的統一分析引擎。 2.Spark有什麼特性?     容錯、並行 3.Spark的核心元件有哪些?     Spark cor

Spark常見問題解決

這倆天總結了在寫Spark Job的時候遇到的一些問題,寫在這裡,以後遇到了方便檢視。 1.Error:(64, 64) Unable to find encoder for type stored in a Dataset. Primitive types

十四.Spark SQL總結spark日誌檔案資料形式的轉換

第一步.資料來源 找到spark的日誌資料來源,在/root/spark/spark-2.0.2-bin-hadoop2.7/logs目錄下: 通過對檔案的讀取,統計其中資料的條數: val masterLog = sc.textFile("file:///r

Spark SQL 筆記(18)——spark SQL 總結(1)

1 Spark SQl 使用場景 Ad-hoc querying of data in files Live SQL analytics over streaming data ETL capabilities alongside familiar SQL I

Spark SQL 筆記(19)——spark SQL 總結(2) DataFrame VS SQL

1 DataFrame DataFrame = RDD + Schema DataFrame is just a type alias for Dataset of Row DataFrame ov

spark常見運算元操作

package com.yzc.lilei.spark.transformoperate; import org.apache.spark.SparkConf; import org.apache.spark.api.java.JavaPairRDD; import org.apache.spar

spark常見調優》

一:開發調優 原則1:對多次使用的RDD進行持久化,共享同一個RDD 原則2:經過filter運算元過後使用coalesce優化分割槽數量。分割槽少並且資料量大是通過repartition重分割槽增大併發。 原則3:讀取hbase或插入資料庫時使用foreachPartition代替foreach並且使

Spark階段性總結

在大資料領域,只有深挖資料科學領域,走在學術前沿,才能在底層演算法和模型方面走在前面,從而佔據領先地位。 一、Spark專業術語定義 1.Application:Spark應用程式 指的是使用者編寫的Spark應用程式,包含了Driv

執行Spark常見問題處理方法(持續更新中......)

1.MaxResultSize問題 首先,出現這個錯誤的時候Spark會產生如下錯誤資訊: org.apache.spark.SparkException: Job aborted due to stage failure: Total size of serialize

spark常見問題錯誤 彙總

一.經驗 1.Spark Streaming包含三種計算模式:nonstate .stateful .window 2.kafka可通過配置檔案使用自帶的zookeeper叢集 3.Spark一切操作歸根結底是對RDD的操作 4.部署Spark任務,不用拷貝整個架

Spark原理總結

一、Spark 是什麼    Spark是UC Berkeley AMP lab所開源的類Hadoop MapReduce的通用分散式平行計算框架。Spark擁有hadoop MapReduce所具有的優點,但和MapReduce 的最大不同之處在於Spark是基於記