如何解决如何读取使用bucketBy写入的Spark中的实木复合地板文件
我已经为此苦苦挣扎很长时间了。我知道在使用Spark编写表时必须执行以下操作
spark.format("parquet").option("path","some_path").saveAsTable("t1")
现在,在我的用例中,鉴于全新的Spark上下文,我可能不得不在以后阅读那些实木复合地板文件。我尝试了以下方法:
- spark.read.parquet(...)
- spark.read.format("parquet").option("path","some_path").table("t1")
- spark.sql("create table t1 using parquet location 'some_path'")
但是使用describe extended t1
,并没有告知表是否已存储。如何在Spark中读取此数据并使用预定义的存储桶?我应该读取数据,将其写入临时表并直接使用吗? (经过测试并可以正常工作,但是创建表需要一些空间...)
非常感谢
修改。为了检查存储区,我还尝试在表上运行一些联接(我有两个存储区表)。即使使用
,查询计划也总是执行随机播放spark.conf.set("spark.sql.sources.bucketing.enabled",true)
spark.conf.set("spark.sql.autoBroadcastJoinThreshold",-1)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。