Upgrade to Pro — share decks privately, control downloads, hide ads and more …

7/21(火) クローズドな環境でも楽々構成!異種RDBMS/NoSQLのリアルタイム連携『G...

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for Climb Climb
July 21, 2026

7/21(火) クローズドな環境でも楽々構成!異種RDBMS/NoSQLのリアルタイム連携『Gluesync』を徹底解説

下記Webセミナーのスライドです。
https://www.climb.co.jp/soft/webseminar/2026/0721/

GluesyncはRDBMSやNoSQLで異種間レプリケーションを提供しています。
ただ、コンテナベースのアプリケーションであるため、DockerやKubernetesに慣れていないと分かりづらい部分が多く、敬遠されることもありました。しかし、現在はDockerのインストールまで含む、専用のWindowsインストーラやスクリプトを提供しており、お客様ご自身はコンテナ環境を意識しなくとも導入が可能になっています。

加えて、RDBMS環境ですと個人情報や機密保持のためにオフラインで利用されているケースも多く、インターネット接続できない環境への導入が必須という場合もあります。このためにGluesyncはオフラインインストールとアップデートにも対応しました。

今回はこのようなクローズドな環境での利用を想定し、WindowsマシンへのオフラインインストールとGluesync自体の保護を行うためのバックアップとリストアに関してデモンストレーションを予定しています。

また、バージョンアップに伴いWeb UI自体の大幅な改善、スマートアラートしきい値、モジュール管理機能など、多くのアップデートがありますので、それらも含めて、可能な限り解説予定です。

Avatar for Climb

Climb

July 21, 2026

More Decks by Climb

Other Decks in Technology

Transcript

  1. Gluesync 2の特徴 • リアルタイム変更追跡:CDC • • コンテナで動作 • • データ集約/変換/フィルタ

    オンプレ/クラウド Web UIとAPI Web UIから簡単管理 • 外部モジュールやSDKで機能拡充 •
  2. Core Hubと 接続プラグイン Core Hub • プラットフォームごとに カスタマイズ • Web

    UI/Rest APIで構成 • 接続と変更追跡の最適化 • データ処理 • 冗長化/負荷分散 (coming soon)
  3. 構成と管理 • 各種コンテナ環境にデプロイ可能 • • • • • • •

    Docker Podman Kubernetes OpenShift Amazon EKS Google Kubernetes Engine Azure Kubernetes Service
  4. システム要件 最小 推奨(特にWindows) CPU 4 vCPUまたはコア 8 vCPUまたはコア RAM 8

    GB 16 GB ディスク 100 GB 200 GB ネットワーク • • • • .docker.io .docker.com *.maven.org api.backoffice.molo17.com
  5. オフ • コンテナランタイムの事前インストール • • • <kit-id>-trial-kit.zip オフラインインストーラースクリプト(MOLO17サイト) • •

    • gluesync-platform-windows-amd64.tar.gz gluesync-platform-linux-amd64.tar.gz キットファイル(評価案内メールのURLから) • • Docker EngineとDocker Compose 管理者アクセス プラットフォームアーカイブ(MOLO17サイト) • • • ストール docker-installer-windows-offline.ps1 docker-installer-linux-offline.sh 同ディレクトリに配置し、スクリプトを実行
  6. オフ • アッ デート アップデートパッケージ(MOLO17サイト) • • update-YYYY-MM-DD-ga-windows.tar.gz update-YYYY-MM-DD-ga-linux-amd64.tar.gz •

    アップデートスクリプト(インストールディレクトリ) • • C:¥Program Files¥Gluesync¥update.ps1 • /opt/gluesync/update.sh インストールディレクトリに アップデートパッケージを配置しスクリプトを実行
  7. 構成のバックアッ とリストア:Automator • • • 環境のクローン作製 災害復旧 変更管理 • パイプライン構成の

    全体または一部の エクスポートとインポート スキーマ情報の一括変更 •
  8. 柔軟な同期構成を実現する豊富な機能 • CDC/スナップショット共通機能 • • • • • • •

    • • • バルクロード フィルタリング 論理PK テクニカルフィールド フィールド関数 ユーザー定義関数(UDF) チェーン カスタムドキュメントキー Parquetファイルサポート TTL (Time To Live)タグ • スナップショット(全件)タスク • • • • • • Upsert(既存データとのマージ) Truncate+Insert ターゲットテーブルの選択的削除 並列書き込み処理 並列読み込み処理 CDC • • • 再帰保護(双方向同期) ビフォーアフターイメージ 特定操作のみの同期
  9. 運用や構成を簡単にする補助機能 • パイプライン/エンティティ構成 • • • • • • •

    • • オブジェクトブラウザ フィールドエディタ スキーマロック ターゲットテーブル作成 グループ 開始と一時停止 メンテナンスモード Chronos(スケジュール実行) Automator+ Bootstrapper (YAMLでの構成 エクスポート/インポート) • 運用補助 • • • • • • • • • • エンティティダッシュボード クエリスタジオ 通知ハブ Email/Webhook通知 スマートアラート Prometheus+Grafana ライセンス管理 Conductor(モジュール管理) RBACとSSO(OIDC認証) その他 • REST API • SDK(Python、Node.js)
  10. 柔軟な同期構成を実現する豊富な機能 • CDC/スナップショット共通機能 • • • • • • •

    • • • バルクロード フィルタリング 論理PK テクニカルフィールド フィールド関数 ユーザー定義関数(UDF) チェーン カスタムドキュメントキー Parquetファイルサポート TTL (Time To Live)タグ • スナップショット(全件)タスク • • • • • • Upsert(既存データとのマージ) Truncate+Insert ターゲットテーブルの選択的削除 並列書き込み処理 並列読み込み処理 CDC • • • 再帰保護(双方向同期) ビフォーアフターイメージ 特定操作のみの同期
  11. バルクロード • IBM i/PostgreSQL CSVへエクスポートし、ステージングスキーマ内でCOPYステートメントにより取り込み • Oracle アレイバインディング使用、バインディングが不可能な場合は、OracleBulkCopyを使用 • •

    SQL Server:SqlBulkCopy使用 • Snowflake CSVをアップロードし、COPY INTO … FILE_FORMAT=(NULL_IF=(‘NULL’))でロード • Amazon Redshift CSVをS3へアップロードし、並列取り込みのためにCOPYコマンドを使用 • Google BigQuery ParquetをGCSへアップロードし、アトミックな更新のために WRITE_TRUNCATEでロードジョブをトリガーします。 • 等々 MySQL 一時的なステージングテーブへCSVから生成された複数行INSERT文により取り込み
  12. スナッ ショットだけでなくCDCでも ① 収集:CDCイベントをキャプチャ ② 組み合わせ:バッファ上で同一PKに対する変更をマージ ③ ステージ:バルクロードで ステージングテーブルへロード トランザクションログ

    ④ エンリッチ: ソースログに含まれていない 列をバックフィル ステージングテーブル ⑤ 適用:可能な限り Delete+Insertで適用、 不要になったステージング テーブルなどを切り捨て
  13. テクニカルフィールド • 同期時に使用されるID情報やデータベース固有の情報を同期対象に 対象フィールド名 データ型 説明 値の例 _TRANSACTION_ID VARCHAR /

    TEXT ソース上のトランザクションID HABrg0sIqzHfVOGdz… _TRANSACTION_TIMESTAMP BIGINT / DATETIME ソース上でトランザクションがコミットされたタイムスタンプ(エポック) 1717604307000 _TRANSACTION_OPERATION CHAR(1) / VARCHAR イベントをトリガーしたCRUD操作の種類: I= 挿入、U= 更新、D= 削除、S= スナップショット / 初期ロード U _TRANSACTION_USER VARCHAR ソース上でトランザクションを実行したユーザー app_sales_prod _RRN_COLUMN BIGINT IBM i (AS400) ソースでの相対レコード番号 1234567 _RECEIVER_LIBRARY VARCHAR IBM i (AS400) ソースでのジャーナルレシーバーを含むライブラリ QGPL _RECEIVER_NAME VARCHAR IBM i (AS400) ソースでのジャーナルレシーバーの名前 RCV0001 _SEQUENCE_NUMBER BIGINT IBM i (AS400) ソースでのジャーナルシーケンス番号 987654321 _ROWID VARCHAR Oracle CDCソースでのOracleデータベース内の一意の物理行識別子 AAAB12AADAAAAwPAAA
  14. フィールド関数 • • • • 日付/時刻<>文字列などの各種変換 テキストのトリム ローカルタイムスタンプ 各種固定値 •

    各種個人情報のマスクまたはランダム化 • • • • クレジットカード番号 メールアドレス 電話番号 IBAN
  15. ユーザー定義関数(UDF) • Javaのスクリプトを定義 • CDCにおける以下 イベントをフック ※スナップショットはInsert • • •

    • Insert Update Delete 更新前後のデータを受け取り、 ターゲットに反映するデータをスクリプトで指定可能
  16. 柔軟な同期構成を実現する豊富な機能 • CDC/スナップショット共通機能 • • • • • • •

    • • • バルクロード フィルタリング 論理PK テクニカルフィールド フィールド関数 ユーザー定義関数(UDF) チェーン カスタムドキュメントキー Parquetファイルサポート TTL (Time To Live)タグ • スナップショット(全件)タスク • • • • • • Upsert(既存データとのマージ) Truncate+Insert ターゲットテーブルの選択的削除 並列書き込み処理 並列読み込み処理 CDC • • • 再帰保護(双方向同期) ビフォーアフターイメージ 特定操作のみの同期
  17. 柔軟な同期構成を実現する豊富な機能 • CDC/スナップショット共通機能 • • • • • • •

    • • • バルクロード フィルタリング 論理PK テクニカルフィールド フィールド関数 ユーザー定義関数(UDF) チェーン カスタムドキュメントキー Parquetファイルサポート TTL (Time To Live)タグ • スナップショット(全件)タスク • • • • • • Upsert(既存データとのマージ) Truncate+Insert ターゲットテーブルの選択的削除 並列書き込み処理 並列読み込み処理 CDC • • • 再帰保護(双方向同期) ビフォーアフターイメージ 特定操作のみの同期
  18. INSERTとUPSERT • INSERT • • ターゲットを自動Truncateまたは空であることが前提 全レコードをInsertで処理するため高速 Insert Insert Insert

    • UPSERT※バルクロードの有無で動作が少々異なります。 • • ターゲットに既存データが含まれる場合も安全に処理 既存データをチェックし、一致する場合、マージするため低速 Insert Merge Merge
  19. 並列での読み取りと書き込み • 読み取りの並列化 • 単一カラムの値を基に分割 • • • • •

    分割の仕方を調整可能 1~10分割を指定可能 書き込みの並列化 • • • 数値カラム 日付、タイムスタンプカラム 読み取ったデータを並列書き 込み 1~8並列を指定可能 ソースとターゲットの パフォーマンス差に注意
  20. 柔軟な同期構成を実現する豊富な機能 • CDC/スナップショット共通機能 • • • • • • •

    • • • バルクロード フィルタリング 論理PK テクニカルフィールド フィールド関数 ユーザー定義関数(UDF) チェーン カスタムドキュメントキー Parquetファイルサポート TTL (Time To Live)タグ • スナップショット(全件)タスク • • • • • • Upsert(既存データとのマージ) Truncate+Insert ターゲットテーブルの選択的削除 並列書き込み処理 並列読み込み処理 CDC • • • 再帰保護(双方向同期) ビフォーアフターイメージ 特定操作のみの同期
  21. ビフォーアフター メージ • RDBMSの場合 • • • トランザクションログ PK 前

    後 • • NoSQLの場合 • • • フィールドレベルで比較 変更されたカラムのみをターゲットへ 同期対象でないカラムへの更新は 自動スキップ 変更前後の値が同一のレコードは 自動スキップ レコードレベルでの比較 変更前後の値が同一のレコードは 自動スキップ 無効化も可能
  22. 運用や構成を簡単にする補助機能 • パイプライン/エンティティ構成 • • • • • • •

    • • オブジェクトブラウザ フィールドエディタ スキーマロック ターゲットテーブル作成 グループ 開始と一時停止 メンテナンスモード Chronos(スケジュール実行) Automator+ Bootstrapper (YAMLでの構成 エクスポート/インポート) • 運用補助 • • • • • • • • • • エンティティダッシュボード クエリスタジオ 通知ハブ Email/Webhook通知 スマートアラート Prometheus+Grafana ライセンス管理 Conductor(モジュール管理) RBACとSSO(OIDC認証) その他 • REST API • SDK(Python、Node.js)
  23. テーブル構造が異なる場合は? • スキーマのロック解除 • • デフォルトでは同一構成の前提でロック ロック解除すれば • 型の変更 •

    列の追加、削除(テクニカルフィールドの導入など) • フィールド関数やユーザ定義関数UDFの利用
  24. 運用や構成を簡単にする補助機能 • パイプライン/エンティティ構成 • • • • • • •

    • • オブジェクトブラウザ フィールドエディタ スキーマロック ターゲットテーブル作成 グループ 開始と一時停止 メンテナンスモード Chronos(スケジュール実行) Automator+ Bootstrapper (YAMLでの構成 エクスポート/インポート) • 運用補助 • • • • • • • • • • エンティティダッシュボード クエリスタジオ 通知ハブ Email/Webhook通知 スマートアラート Prometheus+Grafana ライセンス管理 Conductor(モジュール管理) RBACとSSO(OIDC認証) その他 • REST API • SDK(Python、Node.js)
  25. Chronos(スケジュール実行) • • • • • • メンテナンスモード切替 一時停止 CDC開始

    スナップショットのみ スナップショット後、CDC開始 スナップショット時のTRUNCATE有無 • UIベースの日次/週次スケジュール設定 • CRON形式での柔軟なスケジュール設定 • パイプライン、グループ、エンティティ単位
  26. 運用や構成を簡単にする補助機能 • パイプライン/エンティティ構成 • • • • • • •

    • • オブジェクトブラウザ フィールドエディタ スキーマロック ターゲットテーブル作成 グループ 開始と一時停止 メンテナンスモード Chronos(スケジュール実行) Automator+ Bootstrapper (YAMLでの構成 エクスポート/インポート) • 運用補助 • • • • • • • • • • エンティティダッシュボード Prometheus+Grafana クエリスタジオ 通知ハブ Email/Webhook通知 スマートアラート Conductor(モジュール管理) RBACとSSO(OIDC認証) ライセンス管理 その他 • REST API • SDK(Python、Node.js)
  27. 運用や構成を簡単にする補助機能 • パイプライン/エンティティ構成 • • • • • • •

    • • オブジェクトブラウザ フィールドエディタ スキーマロック ターゲットテーブル作成 グループ 開始と一時停止 メンテナンスモード Chronos(スケジュール実行) Automator+ Bootstrapper (YAMLでの構成 エクスポート/インポート) • 運用補助 • • • • • • • • • • エンティティダッシュボード Prometheus+Grafana クエリスタジオ 通知ハブ Email/Webhook通知 スマートアラート Conductor(モジュール管理) RBACとSSO(OIDC認証) ライセンス管理 その他 • REST API • SDK(Python、Node.js)