Redash 데이터를 Google 스프레드시트에 자동으로 반영하는 방법
6598 단어 redashGoogle 스프레드시트
소개
Redash를 사용하여 취득한 데이터를 시계열로 비교하고 싶을 때, 지금까지는 수작업으로 하고 있었습니다.
수작업이라면 취득해 잊거나 등 수수하게 귀찮기 때문에, 이 작업을 자동화할 수 없을까 생각한 것이 계기입니다.
절차
Google 스프레드시트를 기반으로 하는 시트를 만들고 이 시트를 정기적으로 복제하여 데이터를 활용합니다.
1. Redash 데이터를 Google 스프레드시트에 맞게 조정
Google 스프레드시트에 전기하려는 Redash 데이터를 열고
Refresh Schedule를 설정합니다.Refresh Schedule 는 화면 왼쪽 하단(아래 그림의 빨간색 프레임 부분)의 파란색 문자로 설정할 수 있습니다.
2. Google 스프레드시트에서 Redash 데이터 로드
Google 스프레드시트를 열고
IMPORTDATA를 사용하여 Redash 데이터를 로드합니다.모든 셀에
=IMPORTDATA("RefreshのQuery API Key")를 입력하면 Redash 데이터가 Google 스프레드 시트에 반영됩니다.Refresh Query API Key를 얻는 방법
・・・ 를 클릭 Show API Key 를 클릭 Results in CSV format 하단의 URL을 복사하면 완료 

3. 데이터 로딩 작업을 자동화하는 스크립트 설정
Google 스프레드시트 툴바에서
ツール에서 スクリプトエディタ를 클릭합니다.
Apps Script가 표시되므로 이미지의 빨간색 프레임 부분에 다음 스크립트를 추가합니다.

function myFunction() {
var book = SpreadsheetApp.openById('[GoogleスプレッドシートのID]');
var sheet1 = book.getSheetByName('[シート1(コピー元のシート)]');
var date = Utilities.formatDate(new Date(), 'Asia/Tokyo', 'yyyyMMdd');
var lastRow = sheet1.getLastRow();
var lastColumn = sheet1.getLastColumn();
book.insertSheet(date,1);
var sheet2 = book.getSheetByName(date);
var newData = sheet1.getRange( 1 , 1 , lastRow , lastColumn ).getValues();
sheet2.getRange( 1 , 1 , lastRow , lastColumn ).setValues(newData);
}
이 스크립트에서는 다음을 수행합니다.
※ 화상에서는 이하의 실행 내용에 더해, 서식 설정도 카피하도록 기술하고 있습니다만, 여기에서는 할애합니다
4. 자동화된 작업 반복 설정
トリガーを追加를 클릭 (모달 시작) イベントのソースを選択 에서 時間主導型 선택 時間ベースのトリガーのタイプを選択 에서 모든 타이머 선택 매일 정시에 취득하고 싶었기 때문에, 이하와 같은 설정으로 했습니다.
時間ベースのトリガーのタイプを選択 : 날짜 기반 타이머 時刻を選択 :오전 10시~11시※ Redash의 실행 타이밍과 덮이지 않도록 1 시간 늦은 실행 시간으로 설정
이상입니다.
이제 Redash 데이터를 Google 스프레드시트에 자동으로 가져올 수 있습니다.
끝까지 읽어 주셔서 감사합니다.
신세를 낸 사이트
Reference
이 문제에 관하여(Redash 데이터를 Google 스프레드시트에 자동으로 반영하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yamaking/items/aa6ef37ec0f2b0b3de3d텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)