1. はじめに

皆さんこんにちは。

今回は【Azure Databricks】SQL Editorで外部テーブルの作成をします。

Azure DatabricksのSQL Editorで外部テーブルを作成するメリットは、外部のデータに直接アクセスできることです。
外部テーブルは、Azure DatabricksクラスターまたはDatabricks SQLウェアハウスの外部のデータに直接アクセスする必要がある場合に使用されます。
また、外部テーブルでDROP TABLEを実行しても、Unity Catalogでは基になるデータは削除されません。

 

この手順の前提条件

この手順の前提条件は
・Azure Databricksアクセスコネクタの作成

・Azure Databricksから外部ストレージへの資格情報設定

・Azure Databricksから外部ストレージへの接続設定

以上が作成済みであることを前提としています。
いずれもAzure Databricksの環境構築パッケージに含まれている内容となります。

2.ワークスペースのアクセス方法

ワークスペースへのアクセス方法はこちらをご参照ください

 

3.外部テーブルの作成【外部ファイルがcsvの場合】

SQLエディタを起動したら以下のコマンドを実行します。

 

文法

CREATE TABLE IF NOT EXISTS [カタログ名].[スキーマ名].[テーブル名]
USING CSV
OPTIONS (HEA,DER true, INFERSCHEMA true)
LOCATION ‘abfss://[コンテナ名]@[ストレージアカウント名].dfs.core.windows.net/[フォルダ名]/[ファイル名]’;

 

①対象コマンドを実行する

②テーブルが作成されたのが確認できました。

3-1.外部テーブルからデータを抽出する

SELECT文を使用してデータの確認をしました。

 

文法

SELECT * FROM [カタログ名].[スキーマ名].[テーブル名];

 

4.外部テーブルの作成【外部ファイルがparquetの場合】

文法 

CREATE TABLE IF NOT EXISTS [テーブル名]
USING PARQUET
OPTIONS (HEADER true, INFERSCHEMA true)
LOCATION ‘abfss://[コンテナ名]@[ストレージアカウント名].dfs.core.windows.net/[フォルダ名]/[ファイル名]’;

 

①対象コマンドを実行する

②テーブルが作成されたのが確認できました。

4-1.外部テーブルからデータを抽出する

SELECT文を使用してデータの確認をしました。

 

文法

SELECT * FROM [カタログ名].[スキーマ名].[テーブル名];

 

まとめ

本連載では、
【Azure Databricks】SQLで外部テーブルの作成
についてご説明しています。

 

今回の記事が少しでもDatabricksを知るきっかけや、業務のご参考になれば幸いです。

日商エレクトロニクスでは、Azure Databricksの環境構築パッケージを用意しています。

Azure DatabricksやAzure活用、マイクロソフト製品の活用についてご相談事がありましたらぜひお問い合わせください!

・Azure Databricks連載シリーズはこちら

お問い合わせはこちら


この記事を読んだ方へのオススメコンテンツはこちら