了解資料表、資料庫和資料目錄 - Amazon Athena

了解資料表、資料庫和資料目錄

在 Athena 中,資料表和資料庫是中繼資料定義的容器,用於定義基礎來源資料的結構描述。對於每個資料集,Athena 中必須存在資料表。資料表中的中繼資料可讓 Athena 知道資料位於 Amazon S3 中的何處,並指定資料的結構,例如資料欄名稱、資料類型和資料表名稱。資料庫是資料表的邏輯群組,也只保存資料集的中繼資料和結構描述資訊。

對於您想要查詢的每個資料集,Athena 必須有基礎資料表,以用於取得和傳回查詢結果。因此,在查詢資料之前,必須在 Athena 中註冊資料表。註冊是在您自動或手動建立資料表時進行。

無論資料表的建立方式為何,資料表建立程序都會向 Athena 註冊資料集。此註冊會在 AWS Glue Data Catalog 中進行,並可讓 Athena 對資料執行查詢。

  • 若要自動建立資料表,請從 Athena 內使用 AWS Glue 編目程式。如需有關 AWS Glue 和編目程式的詳細資訊,請參閱與 AWS Glue 整合。當 AWS Glue 建立資料表時,其會在自己的 AWS Glue 資料目錄中註冊資料表。Athena 使用 AWS Glue 資料目錄來存放和擷取此中繼資料,供您執行查詢以分析基礎資料集時使用。

在建立資料表之後,您可以使用 SQL SELECT 陳述式來查詢該資料表,包括取得來源資料的特定檔案位置。您的查詢結果會存放在 Amazon S3 中您指定的查詢結果位置

您可以透過整個 Amazon Web Services 帳戶存取該 AWS Glue 資料目錄。其他 AWS 服務 可以共用 AWS Glue 資料目錄,因此,您可以使用 Athena 查看整個組織中建立的資料庫和資料表,反之亦然。此外,AWS Glue 可讓您自動探索資料結構描述,以及擷取、轉換和載入 (ETL) 資料。

  • 手動建立資料表:

    • 使用 Athena 主控台執行建立資料表精靈

    • 使用 Athena 主控台在查詢編輯器中撰寫 Hive DDL 陳述式。

    • 使用 Athena API 或 CLI,以執行採用 DDL 陳述式的 SQL 查詢字串。

    • 使用 Athena JDBC 或 ODBC 驅動程式。

手動建立資料表和資料庫時,Athena 會在幕後使用 HiveQL 資料定義語言 (DDL) 陳述式 (例如 CREATE TABLECREATE DATABASEDROP TABLE),在 AWS Glue Data Catalog 中建立資料表和資料庫。

注意

如果您在 Athena 中有 2017 年 8 月 14 日之前建立的資料表,則它們已在 Athena 受管內部資料目錄中建立,而且與 AWS Glue Data Catalog 並存,直到您選擇更新為止。如需詳細資訊,請參閱 逐步升級到 AWS Glue Data Catalog

當您查詢現有的資料表時,Amazon Athena 在幕後會使用分散式 SQL 引擎 Presto。我們在 Athena 內提供附有範本資料的範例,以說明如何使用 Athena 建立資料表,然後對其發出查詢。Athena 在主控台中也提供教學課程,可協助您根據 Amazon S3 中存放的資料建立資料表。

  • 如需在 Athena 查詢編輯器中建立資料表和撰寫查詢的逐步教學課程,請參閱入門

  • 在主控台執行 Athena 教學課程。如果您是第一次登入至 https://console.aws.amazon.com/athena/,此教學課程會自動啟動。您也可以在主控台選擇 Tutorial (教學) 來啟動它。