View a markdown version of this page

在 中以程式設計方式建置設定檔任務組態AWS Glue DataBrew - AWS Glue DataBrew開發人員指南

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

在 中以程式設計方式建置設定檔任務組態AWS Glue DataBrew

在本節中,您可以找到描述檔任務步驟和函數的描述,以程式設計方式使用。您可以從AWS Command Line Interface(AWS CLI) 使用它們,或使用其中一個AWS SDKs。

在設定檔任務中,您可以自訂組態,以控制 DataBrew 如何評估您的資料集。您可以將組態套用至資料集,或將其套用至特定資料欄。您可以在建立設定檔任務時建置組態,然後隨時更新。

設定檔組態結構包含四個部分:

以下是範例。

{ "ProfileColumns": [ { "Name": "example" }, { "Regex": "example.*" } ], "DatasetStatisticsConfiguration": { "IncludedStatistics": [ "CORRELATION" ], "Overrides": [ { "Statistic": "CORRELATION", "Parameters": { "columnSelectors": "[{\"name\":\"example\"}, {\"regex\":\"example.*\"}]" } } ] }, "ColumnStatisticsConfigurations": [ { "Selectors": [ { "Name": "example" } ], "Statistics": { "IncludedStatistics": [ "CORRELATION", "DUPLICATE_ROWS_COUNT" ], "Overrides": [ { "Statistic": "VALUE_DISTRIBUTION", "Parameters": { "binNumber": "10" } } ] } } ] }

ProfileColumns 區段

在結構的 ProfileColumns區段中,從資料集設定您要在設定檔任務中評估的資料欄。 ProfileColumns是資料欄選取器 (Selectors) 的清單。您可以在資料欄選取器中指定資料欄名稱或規則表達式。範例如下。

"ProfileColumns": [{"Name": "example"}, {"Regex": "example.*"}]

指定 ProfileColumns 時,只有名稱符合 中名稱或規則表達式的資料欄ProfileColumns才會包含在設定檔任務中。如果設定檔任務不支援所選資料欄的資料類型,DataBrew 會在任務執行期間略過選取的資料欄。

如果 ProfileColumns 未定義,設定檔任務會評估所有支援的資料欄。支援的欄是包含所支援資料類型資料的資料欄:ByteTypeShortTypeIntegerTypeLongTypeFloatTypeStringDoubleTypeBoolean

DatasetStatisticsConfiguration 區段

在 結構的 DatasetStatisticsConfiguration區段中,您可以建置資料欄間評估的組態。組態包含 IncludedStatisticsOverrides。範例如下。

"DatasetStatisticsConfiguration": { "IncludedStatistics": ["CORRELATION"], "Overrides": [ { "Statistic": "CORRELATION", "Parameters": { "columnSelectors": "[{\"name\":\"example\"}, {\"regex\":\"example.*\"}]" } } ] }

您可以將評估名稱新增至 ,以選取您想要擁有的評估IncludedStatistics。範例如下。

"IncludedStatistics": ["CORRELATION", "DUPLICATE_ROWS_COUNT"]

當您指定 時IncludedStatistics,設定檔任務中只會包含清單中的評估。如果 IncludedStatistics未定義,則設定檔任務會使用預設設定執行所有支援的評估。您可以將 NONE 新增至 以排除所有評估IncludedStatistics。範例如下。

"IncludedStatistics": ["NONE"]

資料集層級的可設定統計資料

在您結構的 DatasetStatisticsConfiguration區段中,設定檔任務支援下表所示的評估。

統計資料名稱 Description 支援的資料類型 預設狀態 設定檔結果的屬性 設定檔結果的類型

DUPLICATE_ROWS_COUNT

資料集中重複資料列的計數

全部

Enable

duplicateRowsCount

Int

相互關聯

兩欄之間的 Pearson 相關性係數

number

Enable

相互關聯 (在每個選取的欄中)

物件

在 中IncludedStatistics,您可以透過新增覆寫來覆寫每個評估的預設設定。每個覆寫都包含特定評估的名稱和參數映射。

在 中DatasetStatisticsConfiguration,設定檔任務支援CORRELATION覆寫。此覆寫會從所選資料欄清單中計算兩個資料欄之間的 Pearson 相關性係數。預設設定是選取前 10 個數字資料欄。您可以指定欄數或欄選取器清單,以覆寫預設設定。

CORRELATION 採用這些參數:

  • columnNumber – 數值資料欄的數量。設定檔任務會從資料集中選取前 n 個資料欄。此值應大於 1。使用 "ALL" 選取所有數值欄。

  • columnSelectors: – 欄選取器的清單。每個選取器都可以有欄名稱或規則表達式。

範例如下。

{ "Statistic": "CORRELATION", "Parameters": { "columnSelectors": "[{\"name\":\"example\"}, {\"regex\":\"example.*\"}]" } }

ColumnStatisticsConfigurations 區段

在 結構的 ColumnStatisticsConfigurations區段中,您可以針對特定資料欄建置組態。 ColumnStatisticsConfigurationsColumnStatisticsConfiguration設定清單。在 中ColumnStatisticsConfiguration,有 Selectors、資料欄選取器清單,以及Statistics用於統計資料組態的 。範例如下。

{ "Selectors": [{"Name": "example"} ], "Statistics": { "IncludedStatistics": ["CORRELATION", "DUPLICATE_ROWS_COUNT"] "Overrides": [ { "Statistic": "VALUE_DISTRIBUTION", "Parameters": { "binNumber": "10" } } ] } }

Selectors 是欄選取器的清單。如同 ProfileColumns,您可以在每個資料欄選擇器中指定資料欄名稱或規則表達式。當您指定 時Selectors,資料欄組態會套用至符合 中任何資料欄選擇器的資料欄Selectors。否則,組態會套用至所有支援的欄。

在 中Statistics,您可以覆寫所選資料欄的設定。如同 DatasetStatisticsConfigurationStatistics具有 IncludedStatisticsOverrides

若要選取您想要的評估,請將評估名稱新增至 IncludedStatistics

"IncludedStatistics": ["CORRELATION", "DUPLICATE_ROWS_COUNT"]

當您指定 時IncludedStatistics,設定檔任務中只會包含清單中的評估。否則,設定檔任務會使用預設設定執行所有支援的評估。

您可以將 新增至 NONE以排除所有評估IncludedStatistics

"IncludedStatistics": ["NONE"]

在某些情況下, 中可能有多個組態ColumnStatisticsConfigurations具有不同的IncludedStatistics組態,您可以套用至相同的資料欄。在這些情況下,設定檔任務會挑選 中的最後一個組態,ColumnStatisticsConfigurations並將其套用至IncludedStatistics選取的資料欄。新的組態會覆寫較舊的組態。

資料欄層級的可設定統計資料

在 中ColumnStatisticsConfigurations,設定檔任務支援下表所示的評估。

此資料表number中支援的資料類型 表示屬性的資料類型為下列其中一項:ByteTypeShortTypeIntegerTypeLongTypeFloatType、 或 DoubleType

統計資料名稱 Description 支援的資料類型 預設狀態 設定檔結果的屬性 設定檔結果的類型

欄的名稱。

全部

name

string

資料欄的資料類型。

全部

type

string

DISTINCT_VALUES_COUNT

不同值的數量。不同的值是至少出現一次的值。

number/boolean/string

已啟用

distinctValuesCount

Int

Entropy (資訊理論)。

number/boolean/string

已啟用

Double

INTER_QUARTILE_RANGE

範圍介於數字的第 25% 到第 75% 之間。

number

已啟用

interquartileRange

Double

KURTOSIS

資料欄的峰度。

number

已啟用

峰度

Double

MAX

資料欄中的最大值。

number/string 長度

已啟用

max

Int/Double

MAXIMUM_VALUES

資料欄中的最大值清單及其計數。

number

已啟用

maximumValues

清單

MEAN

資料欄中值的平均值。

number/string 長度

已啟用

mean

Double

MEDIAN

資料欄中值的中位數。

number/string 長度

已啟用

median

Double

MEDIAN_ABSOLUTE_DEVIATION

每個資料點與數值資料欄中位數之間的絕對差異中位數。

number

已啟用

medianAbsoluteDeviation

Double

MIN

資料欄中的最小值。

number/string 長度

已啟用

min

Int/Double

MINIMUM_VALUES

資料欄中的最小值及其計數的清單。

number

已啟用

minimumValues

清單

MISSING_VALUES_COUNT

資料欄中遺失值的數量。Null 和空白字串視為遺失。

全部

已啟用

missingValuesCount

Int

MODE

資料欄中最常出現的值。如果經常出現數個值,則模式是其中一個值。

number/string 長度

已啟用

模式

Int/Double

MOST_COMMON_VALUES

欄中最常見的值清單。

number/boolean/string

已啟用

mostCommonValues

清單

OUTLIER_DETECTION

透過 Z_score 演算法偵測欄中的極端值。計算極端值的數量,並從偵測到的極端值擷取範例清單。

number/string 長度

已啟用

zScoreOutliersCount、zScoreOutliersSample

Int/List

百分位數

數值欄的百分位數值 (5%、25%、75%、95%)。

number

已啟用

百分位數 5、百分位數 25、百分位數 75、百分位數 95

Double

RANGE

資料欄中的值範圍。

number

已啟用

range

Int/Double

偏斜

資料欄中值的偏斜。

number

已啟用

偏斜

Double

STANDARD_DEVIATION

資料欄中值的無偏差樣本標準差。

number/string 長度

已啟用

standardDeviation

Double

SUM

資料欄中的值總和。

number

已啟用

sum

Int/Double

UNIQUE_VALUES_COUNT

唯一值的數量。唯一值表示該值僅顯示一次。

number/boolean/string

已啟用

uniqueValuesCount

Int

VALUE_DISTRIBUTION

依範圍測量資料欄中值的分佈。

number/string 長度

已啟用

valueDistribution

清單

VARIANCE

資料欄中值的差異。

number

已啟用

variance

Double

Z_SCORE_DISTRIBUTION

依範圍測量資料點 z 分數的分佈。

number

已啟用

zScoreDistribution

清單

ZEROS_COUNT

資料欄中的零 (0) 數目。

number

已啟用

zerosCount

Int

在 中IncludedStatistics,您可以透過新增覆寫來覆寫每個評估的預設參數。每個覆寫都包含特定評估的名稱和參數映射。

ColumnStatisticsConfigurations 欄的參數

在 中ColumnStatisticsConfigurations,設定檔任務支援下列參數。

在某些情況下, 中可能有多個組態ColumnStatisticsConfigurations具有不同的IncludedStatistics組態,您可以套用至相同的資料欄。在這些情況下,設定檔任務會挑選 中的最後一個組態,ColumnStatisticsConfigurations並將其套用至IncludedStatistics選取的資料欄。新的組態會覆寫較舊的組態。

MAXIMUM_VALUES

列出數值欄中的最大值及其計數。預設清單大小為 5。您可以指定 的值來覆寫清單大小sampleSize

設定

sampleSize – 清單的大小,包含數值欄中值的最大數量和計數。此值應大於 0。使用 "ALL" 列出所有值。

範例

{ "Statistic": "MAXIMUM_VALUES", "Parameters": { "sampleSize": "5" } }

MINIMUM_VALUES

列出數值欄中的最小值及其計數。預設清單大小為 5。您可以指定 的值來覆寫清單大小sampleSize

設定

sampleSize – 清單的大小,包含數值欄中值的最大數量和計數。此值應大於 0。使用 "ALL" 列出所有值。

範例

{ "Statistic": "MINIMUM_VALUES", "Parameters": { "sampleSize": "5" } }

MOST_COMMON_VALUES

列出資料欄中最常見的值及其計數。預設清單大小為 50。您可以指定 的值來覆寫清單大小sampleSize

設定

sampleSize – 清單的大小,包含數值欄中值的最大數量和計數。此值應大於 0。使用 "ALL" 列出所有值。

範例

{ "Statistic": "MOST_COMMON_VALUES", "Parameters": { "sampleSize": "50" } }

OUTLIER_DETECTION

依 Z_score 演算法偵測數值欄或字串欄中的極端值 (根據字串長度)。

您的設定檔任務會計算極端值數量,並產生極端值及其 z 分數的範例清單。範例清單會依 z-score 的絕對值排序。預設清單大小為 50。

當 Z_Score 演算法偏離平均值超過標準差閾值時,會將值識別為極端值。預設極端值閾值為 3。

您可以提供另一個閾值,即輕度閾值,以取得更多資訊。您的輕度閾值應小於閾值。此功能預設為關閉。指定輕微閾值時,您的設定檔任務會再傳回一個計數 zScoreMildOutliersCount。此外,在這種情況下, zScoreOutliersSample可以包含輕度閾值極端值的範例。

設定

  • threshold – 偵測極端值時要使用的閾值。此值應該大於或等於 0。

  • mildThreshold – 偵測極端值時要使用的輕微閾值。此值應該大於或等於 0 且小於 threshold

  • sampleSize – 包含欄中極端值的清單大小。使用 "ALL" 列出所有值。

範例

{ "Statistic": "OUTLIER_DETECTION", "Parameters": { "threshold": "5", "mildThreshold": "3.5", "sampleSize": "20" } }

VALUE_DISTRIBUTION

依值的範圍測量資料欄中值的分佈。設定檔任務會依數值範圍將數值欄或字串欄 (根據字串長度) 中的值分組到 bin,並產生 bin 清單。儲存貯體是連續的,而儲存貯體的上限是下一個儲存貯體的下限。

設定

binNumber – 儲存貯體數量。此值應大於 0。

範例

{ "Statistic": "VALUE_DISTRIBUTION", "Parameters": { "binNumber": "5" } }

Z_SCORE_DISTRIBUTION

測量數值欄中值 z 分數的分佈。設定檔任務會依數值範圍將值的 z 分數分組到 bin,並產生 bin 清單。儲存貯體是連續的,而儲存貯體的上限是下一個儲存貯體的下限。

設定

binNumber – 儲存貯體數量。此值應大於 0。

範例

{ "Statistic": "Z_SCORE_DISTRIBUTION", "Parameters": { "binNumber": "5" } }

用於設定 PII 的 EntityDetectorConfiguration 區段

在 結構的 EntityDetectorConfiguration區段中,您可以設定資料集中的實體類型,讓 DataBrew 偵測為設定檔任務的個人身分識別資訊 (PII)。

EntityTypes

您可以設定希望 DataBrew 偵測為設定檔任務 PII 的實體類型。當 EntityDetectorConfiguration 未定義時,實體偵測會停用。您可以在資料集中偵測到下列實體類型:

  • USA_SSN

  • EMAIL

  • USA_ITIN

  • USA_PASSPORT_NUMBER

  • PHONE_NUMBER

  • USA_DRIVING_LICENSE

  • BANK_ACCOUNT

  • CREDIT_CARD

  • IP_ADDRESS

  • MAC_ADDRESS

  • USA_DEA_NUMBER

  • USA_HCPCS_CODE

  • USA_NATIONAL_PROVIDER_IDENTIFIER

  • USA_NATIONAL_DRUG_CODE

  • USA_HEALTH_INSURANCE_CLAIM_NUMBER

  • USA_MEDICARE_BENEFICIARY_IDENTIFIER

  • USA_CPT_CODE

  • PERSON_NAME

  • DATE

USA_ALL 也支援實體類型群組,並包含上述所有實體類型,但 PERSON_NAME和 除外DATE

的類型EntityTypes是字串的陣列。

AllowedStatistics

設定允許在包含偵測到實體的資料欄上執行的統計資料。如果 AllowedStatistics未定義,則不會在包含偵測到實體的資料欄上計算統計資料。資料欄層級的可設定統計資料 如需 AllowedStatistics 參數的有效值清單,請參閱 。

的類型AllowedStatisticsAllowedStatistics 物件的陣列。