bog*_*ger 2 scala apache-spark parquet
我有 2 个相同数据的实例。
考虑以下代码:
val myCoolDataSet = spark
.sql("select * from myData")
.select("col1", "col2")
.as[MyDataSet]
.filter(x => x.col1 == "Dummy")
Run Code Online (Sandbox Code Playgroud)
和这个:
val myCoolDataSet = spark
.read
.parquet("path_to_file")
.select("col1", "col2")
.as[MyDataSet]
.filter(x => x.col1 == "Dummy")
Run Code Online (Sandbox Code Playgroud)
我的问题是在性能和扫描数据量方面哪个更好?spark如何为两种不同的方法计算它?
Hive 用作有关 Parquet 文件的元数据的存储。Spark 可以利用其中包含的信息来执行有趣的优化。由于后备存储是相同的,您可能不会看到太大差异,但基于 Hive 中元数据的优化可以提供优势。