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.)