本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在 中以程式設計方式建置設定檔任務組態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 未定義,設定檔任務會評估所有支援的資料欄。支援的欄是包含所支援資料類型資料的資料欄:ByteType、ShortType、IntegerType、LongType、FloatType、String、 DoubleType或 Boolean。
DatasetStatisticsConfiguration 區段
在 結構的 DatasetStatisticsConfiguration區段中,您可以建置資料欄間評估的組態。組態包含 IncludedStatistics和 Overrides。範例如下。
"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區段中,您可以針對特定資料欄建置組態。 ColumnStatisticsConfigurations是ColumnStatisticsConfiguration設定清單。在 中ColumnStatisticsConfiguration,有 Selectors、資料欄選取器清單,以及Statistics用於統計資料組態的 。範例如下。
{ "Selectors": [{"Name": "example"} ], "Statistics": { "IncludedStatistics": ["CORRELATION", "DUPLICATE_ROWS_COUNT"] "Overrides": [ { "Statistic": "VALUE_DISTRIBUTION", "Parameters": { "binNumber": "10" } } ] } }
Selectors 是欄選取器的清單。如同 ProfileColumns,您可以在每個資料欄選擇器中指定資料欄名稱或規則表達式。當您指定 時Selectors,資料欄組態會套用至符合 中任何資料欄選擇器的資料欄Selectors。否則,組態會套用至所有支援的欄。
在 中Statistics,您可以覆寫所選資料欄的設定。如同 DatasetStatisticsConfiguration, Statistics具有 IncludedStatistics和 Overrides。
若要選取您想要的評估,請將評估名稱新增至 IncludedStatistics。
"IncludedStatistics": ["CORRELATION", "DUPLICATE_ROWS_COUNT"]
當您指定 時IncludedStatistics,設定檔任務中只會包含清單中的評估。否則,設定檔任務會使用預設設定執行所有支援的評估。
您可以將 新增至 NONE以排除所有評估IncludedStatistics。
"IncludedStatistics": ["NONE"]
在某些情況下, 中可能有多個組態ColumnStatisticsConfigurations具有不同的IncludedStatistics組態,您可以套用至相同的資料欄。在這些情況下,設定檔任務會挑選 中的最後一個組態,ColumnStatisticsConfigurations並將其套用至IncludedStatistics選取的資料欄。新的組態會覆寫較舊的組態。
資料欄層級的可設定統計資料
在 中ColumnStatisticsConfigurations,設定檔任務支援下表所示的評估。
此資料表number中支援的資料類型 表示屬性的資料類型為下列其中一項:ByteType、ShortType、IntegerTypeLongType、FloatType、 或 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 參數的有效值清單,請參閱 。
的類型AllowedStatistics是 AllowedStatistics 物件的陣列。