

# AWS Glue 中的数据发现和编目
<a name="catalog-and-crawler"></a>

AWS Glue Data Catalog 是一个集中式存储库，用于存储有关您组织数据集的元数据。它充当数据来源的位置、架构和运行时指标的索引。元数据存储在元数据表中，其中每个表代表一个单一数据存储。

您可以使用爬网程序填充 Data Catalog，它会自动扫描您的数据来源并提取元数据。爬网程序可以连接到 AWS 内部（基于 AWS）和外部的数据来源。

有关支持的数据来源的更多信息，请参阅[支持的可供爬取的数据来源](crawler-data-stores.md)。

您也可以根据自身的特定要求，通过定义表结构、架构和分区结构在 Data Catalog 中手动创建表。

有关手动创建元数据表的更多信息，请参阅[手动定义元数据](populate-dg-manual.md)。

您可以使用 Data Catalog 中的信息创建和监控您的 ETL 任务。Data Catalog 与其他 AWS 分析服务集成，提供统一的数据来源视图，助您更轻松地管理和分析数据。
+ Amazon Athena – 使用 SQL 在 Data Catalog 中存储和查询 Amazon S3 数据的表元数据。
+ AWS Lake Formation – 集中定义和管理精细的数据访问策略并审核数据访问权限。
+ Amazon EMR – 访问 Data Catalog 中定义的数据来源以进行大数据处理。
+ Amazon SageMaker AI – 快速、自信地构建、训练和部署机器学习模型。Data Catalog 的主要功能

以下是 Data Catalog 的主要方面。

元数据存储库  
 Data Catalog 充当中央元数据存储库，存储有关数据来源的位置、架构和属性的信息。该元数据被组织成数据库和表，类似于传统的关系数据库目录。

自动发现数据  
 AWS Glue 爬网程序 可以自动发现新的或更新的数据来源并对其进行编目，从而减少手动元数据管理的开销，并确保您的 Data Catalog 保持最新状态。通过对数据来源进行编目，Data Catalog 能让用户和应用程序更轻松地发现和了解组织内的可用数据资产，从而促进数据的重用和协作。  
Data Catalog 支持各种数据来源，包括 Amazon S3、Amazon RDS、Amazon Redshift、Apache Hive 等。它可以使用 AWS Glue 爬网程序 自动推断和存储来自这些来源的元数据。  
有关更多信息，请参阅[使用爬网程序填充 Data Catalog](add-crawler.md)。

架构管理  
Data Catalog 会自动捕获和管理数据来源的架构，包括架构推断、发展和版本控制。您可以使用 AWS Glue ETL 任务在 Data Catalog 中更新架构和分区。

表优化  
为提高 AWS 分析服务（例如 Amazon Athena 和 Amazon EMR）和 AWS Glue ETL 任务的读取性能，Data Catalog 为 Data Catalog 中的 Iceberg 表提供了托管式压缩功能（一种将小的 Amazon S3 对象压缩成较大对象的进程）。您可以使用 AWS Glue 控制台、AWS Lake Formation 控制台、AWS CLI 或 AWS API 为 Data Catalog 中的单个 Iceberg 表启用或禁用压缩。  
有关更多信息，请参阅 [优化 Iceberg 表](table-optimizers.md)。

列统计数据  
 无需设置其他数据管道，即可为 Parquet、ORC、JSON、ION、CSV 和 XML 等数据格式的 Data Catalog 表计算列级别的统计数据。借助列统计数据，您可以深入洞察列中的值，从而了解数据特征。Data Catalog 支持生成列值统计数据，例如最小值、最大值、空值总计、非重复值总计、值的平均长度和真实值的总出现次数等。  
有关更多信息，请参阅 [使用列统计数据优化查询性能](column-statistics.md)。

数据世系  
Data Catalog 保留对您的数据执行的转换和操作的记录，并提供数据沿袭信息。这些沿袭信息对于审核、合规和了解数据的来源非常有价值。

与其他 AWS 服务集成  
Data Catalog 与其他 AWS 服务无缝集成，例如 AWS Lake Formation、Amazon Athena、Amazon Redshift Spectrum 和 Amazon EMR。您可利用这一集成，使用单一、一致的元数据层查询和分析各种数据存储中的数据。

安全性和访问控制  
AWS Glue 与 AWS Lake Formation 集成，以支持对 Data Catalog 资源的精细访问控制，从而允许您根据组织的策略和要求管理对数据资产的权限和安全访问。AWS Glue 与 AWS Key Management Service（AWS KMS）集成，以便加密存储在 Data Catalog 中的元数据。

实体化视图   
Data Catalog 支持 Apache Iceberg 实体化视图，这些视图是托管表，用于存储 SQL 查询的预先计算的结果，并在基础源数据更改时自动刷新。实体化视图通过消除冗余计算来简化数据转换管道并提高查询性能。  
可以使用 AWS Glue 版本 5.1 及更高版本中的 Apache Spark SQL、Amazon EMR 7.12.0 及更高版本以及 Amazon Athena 创建实体化视图。Data Catalog 使用托管的计算基础设施自动监控源 Apache Iceberg 表并刷新实体化视图。跨 AWS Glue、Amazon EMR 和 Amazon Athena 的 Spark 引擎可以在查询提供更好性能时自动重写查询，进而使用实体化视图。  
实体化视图以 Apache Iceberg 表的形式，存储在您的账户中的 Amazon S3 表类数据存储服务存储桶或 Amazon S3 通用存储桶中，因此可以从多个查询引擎访问这些视图。Data Catalog 管理实体化视图生命周期的各个方面，包括自动刷新计划、增量更新和元数据管理。  
有关更多信息，请参阅通过 AWS Glue 使用实体化视图和通过 Amazon EMR 使用实体化视图。

**Topics**
+ [填充 AWS Glue Data Catalog](populate-catalog-methods.md)
+ [填充和管理事务表](populate-otf.md)
+ [管理 Data Catalog](manage-catalog.md)
+ [访问 Data Catalog](access_catalog.md)
+ [AWS Glue Data Catalog 最佳实践](best-practice-catalog.md)
+ [在 Amazon CloudWatch 中监控 Data Catalog 使用情况指标](data-catalog-cloudwatch-metrics.md)
+ [AWS Glue 架构注册表](schema-registry.md)