我使用Spark SQL
在Spark
應用程序中檢索Cassandra
中的數據。數據被檢索爲DataSet
。但是,我需要使用javaRDD()
函數將此dataset
轉換爲JavaRDD
。它可以工作,但需要大約2個小時。有一些參數需要調整以提高這個時間嗎?DataSet javaRDD()性能
0
A
回答
2
Dataset APIs
構建在SparkSQL
引擎之上,它使用Catalyst
生成優化的邏輯和物理查詢計劃。在R, Java, Scala,
或Python DataFrame/Dataset APIs
之間,所有關係類型查詢都經歷相同的代碼優化器,從而提供空間和速度效率。鑑於Dataset[T]
類型的API針對數據工程任務進行了優化,untyped Dataset[Row]
(DataFrame
的別名)更快並且適用於交互式分析。
0
彈性分佈式數據集(RDD)是火花框架的主要抽象而火花SQL(結構化數據的處理的火花模塊)提供了火花有關的詳細信息數據和正在執行的計算的結構,因此使用這些額外的信息來執行額外的優化。
直到星火1.6,RDDS用於執行比星火SQL對應數據框(https://community.hortonworks.com/articles/42027/rdd-vs-dataframe-vs-sparksql.html)更好,但是,星火2.1升級已經取得星火SQL相當更有效率
相關問題
- 1. Deeplearning4j與Spark:SparkDl4jMultiLayer評估與JavaRDD <DataSet>
- 2. 如何調試DataSet性能
- 3. Spark DataSet過濾器性能
- 4. Spark RDD vs DataSet性能
- 5. 使用具有許多功能的JavaRDD中的選擇性功能
- 6. 合併多個JavaRDD
- 7. 將類型化的JavaRDD轉換爲行JavaRDD
- 8. 轉換一個JavaRDD字符串JavaRDD矢量
- 9. 將JavaRDD <ArrayList<T>>轉換爲JavaRDD <T>
- 10. 如何javaRDD轉換爲數據集
- 11. Reporting Services - HOWTO:從另一個DataSet創建一個DataSet !?可能嗎?
- 12. DataSet和存儲過程之間的性能問題
- 13. DataSet/DataSet到類的類
- 14. 類型不匹配:無法從JavaRDD <Object>轉換爲JavaRDD <String>
- 15. 使用DataSet值控制列可見性
- 16. DataSet的列名和項目屬性
- 17. Datatable vs Dataset
- 18. DataSet和XmlDataDocument
- 19. 爲什麼我無法在Visual Studio DataSet設計器中看到'dataset project'屬性?
- 20. 不能DataSet中保存回數據庫
- 21. DataSet是否具有Contain或In功能?
- 22. 不能在類中使用DataSet
- 23. 不能使用來自腳本的DataSet
- 24. 不能添加多行爲DataSet
- 25. 如何將列表轉換爲JavaRDD
- 26. 從Spark中將JavaRDD保存到HDFS
- 27. 在映射JavaRDD時獲取java.io.NotSerializableException
- 28. 排序名單,作爲對JavaRDD
- 29. 將javaRDD保存爲XML文件
- 30. 遍歷SparkRD中的JavaRDD <String>
雞蛋裏挑骨頭......數據集[行]不比數據集[T]快,因爲類型化的數據集具有明確的編碼器。如果需要解決方案的問題是一種迭代方法,不幸的是,RDD是最好的方法。儘管暴露了數據集API,但大多數SparkML算法都使用RDD,因爲ML問題通常是迭代的,Catalyst不擅長優化迭代問題。 – Garren