[Oracle Cloud] Data Integration으로 코드를 변환해 보았습니다.
3558 단어 oraclecloudoci
소개
Oracle Cloud Integration에는 ETL 기능을 제공하는 Data Integration 서비스가 있습니다. Data Integration은 다양한 데이터 자산에서 데이터를 가져와 데이터를 정리, 변환, 재형성 및 변환하는 등 ETL 처리가 가능한 완전 관리형 서비스입니다. 서버 관리가 필요 없으며 GUI에서 시각적으로 이해하기 쉽게 ETL 처리를 표현할 수 있습니다.
이번에는 데이터 변환 방법을 간략하게 소개합니다. 다음 데이터 변환을 시도합니다.
데이터 변환 전 : name과 userrank가 있습니다.
name,userrank
sugiyama,bronze
tanaka,silver
kimura,gold
satou,platinum
데이터 변환 후 : userrank에 따라 userrankid를 부여합니다. bronze는 1, silver는 2, gold는 3, platinum은 4의 코드를 부여합니다.
name,userrank,userrankid
sugiyama,bronze,1
tanaka,silver,2
kimura,gold,3
satou,platinum,4
데이터 준비
Object Storage에 Input용 파일을 업로드합니다.
데이터 플로우 생성
업로드한 csv 파일을 받아 데이터 변환을 수행하고 Object Storage로 출력하는 Data Flow를 생성합니다.
csv 파일을 받는 부분입니다.
데이터 변환을 실시하는 부분입니다. Expression Operator에서 새로운 열을 정의합니다.
CASE WHEN 절에서 변환 조건을 포함합니다.
CASE WHEN EXPRESSION_1.SOURCE_1.userrank='bronze' THEN 1
ELSE CASE WHEN EXPRESSION_1.SOURCE_1.userrank='silver' THEN 2
ELSE CASE WHEN EXPRESSION_1.SOURCE_1.userrank='gold' THEN 3
ELSE CASE WHEN EXPRESSION_1.SOURCE_1.userrank='platinum' THEN 4
ELSE 999
END
END
END
END
데이터 탭에서 추가한 USERRANKID
을 실시간으로 확인할 수 있습니다. CASE WHEN 절에 지정된 조건에서 올바르게 작동하고 있음을 알 수 있습니다. Data Flow 편집 중에 실시간으로 확인할 수 있는 것이 좋네요.
데이터 변환 후에 Object Storafe에 출력하는 부분입니다.
마지막으로 Validate를 눌러 오류가 없는지 확인한 다음 Save and Close로 닫습니다.
동작 확인
작성한 Data Flow의 동작을 확인합시다. Integration Task를 작성하고 Application에 Publish한 후 Run을 실행합니다.
Task Runs에서 성공적으로 완료되었음을 알 수 있습니다.
Output Bucket에 데이터 변환 파일이 업로드되었습니다.
파일 내용입니다. 성공적으로 USERRANKID
변환되었습니다.
name,userrank,USERRANKID
sugiyama,bronze,1
tanaka,silver,2
kimura,gold,3
satou,platinum,4
Reference
이 문제에 관하여([Oracle Cloud] Data Integration으로 코드를 변환해 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/sugimount/items/0133fea33d5d5d1ae589
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
name,userrank
sugiyama,bronze
tanaka,silver
kimura,gold
satou,platinum
name,userrank,userrankid
sugiyama,bronze,1
tanaka,silver,2
kimura,gold,3
satou,platinum,4
Object Storage에 Input용 파일을 업로드합니다.
데이터 플로우 생성
업로드한 csv 파일을 받아 데이터 변환을 수행하고 Object Storage로 출력하는 Data Flow를 생성합니다.
csv 파일을 받는 부분입니다.
데이터 변환을 실시하는 부분입니다. Expression Operator에서 새로운 열을 정의합니다.
CASE WHEN 절에서 변환 조건을 포함합니다.
CASE WHEN EXPRESSION_1.SOURCE_1.userrank='bronze' THEN 1
ELSE CASE WHEN EXPRESSION_1.SOURCE_1.userrank='silver' THEN 2
ELSE CASE WHEN EXPRESSION_1.SOURCE_1.userrank='gold' THEN 3
ELSE CASE WHEN EXPRESSION_1.SOURCE_1.userrank='platinum' THEN 4
ELSE 999
END
END
END
END
데이터 탭에서 추가한 USERRANKID
을 실시간으로 확인할 수 있습니다. CASE WHEN 절에 지정된 조건에서 올바르게 작동하고 있음을 알 수 있습니다. Data Flow 편집 중에 실시간으로 확인할 수 있는 것이 좋네요.
데이터 변환 후에 Object Storafe에 출력하는 부분입니다.
마지막으로 Validate를 눌러 오류가 없는지 확인한 다음 Save and Close로 닫습니다.
동작 확인
작성한 Data Flow의 동작을 확인합시다. Integration Task를 작성하고 Application에 Publish한 후 Run을 실행합니다.
Task Runs에서 성공적으로 완료되었음을 알 수 있습니다.
Output Bucket에 데이터 변환 파일이 업로드되었습니다.
파일 내용입니다. 성공적으로 USERRANKID
변환되었습니다.
name,userrank,USERRANKID
sugiyama,bronze,1
tanaka,silver,2
kimura,gold,3
satou,platinum,4
Reference
이 문제에 관하여([Oracle Cloud] Data Integration으로 코드를 변환해 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/sugimount/items/0133fea33d5d5d1ae589
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
CASE WHEN EXPRESSION_1.SOURCE_1.userrank='bronze' THEN 1
ELSE CASE WHEN EXPRESSION_1.SOURCE_1.userrank='silver' THEN 2
ELSE CASE WHEN EXPRESSION_1.SOURCE_1.userrank='gold' THEN 3
ELSE CASE WHEN EXPRESSION_1.SOURCE_1.userrank='platinum' THEN 4
ELSE 999
END
END
END
END
작성한 Data Flow의 동작을 확인합시다. Integration Task를 작성하고 Application에 Publish한 후 Run을 실행합니다.
Task Runs에서 성공적으로 완료되었음을 알 수 있습니다.
Output Bucket에 데이터 변환 파일이 업로드되었습니다.
파일 내용입니다. 성공적으로
USERRANKID
변환되었습니다.name,userrank,USERRANKID
sugiyama,bronze,1
tanaka,silver,2
kimura,gold,3
satou,platinum,4
Reference
이 문제에 관하여([Oracle Cloud] Data Integration으로 코드를 변환해 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/sugimount/items/0133fea33d5d5d1ae589텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)