无法通过SparkSession重新分区加载火花串流应用程序中的配置单元

时间:2017-07-18 12:26:10

标签: hadoop apache-spark apache-spark-sql spark-streaming

我正在尝试通过来自特定位置的加载查询将数据加载到外部配置单元表中。

SparkSession sqlContext = null; sqlContext = new org.apache.spark.sql.SparkSession.Builder().enableHiveSupport().getOrCreate(); String query = "LOAD DATA LOCAL INPATH '/home/user/outputfiles/P20170613097' INTO TABLE table1 PARTITION (p1='20170613',p2='P2017061301')"; sqlcontext.sql(query);

最后,hive表中的分区P2017061301收集数据,并且该分区不包含均匀分布的分区文件,其大小均匀,而是像:

part-m-00000 125 KB

part-m-00001 763 KB

part-m-00002 28,171 KB

part-m-00003 68 KB等等

为了提高表的效率,我试图在使用"spark.sql.shuffle.partitions=10"将数据加载到hive表之前对数据进行重新分区,但这不起作用。对此有何帮助?

0 个答案:

没有答案