

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

# 最佳實務
<a name="best-practices"></a>

我們建議您遵循儲存和技術最佳實務。這些最佳實務可協助您充分利用以資料為中心的架構。

## 大數據的儲存最佳實務
<a name="storage-best-practices"></a>

下表說明在 Amazon S3 上存放大型資料處理負載檔案的常見最佳實務。最後一欄是您可以設定的生命週期政策範例。如果已啟用 [Amazon S3 Intelligent-Tiering](https://aws.amazon.com/s3/storage-classes/intelligent-tiering/) （可在資料存取模式自動變更時自動節省儲存成本），則您不需要手動設定政策。


|  |  |  | 
| --- |--- |--- |
| **資料層名稱** | **Description** | **生命週期政策策略範例** | 
| Raw | 包含原始、未處理的資料<br />**注意**：對於外部資料來源，原始資料層通常是資料的 1：1 副本，但在 AWS 資料上可以根據擷取過程中的 AWS 區域 或 日期，根據金鑰進行分割。 | 一年後，將檔案移至 S3 Standard-IA [儲存類別](https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-class-intro.html)。在 S3 Standard-IA 兩年後，將檔案存檔在 [Amazon Simple Storage Service Glacier (Amazon S3 Glacier)](https://docs.aws.amazon.com/amazonglacier/latest/dev/introduction.html) 中。<br />自 2025 年 12 月 15 日起，Amazon Glacier （原始獨立保存庫型服務） 將不再接受新客戶，不會影響現有客戶。<br />Amazon Glacier 是一項獨立服務，具有自己的 APIs，可將資料存放在保存庫中，並與 Amazon S3 和 Amazon S3 Glacier 儲存類別不同。您現有的資料將在 Amazon Glacier 中無限期保持安全且可存取。不需要遷移。對於低成本、長期的封存儲存， AWS 建議使用 [Amazon S3 Glacier 儲存類別](https://aws.amazon.com/s3/storage-classes/glacier/)，透過 S3 儲存貯體型 APIs、完整 AWS 區域 可用性、降低成本 AWS 和服務整合，提供卓越的客戶體驗。如果您想要增強功能，請考慮使用我們的解決方案指南，將資料從 Amazon S3 保存庫傳輸至 Amazon S3 Glacier 儲存類別，以遷移至 Amazon S3 Glacier 儲存類別。 [AWS Amazon S3 ](https://aws.amazon.com/solutions/guidance/data-transfer-from-amazon-s3-glacier-vaults-to-amazon-s3/)  | 
| 階段 | 包含針對使用量最佳化的中繼處理資料<br />**範例**：CSV 到 Apache Parquet 轉換原始檔案或資料轉換 | 您可以在定義的時段之後或根據組織的需求刪除資料。<br />您可以在較短的時間 （例如 90 天後） 之後，從資料湖移除一些資料衍生 （例如，原始 JSON 格式的 Apache Avro 轉換）。 | 
| 分析 | 包含使用就緒格式之特定使用案例的彙總資料<br />**範例**：Apache Parquet | 您可以移動資料到 S3 標準 – IA，然後在定義的時段之後或根據組織的需求刪除資料。 | 

下圖顯示您可以跨所有資料層使用的分割策略範例 （對應至一個 S3 資料夾/字首）。我們建議您根據資料的下游使用方式選擇分割策略。例如，如果報告是根據您的資料建置的 （其中報告上最常見的查詢會根據區域和日期篩選結果），則請務必將區域和日期納入為分割區，以改善查詢效能和執行時間。

![分割策略圖表](http://docs.aws.amazon.com/zh_tw/prescriptive-guidance/latest/modern-data-centric-use-cases/images/partitioning_strategy.png)


## 技術最佳實務
<a name="technical-best-practices"></a>

技術最佳實務取決於您用來設計以資料為中心的架構的特定 AWS 服務 和處理技術。不過，我們建議您謹記下列最佳實務。這些最佳實務適用於典型的資料處理使用案例。


|  |  | 
| --- |--- |
| **Area** | **最佳實務** | 
| SQL | 透過投影資料上的屬性，減少必須查詢的資料量。您可以使用資料投影來掃描和僅傳回資料表中的特定必要資料欄，而不是剖析整個資料表。<br />如果可能，請避免大型聯結，因為多個資料表之間的聯結可能會因為資源密集的需求而大幅影響效能。 | 
| Apache Spark | 使用 中的工作負載分割[最佳化 Spark 應用程式](https://aws.amazon.com/blogs/big-data/optimizing-spark-applications-with-workload-partitioning-in-aws-glue/) AWS Glue (AWS 大數據部落格）。<br />最佳化 AWS Glue (AWS 大數據部落格） 中的[記憶體管理](https://aws.amazon.com/blogs/big-data/optimize-memory-management-in-aws-glue/)。 | 
| 資料庫設計 | 遵循[資料庫的架構最佳實務 ](https://aws.amazon.com/architecture/databases/?cards-all.sort-by=item.additionalFields.sortDate&cards-all.sort-order=desc&awsf.content-type=*all&awsf.methodology=*all)(AWS 架構中心）。 | 
| 資料刪除 | 搭配 使用[伺服器端分割區剔除](https://docs.aws.amazon.com/glue/latest/dg/partition-indexes.html)`catalogPartitionPredicate`。 | 
| 擴展 | 了解並實作[水平擴展](https://wa.aws.amazon.com/wellarchitected/2020-07-02T19-33-23/wat.concept.horizontal-scaling.en.html)。 | 