Slide 1

Slide 1 text

株式会社クライム https://www.climb.co.jp/ オンプレ/クラウド、 RDBMS/NOSQLの垣根を超える! 新時代のデータ連携・活用とは Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 2

Slide 2 text

クラウドDBの利用拡大 Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 3

Slide 3 text

NoSQLの活用拡大 Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 4

Slide 4 text

データ連携の必要性 •各部門のデータをそれぞれのシステムで活用 • データレイクを構成し、統合分析を実現 •データの移行、冗長化、バックアップ Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 5

Slide 5 text

連携の課題 独自仕様 • 接続方式、ドライバ • ライセンス • 変更追跡方法 ダウンタイム • エクスポートから インポートまで 文字コード • 文字化け • サイズの違い データ構造の違い • 構造化<>半構造化 • データモデリング Copyright(C)2024 Climb Inc. All Rights Reserved. あ あ

Slide 6

Slide 6 text

課題を解決する2つのツール •Gluesync RDBMS<>NoSQL特化、コンテナ、開発向け • Syniti Replicate 異種RDBMS特化、Windows、使いやすさ Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 7

Slide 7 text

Gluesync 1.x NoSQL NoSQL SQL SQL NoSQL NoSQL Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 8

Slide 8 text

クラウドネイティブで動作 • DockerやKubernetes上で動作 • オンプレ、クラウド問わず実行可能 Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 9

Slide 9 text

クラウドネイティブで動作 • ステートレスなコンテナで提供 • 処理したトランザクションIDなどはソース、ターゲットで保持 GS管理テーブル GS管理ドキュメント Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 10

Slide 10 text

変更追跡でリアルタイム同期 • Gluesync Data Capture機能によるトリガー方式 • DB2 LUW、Maria DB、MySQL、Sybase • Oracle、PostgreSQL(ネイティブでも対応) • データベースのネイティブ機能 • IBM i(AS/400):IBM i ジャーナル API • SQL Server:CDC技術または変更追跡技術 • Oracle:Xstream API • PostgreSQL:レプリケーション スロット テクノロジ

Slide 11

Slide 11 text

変更追跡でリアルタイム同期 • NoSQLのネイティブ機能 • DynamoDB:DynamoDB Streams • MongoDB:Change Streams機能 • Aerospike :ESPコネクタ • Couchbase: Eventing サービス • Apache HBase:scan機能

Slide 12

Slide 12 text

対応RDBMS/NoSQL:SQL>NoSQL SQL NoSQL DB2 LUW IBM i (AS/400) MariaDB Microsoft SQL Server MySQL Oracle database PostgreSQL Sybase Aerospike AWS S3 Couchbase DynamoDB Google Cloud Storage Kafka MongoDB RavenDB Solace PubSub+ Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 13

Slide 13 text

対応RDBMS/NoSQL:NoSQL>SQL NoSQL SQL Aerospike Couchbase DynamoDB HBase MongoDB DB2 MariaDB Microsoft SQL Server MySQL Oracle database PostgreSQL Sybase Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 14

Slide 14 text

対応RDBMS/NoSQL:NoSQL>NoSQL NoSQL NoSQL Couchbase DynamoDB HBase MongoDB Aerospike AWS S3 Couchbase DynamoDB Google Cloud Storage MongoDB RavenDB Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 15

Slide 15 text

JSON形式の構成ファイル { "sourceHost": "192.168.33.15", "sourcePort": "1433", "sourceName": "demo", "sourceUsername": "gs-user", "sourcePassword": "P@ssword123", "mssql": { "temporaryTableNamePrefix": "gs", "statePreservationTableNamePrefix": "gs" }, "targetHost": "192.168.33.15", "targetPort": "8091", "targetName": "demo", "targetUsername": "gs-user", "targetPassword": "password", "couchbase": { "useCollections": true }, "sourceEntities": { "tableSync": { "schema": "dbo", "table": "DRIVERS", "type": "drivers", "scope": "data" } }, "sourceChangeRetention": 5, "copySourceEntitiesAtStartup": true, "maxItemsCountPerTransaction": 100, "maxMigrationItemsCountPerIteration": 20000 } • ソース/ターゲット接続設定 • エンティティ設定 • 同期対象のテーブル • データモデリング • 同期設定 • 変更履歴の保持 • 管理用テーブルのプレフィックス • 最大同時処理数 Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 16

Slide 16 text

柔軟なデータモデリング •テーブルのレコードをそのままドキュメントへ •SQLクエリ結果をドキュメントへ •ネスト構造へデータモデリング SQLクエリ Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 17

Slide 17 text

テーブルをそのままドキュメントへ "sourceEntities": { "tableSync": { "schema": "dbo", "table": "DRIVERS", "type": "drivers", "scope": "data" } } Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 18

Slide 18 text

SQLクエリ結果をドキュメントへ "sourceEntities": { "INNER_JOIN": { "type": "INNER_JOIN", "schema": "dbo", "scope": "data", "query": "SELECT o.ID, o.注文番号, o.注文日時, c. 氏名 as お客様名, c.ふりがな, c.メールアドレス, c.電話番号, a.都道府県 + a.市区町村 + a.番地 as 送り先住所, d.姓 + ' ' + d.名 as 担当ドライバー FROM dbo.注文ヘッダー o INNER JOIN dbo.顧客情報 c on c.ID = o.顧客ID INNER JOIN dbo. 住所 a on a.ID = o.住所ID INNER JOIN dbo.ドライバー d on d.ID = o.ドライバーID where o.ステータス = 1" } }, Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 19

Slide 19 text

SQLクエリ結果をドキュメントへ { "ID": 111, "注文番号": "SO-97411111", "注文日時": "2021-10-30T02:06:03", "お客様名": "クライム 太郎", "ふりがな": "くらいむ たろう", "メールアドレス": "[email protected]", "電話番号": "03-9336-3660", "送り先住所": "東京都中央区日本橋蛎殻町1丁目36−7蛎殻町千葉ビル4F", "担当ドライバー": "クライム配達員", "scope": "data", "type": "INNER_JOIN" } Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 20

Slide 20 text

対応コマンド SQLコマンド Gluesyncの互換性 INNER JOIN OUTER JOIN LEFT JOIN WHERE foo + ' ' + barのような文字列連結 * + - /のような算術演算子 UNION 複数エンティティで同じ宛先(type とscope)を使用すると同様の結果 を得られます。 Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 21

Slide 21 text

ネスト構造へのモデリング Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 22

Slide 22 text

"sourceEntities": { "order": { "type": "order", "scope": "data", "dataModeling": [ { "level": 1, "name": "注文", "tables": [ { "table":"dbo.注文ヘッダー", "keys": { "ID":"oh_ID" }, "fields": { "ID":"oh_ID", "注文番号": "注文番号", …省略… "level": 2, "name": "注文詳細", "tables": [ { "table": "dbo.注文詳細", "keys": { "ID": "o_ID" }, "fields": { "ID": "o_ID", "数量": "数量", "注釈": "詳細注釈" }, "alias": "o", "join": { "with": "dbo.注文ヘッダー" } }, { "table": "dbo.商品情報", "keys": { "ID": "a_ID" }, "fields": { "ID": "a_ID", "商品名": "商品名", "説明": "商品説明" }, "alias": "a", "join": { "with": "dbo.注文詳細" } } ] } ] } } Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 23

Slide 23 text

ネスト構造へのモデリング { "oh_ID": 107, "注文番号": "SO-!IAMNEW!-03", …省略… "注文詳細": [ { "o_ID": 1010, "数量": 10, "詳細注釈": "コンテナでデプロイ", "a_ID": 5, "商品名": "グルーシンク", "商品説明": "主要RDBMSとNoSQL間でリアルタイムなクラウドネイティブ データレプリケーションを実現" }, {…省略…} ], "scope": "data", "type": "order" } Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 24

Slide 24 text

監視、ログ、アラート • Prometheus互換のメトリクスで監視可能 • Logbackでロギング、メールアラート • Java のロギングライブラリ Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 25

Slide 25 text

Gluesync 2.0 Copyright(C)2024 Climb Inc. All Rights Reserved. • ステートレス>ステートフルへ • HA構成対応 • Web GUI(コントロールプレーン)の追加 • SQL > SQL対応 • プラットフォーム対応の追加 • ClickHouse • SingleStore • Snowflake • Vertica • リリース後追加予定 • ScyllaDB • Cassandra • CosmosDB • Azure Data Lake • Redis • Google Big Query 等々

Slide 26

Slide 26 text

Syniti Replicate SQL SQL Copyright(C)2024 Climb Inc. All Rights Reserved. • Windowsへインストール • ローカルのSQL Server Expressにメタデータを保持 • 日本語ローカライズ済みGUI • 変更追跡 • ネイティブまたはトリガー方式 • 双方向同期

Slide 27

Slide 27 text

サポートするデータベース データベース リフレッシュ ミラーリング シンクロ ソース ターゲット ソース ターゲット Actian Vector ● ● ● Amazon Aurora MySQL ● ● ● ● ● Amazon Aurora PostgreSQL ● ● ● ● ● Amazon RDS for MariaDB ● ● ● ● ● Amazon RDS for MySQL ● ● ● ● ● Amazon RDS for Oracle ● ● ● ● ● Amazon RDS for PostgreSQL ● ● Amazon RDS for SQL Server ● ● ● ● Amazon Redshift ● ● ● Greenplum ● ● ● Gupta SQLBase ● ● ● ● ● IBM Db2 LUW ● ● ● ● ● IBM Db2 for i ● ● ● ● ● IBM Db2 for z/OS ● ● ● ● ● Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 28

Slide 28 text

サポートするデータベース データベース リフレッシュ ミラーリング シンクロ ソース ターゲット ソース ターゲット IBM Informix ● ● ● ● ● IBM PureData ● ● ● ● Ingres ● ● ● MariaDB ● ● ● ● ● Microsoft Access ● ● ● Microsoft Azure SQL Database ● ● ● ● ● Microsoft Azure Synapse Analytics ● ● Microsoft SQL Server ● ● ● ● ● Microsoft SQL Server CE ● ● ● ● ● MySQL ● ● ● ● ● Oracle ● ● ● ● ● PostgreSQL ● ● ● ● ● Progress OpenEdge ● ● ● ● Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 29

Slide 29 text

サポートするデータベース データベース リフレッシュ ミラーリング シンクロ ソース ターゲット ソース ターゲット SAP ECC ● ● SAP HANA ● ● ● ● ● SAP NetWeaver Data Extraction ● ● SAP S/4 HANA ● ● SAP Sybase ASE ● ● ● ● ● SAP Sybase IQ ● ● ● ● ● SAP Sybase SQL Anywhere ● ● ● ● ● Snowflake ● ● ● solidDB ● ● ● Teradata ● ● ● Tibero ● ● ● Vertica ● ● ● Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 30

Slide 30 text

• 自動で適切なデータ型を選定 • サイズ、PK、NOT NULLをそのまま引継ぐ • ソースのテーブル構成を元にSynitiが自動でクエリを作成 CREATEクエリ自動生成 テーブル構成抽出 自動で設定が可能! ※編集も可 CREATE発行 ターゲットへテーブル作成 Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 31

Slide 31 text

1234 関数を使用しマッピング可能 クライム Climb 12 1234 クライム Climb 00012 2020/3/26 Trim() ユーザ関数 Now() スクリプト: VB, C# ・条件付きレプリケーション 例:値が~を満たすとき 例:更新のみ反映、登録は無視 ・テーブルの結合 ・ユーザ関数の定義 API: VB, C#, C++ ・バッチ処理、パラメータ取得 DB移行の複雑なデータ操作を簡単に! Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 32

Slide 32 text

• ソース/ターゲットテーブル間の不一致を検出 • ソース→ターゲットで整合機能もあり • 定期な実行も可能 レプリケーション結果比較、整合機能 Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 33

Slide 33 text

✓日本語ローカライズ済み ✓レプリケーション進捗モニター ✓メール通知(アラート) ✓設定情報バックアップ・リストア 運用も簡単! Copyright(C)2024 Climb Inc. All Rights Reserved.

Slide 34

Slide 34 text

• Gluesync • RDBMS<>NoSQL特化 • 半構造化データへの最適化 • クラウドネイティブ、コンテナ • 開発向け、コードで構成 まとめ Copyright(C)2024 Climb Inc. All Rights Reserved. • Syniti Replicate • 異種RDBMS • Windows GUIで使いやすい • スクリプト、値のカスタマイズ

Slide 35

Slide 35 text

クライム トップページ https://www.climb.co.jp/ お問合せ Copyright(C)2024 Climb Inc. All Rights Reserved. • Gluesync製品サイト https://www.climb.co.jp/soft/gluesync/ • Syniti製品サイト https://www.climb.co.jp/soft/dbmoto/ • お問い合わせ • 東京:03-3660-9336 • 大阪:06-6147-8201 https://www.climb.co.jp/soft/contact/

Slide 36

Slide 36 text

ご清聴 ありがとうございました Copyright(C)2024 Climb Inc. All Rights Reserved.