

# Athena ビューに関する考慮事項と制限
<a name="considerations-limitations-views"></a>

Athena ビューには次の考慮事項と制限があります。

## 考慮事項
<a name="considerations-views"></a>

Athena でビューを作成して使用する場合は、次の考慮事項が適用されます。
+ Athena では、Athena コンソール、AWS Glue Data Catalog、または同じカタログに接続されている Amazon EMR クラスターで実行されている Presto で作成されたビューをプレビューして使用できます。
+ データカタログで Athena ビューを作成した場合、データカタログはビューをテーブルとして扱います。データカタログでテーブルレベルのきめ細かなアクセスコントロールを使用して、これらのビューへの[アクセスを制限](fine-grained-access-to-glue-resources.md)できます。
+  Athena は再帰的なビューの実行を妨げ、そのような場合にはエラーメッセージを表示します。再帰的なビューとは、Athena 自体を参照するビュークエリです。
+ Athena は、古いビューを検出するとエラーメッセージを表示します。以下のいずれかが発生すると、古いビューが報告されます。
  + このビューは、存在しないテーブルまたはデータベースを参照します。
  + スキーマまたはメタデータの変更は、参照されるテーブルで行われます。
  + 参照されるテーブルは削除され、異なるスキーマまたは設定で再度作成されます。
+ ネストされたビューのクエリが有効であり、テーブルおよびデータベースが存在する限り、ネストされたビューを作成して実行できます。

## 制限事項
<a name="limitations-views"></a>
+ Athena ビューの名前には、アンダースコア `(_)` 以外の特殊文字を使用できません。詳細については、「[データベース、テーブル、列に名前を付ける](tables-databases-columns-names.md)」を参照してください。
+ ビューの名前に予約キーワードを使用しないようにします。予約キーワードを使用している場合、ビューでのクエリでは予約キーワードを二重引用符で囲みます。「[クエリで予約キーワードをエスケープする](reserved-words.md)」を参照してください。
+ Athena で作成したビューを外部 Hive メタストア、UDF で使用することはできません。Hive で外部で作成したビューを使用する方法については、「[Hive ビューを使用する](hive-views.md)」を参照してください。
+ 地理空間関数ではビューを使用できません。
+ Amazon S3 のデータに対するアクセスコントロールを管理するためにビューを使用することはできません。ビューをクエリするには、Amazon S3 に保存されているデータにアクセスするためのアクセス許可が必要です。詳細については、「[Athena から Amazon S3 へのアクセスを制御する](s3-permissions.md)」を参照してください。
+ アカウント間でのビューのクエリは Athena エンジンバージョン 3 でサポートされていますが、クロスアカウント AWS Glue Data Catalogを含むビューを作成することはできません。クロスアカウントデータカタログへのアクセスについては、「[AWS Glue データカタログへのクロスアカウントアクセスを構成する](security-iam-cross-account-glue-catalog-access.md)」を参照してください。
+ Hive または Iceberg の非表示メタデータ列 `$bucket`、`$file_modified_time`、`$file_size`、および `$partition` は Athena のビューでサポートされていません。Athena の `$path`メタデータ列の使用方法については「[Amazon S3 内にあるソースデータのファイルの場所の取得](select.md#select-path)」を参照してください。