マジセミドライブ

ウェビナー関連のニュースや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

おすすめの記事

【IT用語解説】「 デジタルヒューマン 」とは😊

IT用語解説

2024.01.26

【IT用語解説】「 デジタルヒューマン 」とは😊

【IT用語解説】「 デジタルヒューマン 」として、「デジタルヒューマンとは何か?」「どのようにして作成できるのか?」「私たちの世界にどのような影響を与えているのか?」などについて、まとめています。

【トレンド解説】超入門「 スマートファクトリー 」🏭

トレンド解説

2024.04.15

【トレンド解説】超入門「 スマートファクトリー 」🏭

「 スマートファクトリー 」への理解を深めるための解説として、初心者向けにわかりやすくまとめた記事です。「新しい工場の概念」「デジタルツインの活用」「IoT技術による最適化」など、現代の製造業に必要な知識を効果的に学べます。 スマートファクトリー の導入によるメリットを具体的に解説しています。