マジセミドライブ

ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。

OSS情報

2023.04.25

【OSS情報】クラウドネイティブ分散SQLデータベース「 CockroachDB 」

【OSS情報】クラウドネイティブ分散SQLデータベース「 CockroachDB 」

【OSS情報】クラウドネイティブ分散SQLデータベース「 CockroachDB 」

【OSS情報】クラウドネイティブ分散SQLデータベース「 CockroachDB 」

CockroachDBの「概要」

「 CockroachDB 」(コックローチDB)とは、
オープンソースの「クラウドネイティブ分散SQLデータベース」です。

強力かつ一貫性のあるACIDトランザクションをサポートするキーバリューストアとして活用できます。

水平方向スケーリングによって高い耐障害性を実現しており、システム全体の可用性を向上させることができます。

開発目標

CockroachDBは、「最新のデータ集約型アプリケーション」を「構築」「スケーリング」「管理」するために設計されています。

メリット

・標準SQLをサポート :リレーショナルDBの概念で利用可能
・PostgreSQLワイヤプロトコルのサポート :既存アプリケーションやツールを簡単に移行
・トランザクション保証 ACIDトランザクション
・分散トランザクション :クラスタ全体にトランザクションを分散
・データアクセススピード :高速な読み取り+書き込みを

ユースケース

CockroachDB は、「正確なデータ取得」+「ミリ秒の応答時間」を必要とするアプリケーションに適しています。
・分散(複製)されたOLTP
・マルチデータセンター展開
・マルチリージョンデプロイ
・クラウド移行
・クラウド向けに構築されたインフラストラクチャイニシアチブ

▲大規模分析処理用途には適していません。

CockroachDBの「特徴」

CockroachDB SQL

・外部APIは拡張機能を備えた標準SQL
・開発者は「使い慣れたリレーショナルの概念」で利用可能

PostgreSQLワイヤプロトコルのサポート

■任意のPostgreSQLクライアントドライバを使用可能
・JavaScript/TypeScript
・Python
・Go
・Java
・Ruby
・C
・C#(.NET)
・Rust

→cockroachlabs.com →docs →stable →install-client-drivers

データアクセススピード

・単一行の「読み取り」は2ミリ秒以下
・単一行の「書き込み」は4ミリ秒以下
・クエリパフォーマンス最適化のためのSQLチューニングプラクティスをサポート

トランザクション保証

・ACIDセマンティクスを保証 :「原子性」「一貫性」「分離」「耐久性」
・格納データは MVCCでバージョン管理
・コンセンサスアルゴリズムは、レプリカの大部分が常に一致することを保証
・タイムスタンプキャッシュも使用 :書き込みトランザクションが読み取りトランザクションへの干渉を防ぐ

分散トランザクション

・クラスタ全体にトランザクションを分散
・リバランス進行中にダウンタイムや追加の待ち時間なしで進行

対障害性

・強力な一貫性のあるレプリケーション :Raftコンセンサスアルゴリズム
・自動的に「複製」「再調整」「回復」するように構築されている
・障害後の自動修復機能 :レプリカの大部分が利用可能である限りシームレスに続行
・長期的障害の場合、レプリカを自動的に再調整

水平方向スケーリング

・データが入力され、しきい値サイズ(デフォルト512MiB)に達すると、データは2つの範囲に分割
・それぞれが「Key-Valueスペース全体の連続セグメント」をカバー
・新しく分割された範囲は「より多くの容量を持つノード」に自動的に再調整
・ピアツーピアゴシッププロトコルを使用してリバランス

セキュリティ

・通信暗号化 :「クライアント/ノード」および「ノー​​ド/ノード」
・SSL証明書 :クライアント+ノード両方のIDを認証
・一般的SQL権限をサポート :データベース+テーブルに対する権限設定

→cockroachlabs.com →docs →stable →security-reference →security-overview

マイグレーション機能

・Migrate from PostgreSQL
・Migrate from MySQL
・CSV によるデータインポートも完全にサポート

CockroachDBの「デプロイメントオプション」

①スタータープロジェクト向き「CockroachDB Serverless」

・サーバレス環境へデプロイ
・Cockroach Labsが管理
・「AWS」または「GCP」
・マルチテナントデプロイメント
・クラスタを即座に作成して開始できる
・即時の自動スケーリング
・寛大な無料利用枠
・「スタータープロジェクト」や「機能評価」に適している

②エンタープライズ用途向き「CockroachDB Dedicated standard 」

・サーバレス環境へデプロイ
・「単一テナント」デプロイメント
・エンタープライズ機能を必要とするミッションクリティカルなプロジェクトに適している

③エンタープライズ用途向き「CockroachDB Dedicated advanced 」

・「Dedicated standard」に加えて、「PCI」(データセキュリティ基準)対応の機能を備えている

③自己ホスト型「CockroachDB Self-Hosted」

・データベース環境を完全に制御できる
・エンタープライズ機能が必要な場合に適している

→cockroachlabs.com →docs →stable →choose-a-deployment-option.html

CockroachDBの「オフィシャルサイト情報」

オフィシャルサイト

→cockroachlabs.com

GitHubページ

→github.com →cockroachdb →cockroach

主要開発元

CockroachDBは「Cockroach Labs」が中心となり開発が進められています。

→cockroachlabs.com →about

ライセンス情報

CockroachDBのライセンスは、複数ライセンスです。
・Business SourceLicense 1.1
・CockroachDB Community License
・MIT license
・BSD-style licenses

詳細については、こちらを参照ください。

→github.com →cockroachdb →cockroach →LICENSE

セットアップ

→cockroachlabs.com →docs →stable →choose-a-deployment-option

導入事例

→cockroachlabs.com →customers

【お知らせ】ITセミナー「マジセミ」のご紹介

「 マジセミ 」では、日々、多くのIT関連セミナーを開催しています。

参加者のみなさまのために「本当に役立つ情報の提供」を目標としています。

また、「 マジセミ 」を通じて、デジタル関連プロダクト(サービス)との「新たな出会いの場」「新たな体験の場」を創造することで、「IT業界の発展」「製造業の発展」「エンジニアの活躍促進」の実現を目指しています。

多くのセミナーの中から「ご自身のスキルやビジネスを強化できるセミナー」を見つけて、ぜひ一度、ご参加ください。

マジセミ


参考サイト
→github.com →cockroachdb →cockroach
→cockroachlabs.com

おすすめの記事

【デジタル寺田の3分用語解説】「 VMWare 問題 」とは?🖥️

デジタル寺田の3分用語解説

2024.11.18

【デジタル寺田の3分用語解説】「 VMWare 問題 」とは?🖥️

「 VMWare 」の仮想化技術は、「ITインフラの効率化」に大きく貢献する技術ですが、Broadcomによる買収後のライセンス変更が大きな問題として注目されています。柔軟で慎重な契約見直しが今後の鍵となります。

【デジタル寺田の3分用語解説】「 経済産業省:コンテンツ制作のための 生成AI 利活用ガイドブック 」とは?📘

デジタル寺田の3分用語解説

2024.11.18

【デジタル寺田の3分用語解説】「 経済産業省:コンテンツ制作のための 生成AI 利活用ガイドブック 」とは?📘

経済産業省による「 生成AI 利活用ガイドブック 」は、企業やクリエイター向けに、安心して「生成AI」を利用するための、「指針」「実例」「注意点」を明示しています。「業務効率化」や「新しいアイデア創出」の支援を目的としています。

【デジタル寺田の3分用語解説】「 2029年問題 」とは?📅

デジタル寺田の3分用語解説

2024.11.18

【デジタル寺田の3分用語解説】「 2029年問題 」とは?📅

「 2029年問題 」とは、高校でのデジタル教育改革により、新入社員と既存社員間でデジタルスキル格差が拡大する懸念を指します。企業は早急に対応が求められています。この格差は、企業競争力や業務効率にも、影響を及ぼす可能性があります。