

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用標準儲存類別讀取封存的 S3 物件
<a name="read-s3-standard-storage-class"></a>

**使用 AWS Glue**

從 MySQL 卸載至 Amazon S3 的資料會保留與關聯式資料庫管理系統 (RDBMS) 相同的結構剛性和一致性。

[AWS Glue 爬蟲程式](https://docs.aws.amazon.com/glue/latest/dg/add-crawler.html)會爬取 S3 物件，推斷資料類型，並將資料表中繼資料建立為外部資料表 DDL。當您設定爬蟲程式工作時，請使用 Amazon S3 做為來源，並指定建立所有資料檔案的 S3 字首位置。在組態中，包含下列項目：
+ 爬蟲程式執行選項
+ 選用資料表字首偏好設定
+ 建立資料表的目標資料庫
+ 具有必要許可的 IAM 角色

叫用任務之後，它會掃描資料以推斷結構描述，並將其保留在 [AWS Glue Data Catalog](https://docs.aws.amazon.com/glue/latest/dg/catalog-and-crawler.html) 中做為 [AWS Glue 資料表](https://docs.aws.amazon.com/glue/latest/dg/tables-described.html)。AWS Glue 資料表基本上是外部資料表，可使用 SQL 陳述式進行查詢，例如使用分析服務的正常資料庫資料表，例如 [Amazon Athena](https://docs.aws.amazon.com/athena/latest/ug/what-is.html)、[Amazon Redshift Spectrum](https://docs.aws.amazon.com/redshift/latest/dg/c-getting-started-using-spectrum.html) 和 [Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-what-is-emr.html) 上的 Apache Hive。如需爬蟲程式的詳細資訊，請參閱 [AWS Glue 文件](https://docs.aws.amazon.com/glue/latest/dg/add-crawler.html)。

對於具有指定資料欄標頭的 .csv 檔案，產生的資料表資料欄名稱將反映相同的欄位名稱。根據資料物件中的值推斷資料類型。

對於 Parquet 檔案，結構描述會保留在資料本身中，而產生的資料表會反映相同的欄位名稱和資料類型。

或者，您可以在 Athena 內手動執行 DDL，以使用所需的資料欄名稱和資料類型建立資料表定義。這會在 Data Catalog 中建立資料表定義。如需建立 Athena 資料表的詳細資訊，請參閱 [Amazon Athena 文件](https://docs.aws.amazon.com/athena/latest/ug/creating-tables.html)。

**注意：**如果 CSV 檔案缺少標頭列，爬蟲程式會將欄位名稱建立為一般 c\$10、c\$11、c\$12...

**使用 Amazon S3 Select**

您可以使用 Amazon S3 Select，透過 SQL 表達式以程式設計方式讀取 S3 物件。您可以使用 AWS CLI 命令`select-object-content`或使用 開發套件，例如 Boto3，以及`select_object_content`從 Python 叫用 操作，來叫用 API 操作。

API 操作支援 SQL 陳述式做為參數，並且只能讀取 JSON 和 Parquet 類型的檔案。輸出可以重新導向為輸出檔案。

系統會針對每個 S3 物件叫用這些操作。對於多個檔案，以遞迴方式執行操作。

如需使用 AWS CLI 執行操作的詳細資訊，請參閱 [AWS CLI 文件](https://docs.aws.amazon.com/cli/latest/reference/s3api/select-object-content.html)。如需使用 Python SDK Boto3 執行 S3 Select 的詳細資訊，請參閱 [Boto3 文件](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html#S3.Client.select_object_content)。