

AWS Data Pipeline 는 더 이상 신규 고객이 사용할 수 없습니다. 의 기존 고객은 평소와 같이 서비스를 계속 사용할 AWS Data Pipeline 수 있습니다. [자세히 알아보기](https://aws.amazon.com/blogs/big-data/migrate-workloads-from-aws-data-pipeline/)

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# SqlActivity
<a name="dp-object-sqlactivity"></a>

데이터베이스에서 SQL 쿼리(스크립트)를 실행합니다.

## 예제
<a name="sqlactivity-example"></a>

다음은 이 객체 유형의 예제입니다.

```
{
  "id" : "{{MySqlActivity}}",
  "type" : "SqlActivity",
  "database" : { "ref": "{{MyDatabaseID}}" },
  "script" : "{{SQLQuery}}" | "scriptUri" : {{s3://scriptBucket/query.sql}},
  "schedule" : { "ref": "{{MyScheduleID}}" },
}
```

## 구문
<a name="sqlactivity-syntax"></a>


****  

| 필수 필드 | 설명 | 슬롯 유형 | 
| --- | --- | --- | 
| 데이터베이스 | 제공된 SQL 스크립트를 실행할 데이터베이스. | 참조 객체. 예: "database":{"ref":"myDatabaseId"} | 

 


****  

| 액체 호출 필드 | 설명 | 슬롯 유형 | 
| --- | --- | --- | 
| schedule | 이 객체는 예약 간격을 실행할 때 호출됩니다. 이 객체의 종속 실행 순서를 설정하려면 다른 객체로 일정 참조를 지정해야 합니다. 예컨대 `"schedule": {"ref": "DefaultSchedule"}`을 지정하여 객체에서 일정을 명시적으로 설정할 수 있습니다.<br />대부분의 경우에서는 모든 객체가 상속할 수 있도록 일정 참조를 기본 파이프라인 객체에 두는 것이 좋습니다.<br />파이프라인에 마스터 일정 내에서 중첩된 일정 트리가 있는 경우, 일정 참조가 있는 부모 객체를 생성합니다. 선택형 일정 구성 예제에 대한 자세한 내용은 단원을 참조하세요[https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html) | 참조 객체. 예: "schedule":{"ref":"myScheduleId"} | 

 


****  

| 필수 그룹(다음 중 하나를 제공해야 함) | 설명 | 슬롯 유형 | 
| --- | --- | --- | 
| 스크립트 | 실행할 SQL 스크립트. script 또는 scriptUri를 지정해야 합니다. 스크립트가 Amazon S3에 저장되면, 해당 스크립트는 표현식으로 평가되지 않습니다. 스크립트가 Amazon S3에 저장되는 경우에는 scriptArgument에 대해 복수 값을 지정하는 것이 도움이 됩니다. | 문자열 | 
| scriptUri | 이 활동에서 실행할 SQL 스크립트의 위치를 지정하는 URI. | 문자열 | 

 


****  

| 필수 그룹(다음 중 하나를 제공해야 함) | 설명 | 슬롯 유형 | 
| --- | --- | --- | 
| runsOn | 활동 또는 명령을 실행할 전산 리소스입니다. Amazon EC2 인스턴스 또는 Amazon EMR 클러스터가 이에 해당합니다. | 참조 객체. 예: "runsOn":{"ref":"myResourceId"} | 
| workerGroup | 작업자 그룹입니다. 이것은 작업 라우팅에 사용됩니다. workerGroup이 있을 때 runsOn 값을 제공하면 workerGroup이 무시됩니다. | 문자열 | 

 


****  

| 선택 필드 | 설명 | 슬롯 유형 | 
| --- | --- | --- | 
| attemptStatus | 원격 활동에서 가장 최근에 보고된 상태입니다. | 문자열 | 
| attemptTimeout | 원격 작업 완료의 제한 시간입니다. 이 필드를 설정하면 설정된 시작 시간 이내에 완료되지 않는 원격 활동을 재시도할 수 있습니다. | Period | 
| dependsOn | 실행 가능한 다른 객체의 종속성을 지정합니다. | 참조 객체. 예: "dependsOn":{"ref":"myActivityId"} | 
| failureAndRerunMode | 종속 요소에 장애가 있거나 재시도될 때의 소비자 노드 거동을 설명합니다. | 열거 | 
| 입력 | 입력 데이터의 위치입니다. | 참조 객체, 예: "input":{"ref":"myDataNodeId"} | 
| lateAfterTimeout | 객체 실행이 시작되어야 하는 예약된 파이프라인 시작 후 기간입니다. | Period | 
| maxActiveInstances | 구성요소의 동시 활성 인스턴스 최대수입니다. 재실행은 활성 인스턴스의 수에 포함되지 않습니다. | Integer | 
| maximumRetries | 장애 시 재시도 최대 횟수 | Integer | 
| onFail | 현재 객체 장애 시 실행할 작업입니다. | 참조 객체. 예: "onFail":{"ref":"myActionId"} | 
| onLateAction | 'lateAfterTimeout'에 의해 지정된 파이프라인의 예약된 시작 이후 기간 이내에 객체가 아직 예약되지 않았거나 완료되지 않은 경우에 트리거되어야 하는 작업입니다. | 참조 객체. 예: "onLateAction":{"ref":"myActionId"} | 
| onSuccess | 현재 객체 성공 시 실행할 작업입니다. | 참조 객체. 예: "onSuccess":{"ref":"myActionId"} | 
| output | 출력 데이터의 위치입니다. 이는 스크립트 내에서의 참조(에: \#{output.tablename}) 및 출력 데이터 노드에서의 'createTableSql' 설정에 의한 출력 테이블 생성 목적에만 유효합니다. SQL 쿼리의 출력은 출력 데이터 노드에 기록되지 않습니다. | 참조 객체, 예: "output":{"ref":"myDataNodeId"} | 
| parent | 슬롯을 상속할 현재 객체의 부모입니다. | 참조 객체. 예: "parent":{"ref":"myBaseObjectId"} | 
| pipelineLogUri | 파이프라인의 로그를 업로드할 S3 URI(예: 's3://BucketName/Key/')입니다. | 문자열 | 
| precondition | 또는 사전 조건을 정의합니다. 모든 사전 조건이 충족되기 전까지 데이터 노드에 "READY"가 표시되지 않습니다. | 참조 객체. 예: "precondition":{"ref":"myPreconditionId"} | 
| 대기열 | [Amazon Redshift만 해당] Amazon Redshift에서 쿼리 그룹 설정에 해당하며, 이것을 사용하여 쿼리 내 위치에 따라 동시 실행 활동을 할당하고 우선 순위를 정할 수 있습니다. Amazon Redshift는 동시 연결 수를 15로 제한합니다. 자세한 내용은 Amazon Redshift 데이터베이스 개발자 안내서의 [대기열에 쿼리 할당](https://docs.aws.amazon.com/redshift/latest/dg/cm-c-executing-queries.html)을 참조하세요. | 문자열 | 
| reportProgressTimeout | 원격 작업에서 reportProgress를 연속으로 호출하는 제한 시간입니다. 이 필드를 설정하면 지정된 기간 동안 진행 상황을 보고하지 않는 원격 활동은 중단된 것으로 간주하고 재시도할 수 있습니다. | Period | 
| retryDelay | 두 번의 재시도 사이의 제한 시간 간격입니다. | Period | 
| scheduleType | 일정 유형을 사용하여 파이프라인 정의에 있는 객체의 일정을 간격 시작 시점으로 또는 종료 시점으로 지정할 수 있습니다. 값은 `cron`, `ondemand` 및 `timeseries`입니다.<br /> `timeseries` 일정 조정은 각 간격이 종료될 때 인스턴스 일정이 지정됩니다.<br />`cron` 일정 조정은 각 간격이 시작될 때 인스턴스 일정이 지정됩니다.<br />`ondemand` 일정을 사용하면 활성화될 때마다 한 번씩 파이프라인을 실행할 수 있습니다. 이 경우 다시 실행하기 위해 파이프라인을 복제하거나 다시 생성할 필요가 없습니다. `ondemand` 일정을 사용하려면 기본 객체에서 지정해야 하며, 이것이 파이프라인의 객체에 지정된 유일한 `scheduleType`이어야 합니다. `ondemand` 파이프라인을 사용하려면 후속 실행마다 `ActivatePipeline` 작업을 호출합니다. | 열거 | 
| scriptArgument | 스크립트에 사용되는 변수의 목록입니다. 아니면 표현식을 스크립트 영역에 직접 입력할 수도 있습니다. 스크립트가 Amazon S3에 저장되는 경우에는 scriptArgument에 대한 복수 값 지정이 도움이 됩니다. 예: \#{format(@scheduledStartTime, "YY-MM-DD HH:MM:SS"}\\n\#{format(plusPeriod(@scheduledStartTime, "1 day"), "YY-MM-DD HH:MM:SS"} | 문자열 | 

 


****  

| 실행 시간 필드 | 설명 | 슬롯 유형 | 
| --- | --- | --- | 
| @activeInstances | 현재 예약되어 있는 활성 인스턴스 객체의 목록입니다. | 참조 객체. 예: "activeInstances":{"ref":"myRunnableObjectId"} | 
| @actualEndTime | 이 객체의 실행이 완료된 시간입니다. | DateTime | 
| @actualStartTime | 이 객체의 실행이 시작된 시간입니다. | DateTime | 
| cancellationReason | 이 객체가 취소된 경우의 cancellationReason입니다. | 문자열 | 
| @cascadeFailedOn | 객체 실패가 발생한 종속 체인에 대한 설명입니다. | 참조 객체. 예: "cascadeFailedOn":{"ref":"myRunnableObjectId"} | 
| emrStepLog | EMR 활동 시도 시에만 사용할 수 있는 EMR 단계 로그 | 문자열 | 
| errorId | 이 객체가 실패한 경우의 errorId입니다. | 문자열 | 
| errorMessage | 이 객체가 실패한 경우의 errorMessage입니다. | 문자열 | 
| errorStackTrace | 이 객체가 실패한 경우의 오류 스택 트레이스입니다. | 문자열 | 
| @finishedTime | 이 객체의 실행이 완료된 시간입니다. | DateTime | 
| hadoopJobLog | EMR 기반 활동 시도 시에만 사용할 수 있는 하둡 작업 로그. | 문자열 | 
| @healthStatus | 종료 상태에 도달한 마지막 객체 인스턴스의 성공 또는 실패를 반영하는 객체의 상태입니다. | 문자열 | 
| @healthStatusFromInstanceId | 종료 상태에 도달한 마지막 인스턴스 객체의 ID입니다. | 문자열 | 
| @healthStatusUpdatedTime | 상태가 마지막으로 업데이트된 시간입니다. | DateTime | 
| hostname | 작업 시도를 선택한 클라이언트의 호스트 이름입니다. | 문자열 | 
| @lastDeactivatedTime | 이 객체가 마지막으로 비활성화된 시간입니다. | DateTime | 
| @latestCompletedRunTime | 실행이 완료된 최근 실행 시간입니다. | DateTime | 
| @latestRunTime | 실행이 예약된 최근 실행 시간입니다. | DateTime | 
| @nextRunTime | 다음으로 예약된 실행 시간입니다. | DateTime | 
| reportProgressTime | 원격 활동에서 진행 상황을 보고한 가장 최근 시간입니다. | DateTime | 
| @scheduledEndTime | 객체의 일정 종료 시간 | DateTime | 
| @scheduledStartTime | 객체의 일정 시작 시간 | DateTime | 
| @상태 | 이 객체의 상태입니다. | 문자열 | 
| @version | 객체와 함께 생성된 파이프라인 버전입니다. | 문자열 | 
| @waitingOn | 이 객체가 대기 중인 종속 요소 목록에 대한 설명입니다. | 참조 객체. 예: "waitingOn":{"ref":"myRunnableObjectId"} | 

 


****  

| 시스템 필드 | 설명 | 슬롯 유형 | 
| --- | --- | --- | 
| @오류 | 잘못 형성된 객체를 설명하는 오류. | 문자열 | 
| @pipelineId | 이 객체가 속하는 파이프라인의 ID. | 문자열 | 
| @sphere | 객체의 타원 무늬는 수명 주기 내 위치를 나타냅니다. Component Objects는 Attempt Objects를 실행하는 Instance Objects를 야기합니다. | 문자열 | 