Spark是用於大規模數據處理的統一分析引擎。它在Scala,Java,Python和R中提供高級API,以及支持用於數據分析的一般計算圖的優化引擎。它還支持一組豐富的高級工具集,包括用於SQL的SPARK SQL和DataFrames,Pandas api in Spark for Pandas工作負載,用於機器學習的MLLIB,用於圖形處理的GraphX以及用於流處理的結構化流媒體。
您可以在項目網頁上找到最新的Spark文檔,包括編程指南。此讀數文件僅包含基本的設置指令。
Spark是使用Apache Maven構建的。要構建Spark及其示例程序,請運行:
./build/mvn -DskipTests clean package
(如果您下載了預製套件,則無需執行此操作。)
在“建築Spark”的項目網站上可以找到更詳細的文檔。
有關一般開發技巧,包括使用IDE開發Spark的信息,請參閱“有用的開發人員工具”。
開始使用Spark的最簡單方法是通過Scala shell:
./bin/spark-shell
嘗試以下命令,該命令應返回1,000,000,000:
scala > spark.range( 1000 * 1000 * 1000 ).count()
另外,如果您喜歡Python,則可以使用Python Shell:
./bin/pyspark
並運行以下命令,該命令還應返回1,000,000,000:
>> > spark . range ( 1000 * 1000 * 1000 ). count ()
SPARK還帶有examples
目錄中的幾個示例程序。要運行其中一個,請使用./bin/run-example <class> [params]
。例如:
./bin/run-example SparkPi
將在本地運行PI示例。
在運行示例時,您可以將主環境變量設置為群集。這可以是火花:// URL,“紗”可以在紗線上運行,而“本地”可以用一個線程在本地運行,或者“ local [n]”以N線程在本地運行。如果類在examples
軟件包中,您也可以使用縮寫的類名稱。例如:
MASTER=spark://host:7077 ./bin/run-example SparkPi
如果沒有給出參數,則許多示例程序打印使用情況有所幫助。
測試首先需要建造火花。一旦建立了火花,就可以使用:
./dev/run-tests
請查看有關如何運行模塊測試或單個測試的指南。
還有一個Kubernetes集成測試,請參閱資源經理/Kubernetes/Integration-Tests/readme.md
Spark使用Hadoop Core庫與HDFS和其他Hadoop支持的存儲系統進行對話。由於協議在不同版本的Hadoop中發生了變化,因此您必須針對群集運行的相同版本構建火花。
請通過“指定Hadoop版本並啟用紗線”的構建文檔,以獲取有關Hadoop特定分佈的詳細指南,包括為特定的Hive和Hive Thriftserver分佈構建。
請參閱在線文檔中的配置指南,以獲取有關如何配置Spark的概述。
請查看有關Spark指南的貢獻,以獲取有關如何開始為該項目做出貢獻的信息。