Unity Catalog の外部の場所を使用してデータを読み込む
重要
この機能はパブリック プレビュー段階にあります。
この記事では、データの追加 UI を使用して、Unity Catalog の外部の場所を使用して Azure Data Lake Storage Gen2 のデータからマネージド テーブルを作成する方法について説明します。 "外部の場所" は、クラウド ストレージ パスと、クラウド ストレージ パスへのアクセスを認可するストレージの資格情報を組み合わせたオブジェクトです。
開始する前に
開始する前に、次の項目を用意する必要があります。
- Unity Catalog が有効になっているワークスペース。 詳細については、「Unity Catalog の設定と管理」を参照してください。
- 外部の場所に対する
READ FILES
アクセス許可。 詳細については、「クラウド ストレージを Azure Databricks に接続するための外部の場所を作成する」を参照してください。 - マネージド テーブルを作成するスキーマに対する
CREATE TABLE
特権、スキーマに対するUSE SCHEMA
特権、および親カタログに対するUSE CATALOG
特権。 詳細については、「Unity Catalog の権限とセキュリティ保護可能なオブジェクト」を参照してください。
ファイルの種類
以下のタイプのファイルがサポートされています。
- CSV
- TSV
- JSON
- XML
- AVRO
- Parquet
手順 1: 外部の場所へのアクセスを確認する
外部の場所へのアクセスを確認するには、次の操作を行います。
- Azure Databricks ワークスペースのサイドバーで、カタログ をクリックします。
- Catalog Explorer で、外部データ>外部の場所 をクリックします。
手順 2: マネージド テーブルを作成する
マネージド テーブルを作成するには、次の操作を行います。
ワークスペースのサイドバーで、[ + 新規]>[データの追加] をクリックします。
データの追加 UI で、[Azure Data Lake Storage] をクリックします。
ドロップダウン リストから外部の場所を選択します。
Azure Databricks に読み込むフォルダーとファイルを選択し、[テーブルのプレビュー] をクリックします。
ドロップダウン リストからカタログとスキーマを選択します。
(省略可能) テーブル名を編集します。
(省略可能) ファイルの種類別に詳細な形式オプションを設定するには、[高度な属性] をクリックし、[ファイルの種類を自動的に検出する] をオフにして、ファイルの種類を選択します。
書式オプションのリストについては、次のセクションを参照してください。
(省略可能) 列名を編集するには、列の上部にある入力ボックスをクリックします。
列名では、コンマ、円記号、または Unicode 文字 (絵文字など) はサポートされていません。
(省略可能) 列の型を編集するには、型を含むアイコンをクリックします。
[テーブルの作成] をクリックします。
ファイルの種類の形式のオプション
ファイルの種類に応じて、次の形式のオプションを使用できます。
書式オプション | 説明 | サポートされているファイルの種類 |
---|---|---|
Column delimiter |
列間の区切り文字。 1 文字のみ使用でき、円記号はサポートされていません。 既定値はコンマです。 |
CSV |
Escape character |
データの解析時に使用するエスケープ文字。 既定値は引用符です。 |
CSV |
First row contains the header |
このオプションでは、ファイルにヘッダーが含まれるかどうかを指定します。 既定では有効になっています。 |
CSV |
Automatically detect file type |
ファイルの種類を自動的に検出します。 既定値は true です。 |
XML |
Automatically detect column types |
ファイル コンテンツから列の型を自動的に検出します。 プレビュー テーブルで型を編集できます。 これが false に設定されている場合、すべての列の型は STRING として推論されます。 既定では有効になっています。 |
- CSV - JSON - XML |
Rows span multiple lines |
列の値がファイル内の複数の行にまたがることができるかどうか。 既定で無効になっています。 |
- CSV - JSON |
Merge the schema across multiple files |
複数のファイル全体でスキーマを推論するか、各ファイルのスキーマをマージするかどうか。 既定では有効になっています。 |
CSV |
Allow comments |
ファイル内でコメントが許可されるかどうか。 既定では有効になっています。 |
JSON |
Allow single quotes |
ファイル内で単一引用符が許可されるかどうか。 既定では有効になっています。 |
JSON |
Infer timestamp |
タイムスタンプ文字列を TimestampType として推論を試みるかどうか。既定では有効になっています。 |
JSON |
Rescued data column |
スキーマと一致しない列を保存するかどうか。 詳細については、「復旧されたデータ列とは」を参照してください。 既定では有効になっています。 |
- CSV - JSON - Avro - Parquet |
Exclude attribute |
要素内の属性を除外するかどうか。 既定値は false です。 |
XML |
Attribute prefix |
属性と要素を区別するための属性のプレフィックス。 既定値は _ です。 |
XML |
列のデータ型
以下の列のデータ型がサポートされています。 個々のデータ型の詳細については、SQL データ型に関するページを参照してください。
データ型 | 説明 |
---|---|
BIGINT |
8 バイトの符号付き整数。 |
BOOLEAN |
ブール (true , false ) 値。 |
DATE |
およびタイムゾーンのない日。 |
DECIMAL (P,S) |
最大有効桁数 P と固定スケール S を持つ数値。 |
DOUBLE |
8 バイト倍精度浮動小数点数。 |
STRING |
文字列の値。 |
TIMESTAMP |
セッションのローカル タイムゾーンを指定して、フィールドの値 (年、月、日、時、分、秒) を構成する値。 |
既知の問題
- バックティックまたはコロンを含むキーを持つ JSON オブジェクトなど、複合データ型内の特殊文字に関する問題が発生する可能性があります。
- 一部の JSON ファイルでは、ファイルの種類として JSON を手動で選択する必要がある可能性があります。 ファイルを選択した後にファイルの種類を手動で選択するには、[高度な属性] をクリックし、[ファイルの種類を自動的に検出する] をオフにして、[JSON] を選択します。
- 複合型内でタイムスタンプと 10 進数が入れ子になっている場合、問題が発生する可能性があります。