マジセミドライブ

ウェビナー関連のニュースや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分用語解説】「 SAP 2027問題 」とは?⏳

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

2024.10.07

【デジタル寺田の3分用語解説】「 SAP 2027問題 」とは?⏳

「 SAP 2027問題 」とは、「SAP ERP 6.0」が2027年末でサポート終了する問題です。セキュリティリスクを避けるため、早期に新システムへの移行が必要です。移行は業務プロセスの見直し、効率化のチャンスにもなります。新しい技術を積極的に導入し、挑戦していくことが成功の鍵となります。

【デジタル寺田の3分用語解説】「 人的資本経営 」とは?🧑‍💼

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

2024.10.08

【デジタル寺田の3分用語解説】「 人的資本経営 」とは?🧑‍💼

「 人的資本経営 」は、企業が従業員のスキルや経験、意欲を高めるために投資を行い、長期的な企業価値の向上を目指す経営手法です。本記事では、人的資本経営の意義やその具体的な取り組みについて分かりやすく解説します。

【デジタル寺田の3分用語解説】「 ASM 」とは?🧩

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

2024.10.07

【デジタル寺田の3分用語解説】「 ASM 」とは?🧩

「 ASM 」(アタックサーフェースマネジメント)は、システムに存在する脆弱性や攻撃の入り口を可視化し、管理することでリスクを特定し、対策を講じる手法です。攻撃者がシステムに侵入するために利用できる潜在的な脆弱性を理解し、適切な対策を取ることが、セキュリティ対策の第一歩となります。