【问题标题】:Count on External Table to Azure Data Storage is taking too long依靠外部表到 Azure 数据存储的时间太长
【发布时间】:2022-09-25 09:17:05
【问题描述】:

我已经为 Azure Data Lake Storage Gen2 创建了一个外部表。

Container 有大约 200K Json 文件。

json文件的结构是用

CREATE EXTERNAL TABLE IF NOT EXISTS dbo.table(   
    ComponentInfo STRUCT<ComponentHost: STRING, ComponentId: STRING, ComponentName: STRING, ComponentVersion: STRING, SubSystem: STRING>,
    CorrelationId STRING,   
    Event STRUCT<Category: STRING, EventName: STRING, MessageId: STRING, PublishTime: STRING, SubCategory: STRING>,   
    References STRUCT<CorrelationId: STRING>) 
    USING org.apache.spark.sql.json OPTIONS (\'multiLine\' = \'true\') 
    LOCATION \'dbfs:/mnt/mnt\'

计数需要很长时间才能运行,并且仍处于第 62 阶段,有 754 个任务。加载前 200 名很好,但是否存在需要解决的错误设置。是否应该分区?

select count(*) from dbo.table

    标签: pyspark databricks azure-databricks azure-data-lake-gen2 external-tables


    【解决方案1】:

    这是一个过多的小文件 Databricks 问题。

    https://www.databricks.com/session_na21/degrading-performance-you-might-be-suffering-from-the-small

    结合文件和计数工作正常。

    【讨论】:

      猜你喜欢
      • 2014-09-29
      • 1970-01-01
      • 2013-06-24
      • 2017-07-08
      • 1970-01-01
      • 1970-01-01
      • 2014-07-27
      • 1970-01-01
      • 2011-10-12
      相关资源
      最近更新 更多