

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

# 在 Amazon Connect 分析資料湖中排程資料
<a name="data-lake-scheduling"></a>

本主題詳細說明 Amazon Connect 資料湖排程表中的內容。資料表列出內容的欄、類型和描述。

有兩種方式可存取分析資料湖並設定要共用的資料：
+ [選項 1：使用 Amazon Connect 主控台](access-datalake.md#option1-configure-data-to-be-shared)
+ [選項 2：使用 CLI 或 CloudShell](access-datalake.md#option2-configure-data-to-be-shared)

如果您無法使用「選項 1」存取排程資料表，請嘗試使用「選項 2」。

**Topics**
+ [員工排程設定檔](#data-lake-staff-scheduling-profile)
+ [輪班活動](#data-lake-shift-activities)
+ [輪班設定檔](#data-lake-shift-profiles)
+ [人員配置群組](#data-lake-staffing-groups)
+ [人員配置群組 - 預測群組](#data-lake-staffing-groups-forecast-groups)
+ [人員配置群組 - 主管](#data-lake-staffing-groups-supervisors)
+ [員工輪班](#staff-shifts)
+ [員工輪班活動](#data-lake-staff-shift-activities)
+ [員工休假餘額變更](#data-lake-staff-timeoff-balance-changes)
+ [員工休假](#data-lake-staff-timeoffs)
+ [員工休假間隔](#data-lake-staff-timeoff-intervals)
+ [員工需求群組](#data-lake-staff_demand_group)
+ [人員配置群組需求群組](#data-lake-staffing-groups-demand-groups)
+ [員工輪班活動分配](#data-lake-staff-shift-activity-allocation)
+ [排程指標](#data-lake-schedule-metrics)
+ [排程目標](#data-lake-schedule-goals)
+ [輪班輪換模式](#data-lake-shift-rotation-patterns)
+ [輪班輪換步驟](#data-lake-shift-rotation-steps)
+ [資料結構描述](#data-lake-data-schema)
+ [範例查詢](#data-lake-sample-queries)

## 員工排程設定檔
<a name="data-lake-staff-scheduling-profile"></a>

 資料表名稱：`staff_scheduling_profile`

 複合主鍵：`{instance_id, agent_arn, staff_scheduling_profile_version} `


|  資料行  |  Type  |  說明  | 
| --- | --- | --- | 
|  instance\$1id  |  string  |  Amazon Connect 執行個體的 ID。 | 
|  agent\$1arn  |  string |  客服人員的 ARN。 | 
|  staff\$1scheduling\$1profile\$1version  |  bigint  |  員工排程設定檔版本。 | 
|  instance\$1arn  |  string  |  Amazon Connect 執行個體的 ARN。 | 
|  staffing\$1group\$1arn  |  string  |  指派給客服人員之人員配置群組的 ARN。 | 
|  start\$1timestamp  |  時間戳記  |  在「員工規則」中設定的客服人員 StartTimestamp (排程只會在此時間戳記之後產生)。 | 
|  end\$1timestamp  |  時間戳記  |  在「員工規則」中設定的客服人員 EndTimestamp (產生排程的時間不會超過此時間戳記)。 | 
|  shift\$1profile\$1arn  |  string  |  員工規則中指派給客服人員的輪班設定檔 ARN。與 Shift 輪換模式互斥。 | 
|  shift\$1rotation\$1pattern\$1arn  |  string  |  員工規則中指派給客服人員的輪班輪換模式 ARN。與 Shift Profile 互斥。 | 
|  shift\$1rotation\$1start\$1step\$1id  |  bigint  |  代理程式在指派的 Shift 輪換模式中開始的步驟 ID。 | 
|  timezone  |  string  |  為客服人員設定的時區。 | 
|  is\$1deleted  |  Boolean  |  如果客服人員已刪除，請設定為 True。否則設定為 False。 | 
|  last\$1updated\$1timestamp  |  時間戳記  |  建立/更新/刪除員工排程設定檔時的時間戳記。 | 
|  data\$1lake\$1last\$1processed\$1timestamp  |  時間戳記  |  時間戳記，顯示資料湖上次觸碰記錄的時間。這可能包括轉換和回填。此欄位無法用來判斷可靠的資料新鮮度。 | 

## 輪班活動
<a name="data-lake-shift-activities"></a>

 資料表名稱：`shift_activities`

 複合主鍵：`{instance_id, shift_activity_arn, shift_activity_version}`


|  資料行  |  Type  |  說明  | 
| --- | --- | --- | 
|  instance\$1id  |  string  |  Amazon Connect 執行個體的 ID。 | 
|  shift\$1activity\$1arn  |  string  |  輪班活動的 ARN。 | 
|  shift\$1activity\$1version  |  bigint  |  輪班活動版本。 | 
|  instance\$1arn  |  string  |  Amazon Connect 執行個體的 ARN。 | 
|  shift\$1activity\$1name  |  string  |  輪班活動的名稱。 | 
|  type  |  string  |  輪班活動的類型。可能的值為：PRODUCTIVE、NON\$1PRODUCTIVE 和 LEAVE。 | 
|  sub\$1type  |  string  | 輪班活動的子類型。這僅適用於 NON\$1PRODUCTIVE 類型活動。可能的值為：BREAK\$1OR\$1MEAL 和 NONE。 | 
|  is\$1adherence\$1tracked  |  Boolean  |  如果輪班活動設定為遵循追蹤，則設定為 True。否則設定為 False。 | 
|  is\$1paid  |  Boolean  |  如果輪班活動設定為已支付，則設定為 True。否則設定為 False。 | 
|  is\$1deleted  |  Boolean  |  如果刪除輪班活動，則設定為 True。否則設定為 False。 | 
|  last\$1updated\$1timestamp  |  時間戳記  | 建立/更新/刪除輪班活動時的時間戳記。 | 
|  data\$1lake\$1last\$1processed\$1timestamp  |  時間戳記  | 時間戳記，顯示資料湖上次觸碰記錄的時間。這可能包括轉換和回填。此欄位無法用來判斷可靠的資料新鮮度。 | 

## 輪班設定檔
<a name="data-lake-shift-profiles"></a>

 資料表名稱：`shift_profiles`

 複合主鍵：`{instance_id, shift_profile_arn, shift_profile_version}`


|  資料行  |  Type  |  說明  | 
| --- | --- | --- | 
|  instance\$1id  |  string  |  Amazon Connect 執行個體的 ID。 | 
|  shift\$1profile\$1arn  |  string  |  輪班設定檔的 ARN。 | 
|  shift\$1profile\$1version  |  bigint  |  輪班設定檔版本。 | 
|  instance\$1arn  |  string  |  Amazon Connect 執行個體的 ARN。 | 
|  shift\$1profile\$1name  |  string  |  輪班設定檔的名稱。 | 
|  is\$1deleted  |  Boolean  |  如果刪除輪班設定檔，則設定為 True。否則設定為 False。 | 
|  last\$1updated\$1timestamp  |  時間戳記  | 建立/更新/刪除輪班設定檔時的時間戳記。 | 
|  data\$1lake\$1last\$1processed\$1timestamp  |  時間戳記  | 時間戳記，顯示資料湖上次觸碰記錄的時間。這可能包括轉換和回填。此欄位無法用來判斷可靠的資料新鮮度。 | 

## 人員配置群組
<a name="data-lake-staffing-groups"></a>

 資料表名稱：`staffing_groups`

 複合主鍵：`{instance_id, staffing_group_arn, staffing_group_version}`


|  資料行  |  Type  |  說明  | 
| --- | --- | --- | 
|  instance\$1id  |  string  |  Amazon Connect 執行個體的 ID。 | 
|  staffing\$1group\$1arn  |  string  |  人員配置群組的 ARN。 | 
|  staffing\$1group\$1version  |  bigint  |  人員配置群組版本。 | 
|  instance\$1arn  |  string  |  Amazon Connect 執行個體的 ARN。 | 
|  staffing\$1group\$1name  |  string  |  人員配置群組的名稱。 | 
|  is\$1deleted  |  Boolean  |  如果刪除人員配置群組，則設定為 True。否則設定為 False。 | 
|  last\$1updated\$1timestamp  |  時間戳記  |  建立/更新/刪除人員配置群組時的時間戳記。 | 
|  data\$1lake\$1last\$1processed\$1timestamp  |  時間戳記  | 時間戳記，顯示資料湖上次觸碰記錄的時間。這可能包括轉換和回填。此欄位無法用來判斷可靠的資料新鮮度。 | 

## 人員配置群組 - 預測群組
<a name="data-lake-staffing-groups-forecast-groups"></a>

 資料表名稱：`staffing_group_forecast_groups `

 複合主鍵：`{instance_id, staffing_group_arn, staffing_group_version, forecast_group_arn}`

 應透過在 `staffing_group_arn` 和 `staffing_group_version` 上聯結 `staffing_groups` 資料表來查詢此資料表。


|  資料行  |  Type  |  說明  | 
| --- | --- | --- | 
|  instance\$1id  |  string  |  Amazon Connect 執行個體的 ID。 | 
|  staffing\$1group\$1arn  |  string  |  人員配置群組的 ARN。 | 
|  staffing\$1group\$1version  |  bigint  |  人員配置群組版本。 | 
|  forecast\$1group\$1arn  |  string  |  與人員配置群組相關聯的預測群組 ARN。 | 
|  instance\$1arn  |  string  |  Amazon Connect 執行個體的 ARN。 | 
|  is\$1deleted  |  Boolean  |  當人員配置群組 - 預測群組關聯有效時，設定為 False。 | 
|  last\$1updated\$1timestamp  |  時間戳記  |  建立/更新人員配置群組時的時間戳記。 | 
|  data\$1lake\$1last\$1processed\$1timestamp  |  時間戳記  |  時間戳記，顯示資料湖上次觸碰記錄的時間。這可能包括轉換和回填。此欄位無法用來判斷可靠的資料新鮮度。 | 

## 人員配置群組 - 主管
<a name="data-lake-staffing-groups-supervisors"></a>

 資料表名稱：`staffing_group_supervisors`

 複合主鍵：`{instance_id, staffing_group_arn, staffing_group_version, supervisor_arn} `

 應透過在 `staffing_group_arn` 和 `staffing_group_version` 上聯結 `staffing_groups` 資料表來查詢此資料表。


|  資料行  |  Type  |  說明  | 
| --- | --- | --- | 
|  instance\$1id  |  string  |  Amazon Connect 執行個體的 ID。 | 
|  staffing\$1group\$1arn  |  string  |  人員配置群組的 ARN。 | 
|  staffing\$1group\$1version  |  bigint  |  人員配置群組版本。 | 
|  supervisor\$1arn  |  string  |  與人員配置群組相關聯之主管的客服人員 ARN。 | 
|  instance\$1arn  |  string  |  Amazon Connect 執行個體的 ARN。 | 
|  is\$1deleted  |  Boolean  |  當人員配置群組 - 預測群組關聯有效時，設定為 False。 | 
|  last\$1updated\$1timestamp  |  時間戳記  |  建立/更新人員配置群組時的時間戳記。 | 
|  data\$1lake\$1last\$1processed\$1timestamp  |  時間戳記  |  時間戳記，顯示資料湖上次觸碰記錄的時間。這可能包括轉換和回填。此欄位無法用來判斷可靠的資料新鮮度。 | 

## 員工輪班
<a name="staff-shifts"></a>

 資料表名稱：`staff_shifts`

 複合主鍵：`{instance_id, shift_id, shift_version}`


|  資料行  |  Type  |  說明  | 
| --- | --- | --- | 
|  instance\$1id  |  string  |  Amazon Connect 執行個體的 ID。 | 
|  shift\$1id  |  string  |  輪班的 ID。 | 
|  shift\$1version  |  bigint  |  輪班版本。 | 
|  instance\$1arn  |  string  |  Amazon Connect 執行個體的 ARN。 | 
|  agent\$1arn  |  string  |  客服人員的 ARN。 | 
|  shift\$1start\$1timestamp  |  時間戳記  |  輪班開始時的時間戳記。 | 
|  shift\$1end\$1timestamp  |  時間戳記  | 輪班結束時的時間戳記。 | 
|  created\$1timestamp  |  時間戳記  |  建立輪班時的時間戳記。 | 
|  is\$1deleted  |  Boolean  |  如果刪除輪班，則設定為 True。否則設定為 False。 | 
|  last\$1updated\$1timestamp  |  時間戳記  |  建立/更新/刪除輪班時的時間戳記。 | 
|  data\$1lake\$1last\$1processed\$1timestamp  |  時間戳記  | 時間戳記，顯示資料湖上次觸碰記錄的時間。這可能包括轉換和回填。此欄位無法用來判斷可靠的資料新鮮度。 | 

## 員工輪班活動
<a name="data-lake-staff-shift-activities"></a>

 資料表名稱：`staff_shift_activities`

 複合主鍵：`{instance_id, shift_id, shift_version, activity_id}`

 應透過在 `shift_id` 和 `shift_version` 上聯結 `staff_shifts` 資料表來查詢此資料表。


|  資料行  |  Type  |  說明  | 
| --- | --- | --- | 
|  instance\$1id  |  string  |  Amazon Connect 執行個體的 ID。 | 
|  shift\$1id  |  string  |  輪班的 ID。 | 
|  shift\$1version  |  bigint  |  輪班版本。 | 
|  activity\$1id  |  string  |  活動的 ID。 | 
|  instance\$1arn  |  string  |  Amazon Connect 執行個體的 ARN。 | 
|  activity\$1start\$1timestamp  |  時間戳記  |  活動開始時的時間戳記。 | 
|  activity\$1end\$1timestamp  |  時間戳記  | 活動結束時的時間戳記。 | 
|  shift\$1activity\$1arn  |  string  |  輪班活動的 ARN。如果 shift\$1activity\$1arn 為 null，則表示 'Work' 活動。 | 
|  activity\$1status  |  string  |  活動的狀態。如果活動與休假重疊，這會設定為 INACTIVE。 | 
|  is\$1overtime  |  Boolean  |  如果活動是加班的一部分，則設定為 True。否則設定為 False。 | 
|  is\$1deleted  |  Boolean  |  當輪班活動有效時，設定為 False。 | 
|  last\$1updated\$1timestamp  |  時間戳記  | 建立/更新輪班時的時間戳記。 | 
|  data\$1lake\$1last\$1processed\$1timestamp  |  時間戳記  |  時間戳記，顯示資料湖上次觸碰記錄的時間。這可能包括轉換和回填。此欄位無法用來判斷可靠的資料新鮮度。 | 

## 員工休假餘額變更
<a name="data-lake-staff-timeoff-balance-changes"></a>

 資料表名稱：`staff_timeoff_balance_changes`

 複合主鍵：`{instance_id, agent_arn, shift_activity_arn, timeoff_balance_version}`


|  資料行  |  Type  |  說明  | 
| --- | --- | --- | 
|  instance\$1arn  |  string  |  Amazon Connect 執行個體的 ARN。 | 
|  instance\$1id  |  string  |  Amazon Connect 執行個體的 ID。 | 
|  account\$1id  |  string  |  AWS 帳戶的 ID。 | 
|  agent\$1arn  |  string  |  客服人員的 ARN。 | 
|  shift\$1activity\$1arn  |  string  |  配置此餘額之輪班活動的 ARN。 | 
|  timeoff\$1balance\$1version  |  bigint  |  休假餘額版本，用來表示變更順序的遞增數字。 | 
|  balance\$1update\$1source  |  string  |  餘額更新的來源。可能的值為 TIME\$1OFF\$1BALANCE\$1UPLOAD、CONNECT\$1TIME\$1OFF\$1REQUEST、SCHEDULE\$1PUBLISH、CSV\$1TIME\$1OFF\$1BALANCE\$1DELETION、TIME\$1OFF\$1BALANCE\$1BACKFILL、SYSTEM\$1UPDATE  | 
|  timeoff\$1id  |  string  |  造成此餘額變更的休假 ID，如果有的話。 | 
|  last\$1updated\$1by  |  string  |  造成此餘額變更的客服人員 ARN，如果有的話。 | 
|  balance\$1change\$1in\$1hours  |  double  |  透過此變更 (以小時為單位) 更新的休假餘額量。如果此值為正數，則此變更會計入休假餘額。如果此值為負數，則此變更會扣除休假餘額。此值未針對任何餘額上傳和刪除事件定義。 | 
|  remaining\$1balance\$1in\$1hours  |  double  |  此變更事件之後的剩餘休假餘額時數。此值未針對任何餘額刪除事件定義。 | 
|  last\$1created\$1timestamp  |  時間戳記  |  建立休假餘額變更記錄時的時間戳記。 | 
|  data\$1lake\$1last\$1processed\$1timestamp  |  時間戳記  |  時間戳記，顯示資料湖上次觸碰記錄的時間。這可能包括轉換和回填。此欄位無法用來判斷可靠的資料新鮮度。 | 

## 員工休假
<a name="data-lake-staff-timeoffs"></a>

 資料表名稱：`staff_timeoffs`

 複合主鍵：`{instance_id, timeoff_id, agent_arn, timeoff_version}`


|  資料行  |  Type  |  說明  | 
| --- | --- | --- | 
|  instance\$1id  |  string  |  Amazon Connect 執行個體的 ID。 | 
|  timeoff\$1id  |  string  |  休假的 ID。 | 
|  agent\$1arn  |  string  |  客服人員的 ARN。 | 
|  timeoff\$1version  |  bigint  |  休假版本。 | 
|  instance\$1arn  |  string  |  Amazon Connect 執行個體的 ARN。 | 
|  timeoff\$1type  |  string  |  休假的類型。可能的值為：TIME\$1OFF 和 VOLUNTARY\$1TIME\$1OFF。 | 
|  timeoff\$1start\$1timestamp  |  時間戳記  |  休假開始時的時間戳記。 | 
|  timeoff\$1end\$1timestamp  |  時間戳記  |  休假結束時的時間戳記。 | 
|  timeoff\$1status  |  string  |  休假的狀態。可能的值為：PENDING\$1CREATE、PENDING\$1UPDATE、PENDING\$1CANCEL、PENDING\$1ACCEPT、PENDING\$1APPROVE、PENDING\$1DECLINE、APPROVED、ACCEPTED、REJECTED、CANCELLED、WAITING\$1ACCEPT 和 WAITING\$1APPROVE。WAITING 狀態表示休假正在等待使用者動作。PENDING 狀態表示休假正在等待使用者動作的系統處理。 | 
|  shift\$1activity\$1arn  |  string  |  用於休假之輪班活動的 ARN。 | 
|  effective\$1timeoff\$1hours  |  double  |  有效休假時數總計。有效休假時數是根據[休假扣除邏輯](https://docs.aws.amazon.com/connect/latest/adminguide/upload-timeoff-balance.html#how-system-calculates-time-off-deductions)計算的。這只會針對 TIME\$1OFF 類型設定。 | 
|  last\$1updated\$1timestamp  |  時間戳記  |  建立/更新/刪除休假時的時間戳記。 | 
|  data\$1lake\$1last\$1processed\$1timestamp  |  時間戳記  |  時間戳記，顯示資料湖上次觸碰記錄的時間。這可能包括轉換和回填。此欄位無法用來判斷可靠的資料新鮮度。 | 

## 員工休假間隔
<a name="data-lake-staff-timeoff-intervals"></a>

 資料表名稱：`staff_timeoff_intervals`

 複合主鍵：\$1`instance_id, timeoff_id, timeoff_version, interval_id}` 

 應透過在 `timeoff_id` 和 `timeoff_version` 上聯結 `staff_timeoffs` 資料表來查詢此資料表。


|  資料行  |  Type  |  說明  | 
| --- | --- | --- | 
|  instance\$1id  |  string  |  Amazon Connect 執行個體的 ID。 | 
|  timeoff\$1id  |  string  |  休假的 ID。 | 
|  timeoff\$1version  |  bigint  |  休假版本。 | 
|  interval\$1id  |  string  |  休假間隔的 ID。 | 
|  instance\$1arn  |  string  |  Amazon Connect 執行個體的 ARN。 | 
|  timeoff\$1interval\$1start\$1timestamp  |  時間戳記  |  特定休假間隔開始時的時間戳記。 | 
|  timeoff\$1interval\$1end\$1timestamp  |  時間戳記  |  特定休假間隔結束時的時間戳記。 | 
|  interval\$1effective\$1timeoff\$1hours  |  double  |  此特定休假間隔的有效休假時數。有效休假時數是根據[休假扣除邏輯](https://docs.aws.amazon.com/connect/latest/adminguide/upload-timeoff-balance.html#how-system-calculates-time-off-deductions)計算的。 | 
|  last\$1updated\$1timestamp  |  時間戳記  |  建立/更新/刪除休假時的時間戳記。 | 
|  data\$1lake\$1last\$1processed\$1timestamp  |  時間戳記  |  時間戳記，顯示資料湖上次觸碰記錄的時間。這可能包括轉換和回填。此欄位無法用來判斷可靠的資料新鮮度。 | 

## 員工需求群組
<a name="data-lake-staff_demand_group"></a>

資料表名稱： `staff_demand_group`

複合主鍵：`{instance_id, agent_arn, demand_group_arn, staff_demand_group_version}`


|  資料行  |  Type  |  說明  | 
| --- | --- | --- | 
| instance\$1id  | string  | Amazon Connect 執行個體的 ID。 | 
| agent\$1arn  | string  | 客服人員的 ARN。 | 
| demand\$1group\$1arn  | string  | 需求群組的 ARN。 | 
| staff\$1demand\$1group\$1version  | Long  | 此代理程式需要群組關聯的版本  | 
| priority  | string  | 此代理程式的需求群組優先順序。可以是低、中或高 | 
| instance\$1arn  | string  | Amazon Connect 執行個體的 ARN。 | 
| is\$1override  | Boolean  | 如果這是客服人員至需求群組關聯是客服人員層級覆寫，則設定為「true」。 | 
| is\$1deleted  | Boolean  | 如果刪除客服人員對需求群組關聯，則設為 true。 | 
| last\$1updated\$1timestamp  | 時間戳記  | 建立/更新客服人員至需求群組關聯的時間戳記。 | 
| data\$1lake\$1last\$1processed\$1timestamp  | 時間戳記  | 時間戳記，顯示資料湖上次觸碰記錄的時間。這可能包括轉換和回填。此欄位無法用來判斷可靠的資料新鮮度。 | 

## 人員配置群組需求群組
<a name="data-lake-staffing-groups-demand-groups"></a>

資料表名稱： `staffing_group_demand_group`

複合主鍵：`{instance_id, staffing_group_arn, demand_group_arn, staffing_group_demand_group_version}`


|  資料行  |  Type  |  說明  | 
| --- | --- | --- | 
|  instance\$1id  |  string  |  Amazon Connect 執行個體的 ID。 | 
|  staffing\$1group\$1arn  |  string  |  人員配置群組的 ARN。 | 
|  demand\$1group\$1arn  |  string  |  需求群組的 ARN。 | 
|  staffing\$1group\$1demand\$1group\$1version  |  Long  | 此人員配置群組對需求群組關聯的版本  | 
|  priority  |  string  |  此人員配置群組之需求群組的優先順序。可以是低、中或高 | 
|  instance\$1arn  |  string  |  Amazon Connect 執行個體的 ARN。 | 
|  is\$1deleted  |  Boolean  |  如果刪除人員配置群組與需求群組的關聯，則設為 true。 | 
|  last\$1updated\$1timestamp  |  時間戳記  |  created/updated/deleted人員配置群組至需求群組關聯的時間戳記。 | 
|  data\$1lake\$1last\$1processed\$1timestamp  |  時間戳記  |  時間戳記，顯示資料湖上次觸碰記錄的時間。這可能包括轉換和回填。此欄位無法用來判斷可靠的資料新鮮度。 | 

## 員工輪班活動分配
<a name="data-lake-staff-shift-activity-allocation"></a>

資料表名稱： `staff_shift_activity_allocations`

複合主鍵：`{instance_id, shift_id, shift_version, activity_id, demand_group_arn}`


|  資料行  |  Type  |  說明  | 
| --- | --- | --- | 
|  instance\$1id  |  string  |  Amazon Connect 執行個體的 ID。 | 
|  shift\$1id  |  string  |  輪班的 ID。 | 
|  shift\$1version  |  Long  |  輪班版本。 | 
|  activity\$1id  |  string  |  活動的 ID。 | 
|  demand\$1group\$1arn  |  string  |  需求群組的 ARN。 | 
|  foecast\$1group\$1arn  |  string  |  預測群組的 ARN。 | 
|  allocation\$1percentage  |  double  |  活動配置給需求群組的百分比。 | 
|  is\$1deleted  |  Boolean  |  當 StaffingGroup-ForecastGroupassociation 有效時，設定為 False。 | 
|  last\$1updated\$1timestamp  |  時間戳記  |  建立/更新人員配置群組時的時間戳記。 | 
|  data\$1lake\$1last\$1processed\$1timestamp  |  時間戳記  |  時間戳記，顯示資料湖上次觸碰記錄的時間。這可能包括轉換和回填。此欄位無法用來判斷可靠的資料新鮮度。 | 

## 排程指標
<a name="data-lake-schedule-metrics"></a>

資料表名稱：`schedule_metrics`

複合主鍵：`{instance_id, metric_id, interval_start_timestamp}`


| 資料行 | Type | 說明 | 
| --- | --- | --- | 
| instance\$1id | string | Amazon Connect 執行個體的 ARN。 | 
| instance\$1arn | string | Amazon Connect 執行個體的 ID。 | 
| metric\$1id | string | 指標值的唯一識別符 | 
| aws\$1account\$1id | string | AWS 帳戶的 ID。 | 
| entity\$1type | string | 表示指標是用於預測群組還是需求群組。 | 
| entity\$1arn | string | 預測群組或需求群組的 Arn | 
| 通道 | string | 表示媒體頻道，例如語音、聊天。如果資料列包含非頻道層級的指標，則會填入為 ALL | 
| interval\$1start\$1timestamp | timestamp | 表示間隔開始的時間戳記 | 
| required\$1agent\$1count | float | 表示預測的客服人員計數 | 
| scheduled\$1agent\$1count | float | 表示排程代理程式計數 | 
| scheduled\$1occupancy | float | 表示佔用百分比 | 
| scheduled\$1service\$1level\$1percentage | float | 表示排程服務層級百分比 | 
| service\$1level\$1seconds | integer | 表示服務層級秒數 | 
| scheduled\$1average\$1speed\$1of\$1answer | float | 表示平均接聽速度 | 
| is\$1deleted | boolean | 表示是否刪除指標 | 
| last\$1updated\$1timestamp | timestamp | 建立指標記錄時的時間戳記。 | 
| data\$1lake\$1last\$1processed\$1timestamp | timestamp | 時間戳記，顯示資料湖上次處理記錄的時間。這可能包括轉換和回填。此欄位無法用來判斷可靠的資料新鮮度。 | 

## 排程目標
<a name="data-lake-schedule-goals"></a>

資料表名稱：`schedule_goals`

複合主鍵：`{instance_id, goal_id}`


| 資料行 | Type | 說明 | 
| --- | --- | --- | 
| instance\$1id | string | Amazon Connect 執行個體的 ARN。 | 
| instance\$1arn | string | Amazon Connect 執行個體的 ID。 | 
| goal\$1id | string | 目標值的唯一識別符 | 
| aws\$1account\$1id | string | AWS 帳戶的 ID。 | 
| entity\$1type | string | 表示目標是用於預測群組或需求群組。 | 
| entity\$1arn | string | 預測群組或需求群組的 Arn | 
| 通道 | string | 表示媒體頻道，例如語音、聊天。 | 
| start\$1date\$1timestamp | timestamp | 表示目標開始的時間戳記 | 
| end\$1date\$1timestamp | timestamp | 表示目標結束的時間戳記 | 
| goal\$1service\$1level\$1percentage | float | 表示目標服務水準百分比 | 
| goal\$1service\$1level\$1seconds | integer | 表示服務層級秒數 | 
| goal\$1average\$1speed\$1of\$1answer | float | 表示平均接聽速度 | 
| is\$1deleted | boolean | 表示目標是否已刪除 | 
| last\$1updated\$1timestamp | timestamp | 建立目標記錄時的時間戳記。 | 
| data\$1lake\$1last\$1processed\$1timestamp | timestamp | 時間戳記，顯示資料湖上次處理記錄的時間。這可能包括轉換和回填。此欄位無法用來判斷可靠的資料新鮮度。 | 

## 輪班輪換模式
<a name="data-lake-shift-rotation-patterns"></a>

資料表名稱：`shift_rotation_patterns`

複合主鍵：`{instance_id, shift_rotation_pattern_arn, shift_rotation_pattern_version}`


| 資料行 | Type | 說明 | 
| --- | --- | --- | 
| instance\$1id | string | Amazon Connect 執行個體的 ID。 | 
| shift\$1rotation\$1pattern\$1arn | string | 輪班輪換模式的 ARN。 | 
| shift\$1rotation\$1pattern\$1version | bigint | 輪班輪換模式版本。 | 
| instance\$1arn | string | Amazon Connect 執行個體的 ARN。 | 
| shift\$1rotation\$1pattern\$1name | string | Shift 輪換模式的名稱。 | 
| start\$1date | string | 輪班輪換模式的開始日期yyyy-mm-dd，格式為 。 | 
| is\$1deleted | Boolean | 如果刪除輪班輪換模式，則設為 True。否則設定為 False。 | 
| last\$1updated\$1by | string | created/updated/deleted輪班輪換模式之使用者的 ARN。 | 
| last\$1updated\$1timestamp | 時間戳記 | created/updated/deleted輪班輪換模式時的時間戳記。 | 
| data\$1lake\$1last\$1processed\$1timestamp | 時間戳記 | 時間戳記，顯示資料湖上次觸碰記錄的時間。這可能包括轉換和回填。此欄位無法用來判斷可靠的資料新鮮度。 | 

## 輪班輪換步驟
<a name="data-lake-shift-rotation-steps"></a>

資料表名稱：`shift_rotation_steps`

複合主鍵：`{instance_id, shift_rotation_pattern_arn, shift_rotation_pattern_version, step_id}`

應透過在 `shift_rotation_pattern_arn` 和 `shift_rotation_pattern_version` 上聯結 `shift_rotation_patterns` 資料表來查詢此資料表。


| 資料行 | Type | 說明 | 
| --- | --- | --- | 
| instance\$1id | string | Amazon Connect 執行個體的 ID。 | 
| shift\$1rotation\$1pattern\$1arn | string | 輪班輪換模式的 ARN。 | 
| shift\$1rotation\$1pattern\$1version | bigint | 輪班輪換模式版本。 | 
| step\$1id | bigint | 輪班輪換模式內步驟的 ID。步驟會依序編號 (1、2、3、...最多 52 個）。 | 
| instance\$1arn | string | Amazon Connect 執行個體的 ARN。 | 
| shift\$1profile\$1arn | string | 與輪換步驟相關聯的輪班設定檔 ARN。 | 
| duration | bigint | 輪換步驟的持續時間，以週為單位。 | 
| is\$1deleted | Boolean | 當 Shift 輪換步驟有效時，設定為 False。 | 
| last\$1updated\$1by | string | 建立/更新輪班輪換模式之使用者的 ARN。 | 
| last\$1updated\$1timestamp | 時間戳記 | 建立/更新輪班輪換模式時的時間戳記。 | 
| data\$1lake\$1last\$1processed\$1timestamp | 時間戳記 | 時間戳記，顯示資料湖上次觸碰記錄的時間。這可能包括轉換和回填。此欄位無法用來判斷可靠的資料新鮮度。 | 

## 資料結構描述
<a name="data-lake-data-schema"></a>

以下是實體關係圖，顯示 Amazon Connect 資料湖中排程資料表之間的結構和關係。

 每個資料表會顯示其主索引鍵和屬性及其資料類型。圖表說明這些資料表如何透過外部索引鍵關係相互關聯，提供排程資料模型的全面檢視。

![\[實體關係圖，顯示 Amazon Connect 分析資料湖中排程資料表之間的結構和關係。\]](http://docs.aws.amazon.com/zh_tw/connect/latest/adminguide/images/data-lake-scheduling-tables-overview-1.png)


## 範例查詢
<a name="data-lake-sample-queries"></a>

### 1. 查詢以取得在特定預測群組上工作之客服人員的所有排程輪班活動
<a name="query1"></a>

`SELECT * FROM agent_scheduled_shift_activities_view where forecast_group_name = 'AnyDepartmentForecastGroup'` 

完成下列步驟以建立上述的 `agent_scheduled_shift_activities_view`。

 **步驟 1：建立檢視以取得主管名稱** 

```
CREATE OR REPLACE VIEW "latest_supervisor_names_view" AS
SELECT
  staffing_group_arn
, array_agg(supervisor_name ORDER BY supervisor_name ASC) supervisor_names
FROM
  (
   SELECT
     s.staffing_group_arn
   , CONCAT(u.first_name, ' ', u.last_name) supervisor_name
   FROM
     ((
      SELECT
        staffing_group_arn
      , supervisor_arn
      FROM
        (
         SELECT
           *
         , RANK() OVER (PARTITION BY staffing_group_arn ORDER BY staffing_group_version DESC) recency
         FROM
           staffing_group_supervisors
         WHERE (instance_id = 'YourAmazonConnectInstanceId')
      )  t
      WHERE (recency = 1)
   )  s
   INNER JOIN USERS u ON (s.supervisor_arn = u.user_arn))
)
GROUP BY staffing_group_arn
```

 **步驟 2：建立檢視以取得與客服人員相關聯的人員配置群組和預測群組** 

```
CREATE OR REPLACE VIEW "latest_agent_staffing_group_forecast_group_view" AS
WITH
  latest_staff_scheduling_profile AS (
   SELECT
     agent_arn
   , staffing_group_arn
   , last_updated_timestamp
   FROM
     (
      SELECT
        *
      , RANK() OVER (PARTITION BY agent_arn ORDER BY staff_scheduling_profile_version DESC) recency
      FROM
        staff_scheduling_profile
      WHERE ((instance_id = 'YourAmazonConnectInstanceId') AND (is_deleted = false))
   )  t
   WHERE (recency = 1)
)
, latest_staffing_groups AS (
   SELECT
     staffing_group_name
   , staffing_group_arn
   FROM
     (
      SELECT
        *
      , RANK() OVER (PARTITION BY staffing_group_arn ORDER BY staffing_group_version DESC) recency
      FROM
        staffing_groups
      WHERE (instance_id = 'YourAmazonConnectInstanceId')
   )  t
   WHERE (recency = 1)
)
, latest_forecast_groups AS (
   SELECT
     forecast_group_arn
   , forecast_group_name
   FROM
     (
      SELECT
        *
      , RANK() OVER (PARTITION BY forecast_group_arn ORDER BY forecast_group_version DESC) recency
      FROM
        forecast_groups
      WHERE (instance_id = 'YourAmazonConnectInstanceId')
   )  t
   WHERE (recency = 1)
)
, latest_staffing_group_forecast_groups AS (
   SELECT
     staffing_group_arn
   , forecast_group_arn
   FROM
     (
      SELECT
        *
      , RANK() OVER (PARTITION BY staffing_group_arn ORDER BY staffing_group_version DESC) recency
      FROM
        staffing_group_forecast_groups
      WHERE (instance_id = 'YourAmazonConnectInstanceId')
   )  t
   WHERE (recency = 1)
)
SELECT
  ssp.agent_arn
, U.agent_username AS username
, U.agent_routing_profile_id AS routing_profile_id
, CONCAT(u.first_name, ' ', u.last_name) agent_name
, fg.forecast_group_arn
, fg.forecast_group_name
, sg.staffing_group_arn
, sg.staffing_group_name
FROM
 latest_staff_scheduling_profile ssp
INNER JOIN latest_staffing_groups sg ON ssp.staffing_group_arn = sg.staffing_group_arn
INNER JOIN latest_staffing_group_forecast_groups sgfg ON ssp.staffing_group_arn = sgfg.staffing_group_arn
INNER JOIN latest_forecast_groups fg ON fg.forecast_group_arn = sgfg.forecast_group_arn
INNER JOIN USERS u ON ssp.agent_arn = u.user_arn
```

 **步驟 3：取得最新的輪班活動** 

```
CREATE OR REPLACE VIEW "latest_shift_activities_view" AS
SELECT
  shift_activity_arn
, shift_activity_name
, shift_activity_version
, type
, sub_type
, is_adherence_tracked
, is_paid
, last_updated_timestamp
FROM
  (
   SELECT
     *
   , RANK() OVER (PARTITION BY shift_activity_arn ORDER BY shift_activity_version DESC) recency
   FROM
     shift_activities
   WHERE (instance_id = 'YourAmazonConnectInstanceId')
)  t
WHERE (recency = 1)
```

 **步驟 4：建立檢視以取得客服人員排程輪班活動** 

```
CREATE OR REPLACE VIEW "agent_scheduled_shift_activities_view" AS
WITH
  latest_staff_shifts AS (
   SELECT
     agent_arn
   , shift_id
   , shift_version
   , shift_start_timestamp
   , shift_end_timestamp
   , created_timestamp
   , last_updated_timestamp
   , data_lake_last_processed_timestamp
   , recency
   FROM
     (
      SELECT
        RANK() OVER (PARTITION BY shift_id ORDER BY shift_version DESC) recency
      , *
      FROM
        staff_shifts sa
      WHERE (instance_id = 'YourAmazonConnectInstanceId')
   )  t
   WHERE ((recency = 1) AND (is_deleted = false))
)
SELECT
  asgfg.forecast_group_name
, array_join(sn.supervisor_names, ',') supervisor_names
, s.agent_arn
, u.first_name
, u.last_name
, asgfg.staffing_group_name
, ssa.activity_id
, (CASE WHEN (ssa.shift_activity_arn IS NULL) THEN COALESCE(sa.shift_activity_name, 'Work') ELSE sa.shift_activity_name END) shift_activity_name
, s.shift_start_timestamp
, s.shift_end_timestamp
, (CASE WHEN (ssa.shift_activity_arn IS NULL) THEN COALESCE(sa.type, 'PRODUCTIVE') ELSE sa.type END) type
, (CASE WHEN (ssa.shift_activity_arn IS NULL) THEN COALESCE(sa.is_paid, true) ELSE sa.is_paid END) is_paid
, ssa.activity_start_timestamp
, ssa.activity_end_timestamp
, ssa.last_updated_timestamp
, ssa.data_lake_last_processed_timestamp
, u.agent_username as username
, u.agent_routing_profile_id as routing_profile_id
FROM
  staff_shift_activities ssa
INNER JOIN latest_staff_shifts s ON s.shift_id = ssa.shift_id AND s.shift_version = ssa.shift_version
INNER JOIN USERS u ON s.agent_arn = u.user_arn
INNER JOIN latest_agent_staffing_group_forecast_group_view asgfg ON s.agent_arn = asgfg.agent_arn
LEFT JOIN latest_shift_activities_view sa ON sa.shift_activity_arn = ssa.shift_activity_arn
INNER JOIN latest_supervisor_names_view sn ON sn.staffing_group_arn = asgfg.staffing_group_arn
WHERE (ssa.is_deleted = false) AND (COALESCE(ssa.activity_status, ' ') <> 'INACTIVE') AND (ssa.instance_id = 'YourAmazonConnectInstanceId')
```

### 2. 查詢以取得特定預測群組中客服人員的所有休假請求
<a name="query2"></a>

` SELECT * FROM agent_timeoff_report_view where forecast_group_name = 'AnyDepartmentForecastGroup' `

 使用下列查詢來建立上述的 `agent_timeoff_report_view`。

```
CREATE OR REPLACE VIEW "agent_timeoff_report_view" AS
WITH latest_staff_timeoffs AS (
        SELECT t1.*,
            CAST((t1.effective_timeoff_hours * 60) AS INT) total_effective_timeoff_minutes
        FROM (
                SELECT RANK() OVER (
                        PARTITION BY timeoff_id
                        ORDER BY timeoff_version DESC
                    ) recency,
                    agent_arn,
                    timeoff_id,
                    shift_activity_arn,
                    timeoff_status,
                    timeoff_version,
                    effective_timeoff_hours,
                    timeoff_start_timestamp,
                    timeoff_end_timestamp,
                    last_updated_timestamp,
                    data_lake_last_processed_timestamp
                FROM staff_timeoffs
                WHERE (
                        instance_id = 'YourAmazonConnectInstanceId'
                    )
            ) t1
        WHERE (recency = 1)
    )
SELECT asgfg.forecast_group_name,
    to.agent_arn,
    asgfg.agent_name,
    asgfg.staffing_group_name,
    asgfg.username,
    sa.shift_activity_name,
    to.timeoff_start_timestamp,
    to.timeoff_end_timestamp,
    to.timeoff_status,
    array_join(sn.supervisor_names, ',') AS supervisor_names,
    sa.is_paid,
    to.last_updated_timestamp,
    to.data_lake_last_processed_timestamp,
    u.agent_routing_profile_id AS routing_profile_id,
    to.timeoff_id,

    to.shift_activity_arn,
    to.total_effective_timeoff_minutes
FROM latest_staff_timeoffs to
    INNER JOIN latest_agent_staffing_group_forecast_group_view asgfg ON asgfg.agent_arn = to.agent_arn
    INNER JOIN latest_shift_activities_view sa ON sa.shift_activity_arn = to.shift_activity_arn
    INNER JOIN latest_supervisor_names_view sn ON sn.staffing_group_arn = asgfg.staffing_group_arn
    INNER JOIN users u ON u.user_arn = to.agent_arn
```