Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用Spark查询HDFS中存储的数据的最佳方法是什么?_Java_Apache Spark_Apache Spark Sql_Spark Dataframe_Spark Thriftserver - Fatal编程技术网

Java 使用Spark查询HDFS中存储的数据的最佳方法是什么?

Java 使用Spark查询HDFS中存储的数据的最佳方法是什么?,java,apache-spark,apache-spark-sql,spark-dataframe,spark-thriftserver,Java,Apache Spark,Apache Spark Sql,Spark Dataframe,Spark Thriftserver,我想创建一个Java应用程序,使用Spark查询HDFS中的数据。到目前为止,我已经通过两种方式进行了测试: -对Thrift服务器公开的JDBC端点进行SQL查询是从默认配置开始的 -使用spark数据集api 我的问题是,作为hadoop/spark的新手,在没有默认配置的情况下,这两种方法中哪一种最有效、最容易设置 据我所知,到目前为止,使用Thrift server需要配置和维护Thrift和Hive。另一方面,我希望使用dataset API会更慢,限制更多,将数据保存在内存中。thr

我想创建一个Java应用程序,使用Spark查询HDFS中的数据。到目前为止,我已经通过两种方式进行了测试: -对Thrift服务器公开的JDBC端点进行SQL查询是从默认配置开始的 -使用spark数据集api

我的问题是,作为hadoop/spark的新手,在没有默认配置的情况下,这两种方法中哪一种最有效、最容易设置


据我所知,到目前为止,使用Thrift server需要配置和维护Thrift和Hive。另一方面,我希望使用dataset API会更慢,限制更多,将数据保存在内存中。

thrift server确实需要稍微多一点配置,并且需要一个配置单元元存储来保存表定义,您可以使用sql查询所有内容。最终,运行thrift server查询和使用非类型化dataset api的查询之间的性能基本相同,从功能上讲,dataset api具有更大的灵活性。强类型数据集api的性能不如非类型数据集api,因为codegen会吐出错误代码,尤其是spark 2.2之前的版本