USER GUIDE · VERSION 1.0.0

RedshiftSQLab

Amazon Redshift専用 SQLエディタ / Windows 64bit

1. 起動と準備

  1. 配布ZIPを、書き込み可能なフォルダーへすべて展開します。
  2. Amazon Redshift ODBCドライバー(64bit)を別途インストールします。

    WindowsのODBC管理画面でDSNを作成する必要はありません。接続先・認証情報などは、RedshiftSQLab側の接続設定で管理します。

  3. RedshiftSQLab.exeを起動します。接続設定画面が開きます。
.NETランタイムは同梱されています。exeだけを取り出さず、runtimes・setting・licensesも一緒に配置してください。

2. 接続設定

接続設定:入力方式・認証方式を選び、接続先と認証情報を設定します。(クリックで拡大・×で閉じる)
  1. 接続名を入力し、「エンドポイント」または「JDBC URL」を選びます。
  2. インストール済みの64bit ODBCドライバーを選択します。
  3. 接続先を入力します。エンドポイント欄は、ホスト名・ポート・データベース名を含む形式に対応します。
  4. 「データベース認証」または「IAM認証」を選び、認証情報を入力します。IAM認証では「AWSプロファイルを使用」も選択できます。
  5. 必要に応じてSSL証明書検証・接続タイムアウトを設定します。
  6. 「保存」で設定を保存し、「接続テスト」で確認してから「接続」を押します。

JDBC URLを入力する場合も、実際の接続にはODBCを使用します。URL内の接続オプションや認証情報には対応していません。

接続一覧では最後に接続した保存設定を優先し、それがなければ最後に保存した設定を選択します。保存設定がなければ新規入力してください。接続テスト・接続処理中は経過時間を表示します。

3. SQLの編集・実行

メイン画面:左上がSQLエディタ、左下が実行結果・ログ、右側がオブジェクト情報です。(クリックで拡大・×で閉じる)
  1. 新規タブを作るか、SQLファイルを開きます。
  2. SQLを入力し、実行ボタンまたはCtrl+Enterを押します。選択範囲がある場合はその範囲、なければエディタ全体を実行します。
  3. 下部の「実行結果」「ログ」で結果と処理状況を確認します。

一度に実行できるSQLは1文です。複数文がある場合は、実行したい文だけを選択してください。更新SQLは自動コミットで実行します。

中止するときは、結果タブ右側の「中止」を押し、ドライバーの応答を待ちます。SQLエラーが起きても有効な接続は維持します。接続そのものが失われた場合は再接続してください。

中止要求は、更新データの取り消しを保証するものではありません。更新結果が不明な場合は、対象データを確認してから再実行してください。アプリは自動再実行しません。

右クリックメニューで「大文字に変換」「小文字に変換」「SQLの整形」を利用できます。入力補完では、通常の名前には引用符を付けず、予約語や大文字・空白などを含む名前には必要な引用符を付けます。

操作ショートカット
新規/開く/保存Ctrl+N / Ctrl+O / Ctrl+S
名前を付けて保存Ctrl+Shift+S
SQLを実行Ctrl+Enter
検索/置換Ctrl+F / Ctrl+H
選択中のタブを閉じるCtrl+W
元に戻す/やり直しCtrl+Z / Ctrl+Y

4. オブジェクト情報

スキーマと種類を選び、必要に応じてオブジェクト名で絞り込みます。一覧のオブジェクトを選択すると、列・分散/ソートキー・制約・参照制約・権限・プロパティを取得します。

取得できる情報は、接続ユーザーの権限と対象オブジェクトによって異なります。

検索タブ:検索文字列を入力し、前/次の候補へ移動します。(クリックで拡大・×で閉じる)

「編集」メニューから開き、「検索」「置換」タブを切り替えます。必要に応じて大文字/小文字を区別します。

6. 結果の出力・実行履歴

SQL実行履歴:SQLを確認し、新規タブへ挿入して再利用できます。(クリックで拡大・×で閉じる)

「ファイル」メニューから実行結果をCSVまたはExcelへ出力します。保存先の初期フォルダーはexeと同じ場所です。出力中は進捗画面の「中止」を使用できます。

「SQL」→「SQL実行履歴」で、実行開始・接続先名・処理時間・SQLを確認できます。「新規タブへ挿入して閉じる」で、選択したSQLを再利用できます。挿入だけでは実行されません。

7. S3の設定

S3の設定:認証方式を選び、接続して保存先フォルダーを設定します。(クリックで拡大・×で閉じる)
  1. 「SQL」→「S3の設定」を開き、「新規」で設定名を入力します。
  2. アクセスキー、またはAWSプロファイル/標準認証を選び、認証情報とリージョンを入力します。
  3. 「接続して保存先フォルダーを確認・設定」で接続し、保存先を選択します。
  4. 内容を確認して「保存」を押します。

認証情報を変更するときは先に切断します。シークレットキーは保存チェックを入れた場合のみ保存し、セッショントークンは保存しません。

フォルダー選択画面では、フォルダーとファイルをアイコンで区別します。右クリックから1件ずつ削除でき、削除前に確認画面を表示します。

8. CSVからインポート

Redshiftへ接続後、「SQL」→「CSVからインポート」を開きます。

  1. S3の選択:保存済みのS3設定を選びます。最後に取り込み成功した設定を初期選択し、該当設定がなければ先頭を選択します。
  2. COPY時の認証:「S3と同じ認証情報」または「IAMロール」を選びます。IAMロールではARNまたはdefaultを指定します。
  3. CSVの設定:UTF-8のCSVを選び、「1行目は列名」を設定します。先頭100行までプレビューします。
  4. インポート先:スキーマ・テーブルを選びます。CSVとテーブルの列数が一致した場合のみ、列対応一覧を表示して取り込みを許可します。対応は列名ではなく列順です。
  5. 取り込み方法:「追記」は既存データに追加し、「総入替」は既存データを削除してCSVへ入れ替えます。
  6. 「インポート開始」を押します。総入替では確認ダイアログを表示します。
CSV検証→ S3へ送信→ COPY→ 件数確認→ 確定
空欄の文字列は空文字、\NはNULLとして取り込みます。総入替は、対象テーブルの既存データ全体を入れ替える操作です。

検証したCSVとmanifestをS3へ送り、専用接続でCOPYを行います。CSV行数と取り込み件数が一致した場合のみ確定します。確定前の失敗・中止時はロールバックを試みます。確定中は中止できません。確定・ロールバックの結果が不明と表示された場合は、再実行前に対象テーブルを確認してください。

取り込みエラー時は、今回のCSVに対応する行番号・列名・型・エラー内容などをRedshiftから追加取得します(最大20件。権限等により取得できない場合があります)。

送信したCSV・manifestは成功・失敗・中止を問わず自動削除しません。「接続チェック」で作成する確認用ファイルも残ります。必要に応じて削除してください。接続チェックは一覧取得・書き込みの確認であり、Redshift側からのCOPY成功を保証しません。

9. 保存場所と配布物

exeのあるフォルダーを基準に保存します。

RedshiftSQLab-1.0.0-win-x64/
├─ RedshiftSQLab.exe
├─ readme.html                  このガイド
├─ img/                         ガイド用画像
├─ runtimes/win-x64/native/      SQLエディタ用DLL
├─ setting/redshift_syntax.json  標準SQL構文辞書
├─ licenses/                    ライセンス文書
├─ connection/                  利用開始後の設定保存先
└─ SQL/                         利用開始後の実行履歴保存先
場所内容
connection/*.rsconn保存した接続設定
connection/last-connection.dat最後に接続した設定
connection/*.rss3S3設定
connection/csv-import.json最後に取り込み成功したS3設定名・COPY認証方式等。秘密情報は保存しません。
SQL/history.binSQL実行履歴

接続設定・S3設定・履歴はWindowsユーザーに紐づく暗号化形式です。別のWindowsユーザーへの設定移行・変換機能はありません。

配布ZIPには個人設定・履歴を含めていません。再配布時もこれらを除外し、licensesは一緒に配布してください。通常のDLLと.NETはexeにまとめていますが、Scintilla.dll・Lexilla.dllは外部配置が必要です。

10. 制限と困ったとき

項目Ver 1.0.0の扱い
SQL実行1回1文、タイムアウト300秒。手動トランザクション・カーソル・セッション設定・CALLは未対応。バックスラッシュを含むSQLは実行できません。
実行結果ディスクへ保持します。取得・出力には保存領域の空き容量が必要です。
CSV取り込み正規化後の取り込み用CSVは1GiBまで。プレビューは最大100行・100列で、文字量によって表示行数が少なくなる場合があります。
Excel出力データ1,048,575行(ヘッダーを除く)、16,384列、1セル32,767文字まで。超える場合はCSV出力を使用してください。
SQL履歴最大100件。SQL1件262,144文字、合計1,048,576文字の上限もあります。

起動しない

ZIPをすべて展開したか、runtimes/win-x64/native内にScintilla.dllとLexilla.dllがあるか確認してください。exeのみの移動では起動できません。

接続できない

64bit ODBCドライバー、接続先、認証情報、SSL設定、ネットワークを確認してください。保存チェックを入れていない秘密情報は、再入力する必要があります。

SQLでエラーが出る

有効な接続は維持します。通信断等で接続自体が失われた場合は再接続してください。エラー詳細は編集不可のテキスト欄からCtrl+A・Ctrl+Cでコピーできます。本文はマスクしていないため、他者へ渡す前にキー・パスワード・ARN・接続先などが含まれていないか確認してください。

オブジェクト情報が少ない

接続ユーザーが参照できる範囲を表示します。権限がない項目は表示できない場合があります。

作者のWebサイト:https://kody.jp