【问题标题】:SQL View on Delta Lake tableDelta Lake 表上的 SQL 视图
【发布时间】:2020-06-18 22:08:43
【问题描述】:

我需要在 Databricks 中现有的 Delta Lake Table 之上创建一个抽象。 是否可以在 Spark 中基于 Delta Lake Table 制作 SQL Server 类的 SQL View?

【问题讨论】:

  • 您是否尝试过加载增量表(这会给您一个 DataFrame)并将其注册为 Dataset.createOrReplaceView 的视图?

标签: apache-spark databricks azure-databricks delta-lake


【解决方案1】:

现在可以通过多种方式在 delta Lake 上创建 SQL 视图。

  • 通过 Spark:

CREATE OR REPLACE VIEW sqlView AS SELECT col1, .., coln FROM delta_table

  • 可以在增量表(路径)上创建 Hive 表。只需在 hive 环境中添加 jars,设置以下属性并创建外部表(hive 支持 2.x)

`

ADD JAR /path/to/delta-core-shaded-assembly_2.11-0.1.0.jar;
ADD JAR /path/to/hive-delta_2.11-0.1.0.jar;
SET hive.input.format=io.delta.hive.HiveInputFormat;
SET hive.tez.input.format=io.delta.hive.HiveInputFormat;
CREATE EXTERNAL TABLE deltaTable(col1 INT, col2 STRING)
STORED BY 'io.delta.hive.DeltaStorageHandler'
LOCATION '/delta/table/path'

`

更多详情:https://github.com/delta-io/connectors

【讨论】:

    【解决方案2】:

    可以使用以下 DDL 语句在 Delta Lake 中创建视图,就像在关系数据库中一样:

    CREATE OR REPLACE VIEW SampleDB.Sample_View
    AS
    SELECT 
    ColA
    ,COlB
    FROM SampleDB.Sample_Table
    

    Create View Documentation

    【讨论】:

      猜你喜欢
      • 2020-11-23
      • 2021-01-27
      • 1970-01-01
      • 1970-01-01
      • 2022-10-13
      • 1970-01-01
      • 1970-01-01
      • 2019-10-06
      • 2021-02-10
      相关资源
      最近更新 更多