Xplenty : Google Sheet에서 데이터 검색
3805 단어 ETLGoogleSpreadSheetXplenty
Rest API 구성 요소 설정
인증(Authentication) 설정
미리 연결 화면에서 만든 Google Sheet 인증을 선택합니다.
![](https://s1.md5.ltd/image/53fb67ea153a9ffb92d7f438a40f412a.png)
URL 지정 방법
URL:https://sheets.googleapis.com/v4/spreadsheets/シートID/values:batchGet?ranges=セル範囲&majorDimension=ROWS
Google Sheet URL에서 시트 ID 가져오기
![](https://s1.md5.ltd/image/e51cee4c1e39eb851a3d545518c1433b.png)
예) A1 : G1000 (A 열의 1 행부터 G 열의 1000 행까지)
Response 설정
$..values[*]를 입력
![](https://s1.md5.ltd/image/4b6d3bf615fbb8afa630c11aaf8038ec.png)
필드 선택
![](https://s1.md5.ltd/image/fe5a8c62f68bbd072adf3064f4b7d80c.png)
획득한 JSON 플랫화
변환 1 : BAG 형에서 Tuple 형으로 변환
Select 구성 요소를 사용하고 BagToTuple 함수를 사용하여 Tuple 형식으로 변환
![](https://s1.md5.ltd/image/a80454ef070535dfdbfa6a45172a2923.png)
변환 2:각 열을 배열 번호를 지정해, 각각 취득한다
각각의 열을 배열 번호($0)를 지정해 취득함과 함께, Chararray 함수로 캐릭터 라인형으로 변환한다
![](https://s1.md5.ltd/image/1cd9f7dba7ffb0dae37dd809e4087062.png)
헤더 행을 필터로 제외
1행째에 헤더행이 포함되어 있는 경우, 필터로 제외한다 (Rest API측의 셀의 범위 지정으로 헤더행을 제외하는 방법도 있다.)
(예) id열에 「Id」라고 하는 문자가 포함되어 있지 않은 데이터만 추출
![](https://s1.md5.ltd/image/1be6de4f5ef2060b3c7d70f5564b9421.png)
로드할 구성 요소를 설정하고 작업을 실행하고 확인
마지막으로 데이터베이스, DWH, 스토리지 등에 로드하면 완료됩니다.
패키지 전체도
예) Snowflake가 로드 대상인 경우 다음과 같은 흐름이 됩니다.
![](https://s1.md5.ltd/image/9fde92e35e785da9ca3a330e93ab942e.png)
데이터가 올바르게 반영되었는지 확인
![](https://s1.md5.ltd/image/ad4424fdd70bc892768fa38f07f0d868.png)
Google Sheet에 쓰기도 가능
Xpelnty에서는 Select 구성요소에 Curl 요청을 작성하여 Google Sheet에 쓸 수 있습니다.
![](https://s1.md5.ltd/image/444bed7ce7e04188c611726d853ba646.png)
쓰기 요청 예:CCurl(CONCAT('https://sheets.googleapis.com/v4/spreadsheets/', '$spreadsheetId', '/values:batchUpdate'),'POST','{"Accept":"application/json"}',CONCAT('{"valueInputOption":"RAW","data":[{"range":"','$range','","majorDimension": "ROWS","values": [', BagToString(data, ','), ',]}]}'), '$connection_id')
위 요청에서 사용하는 변수 정보
마지막으로 데이터베이스, DWH, 스토리지 등에 로드하면 완료됩니다.
패키지 전체도
예) Snowflake가 로드 대상인 경우 다음과 같은 흐름이 됩니다.
![](https://s1.md5.ltd/image/9fde92e35e785da9ca3a330e93ab942e.png)
데이터가 올바르게 반영되었는지 확인
![](https://s1.md5.ltd/image/ad4424fdd70bc892768fa38f07f0d868.png)
Google Sheet에 쓰기도 가능
Xpelnty에서는 Select 구성요소에 Curl 요청을 작성하여 Google Sheet에 쓸 수 있습니다.
![](https://s1.md5.ltd/image/444bed7ce7e04188c611726d853ba646.png)
쓰기 요청 예:CCurl(CONCAT('https://sheets.googleapis.com/v4/spreadsheets/', '$spreadsheetId', '/values:batchUpdate'),'POST','{"Accept":"application/json"}',CONCAT('{"valueInputOption":"RAW","data":[{"range":"','$range','","majorDimension": "ROWS","values": [', BagToString(data, ','), ',]}]}'), '$connection_id')
위 요청에서 사용하는 변수 정보
$spreadsheetId
: GoogleSheet ID 지정 $connection_id
: Xplenty의 연결 ID 지정 (연결 화면에서 확인할 수 있습니다.)예: GOOGLESHEETS_CONNECTION_9215
$range
: 시트 이름과 셀 범위 지정.예: campaign!A1:N100000
Reference
이 문제에 관하여(Xplenty : Google Sheet에서 데이터 검색), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Azabu10ban/items/300fef4975e9ed625d55텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)