| コックローチDB | |
|---|---|
| 原作者 | スペンサー・キンボール、ピーター・マティス、ベン・ダーネル |
| 開発者 | ゴキブリ研究所 |
| 初回リリース | 2017 (2017年) |
| 安定版リリース | 25.1.4 / 2025年4月8日 ( 2025-04-08 ) |
| リポジトリ | |
| 書かれた | 行く |
| 入手可能な | 英語 |
| タイプ | RDBMS |
| ライセンス | 独自仕様[ 1 ] |
| 会社の種類 | プライベート |
|---|---|
| 業界 | ソフトウェア |
| 設立 | 2015 (2015年) |
| 創設者 | |
| 本部 | ニューヨーク市 |
主要人物 | スペンサー・キンボール(CEO)、ピーター・マティス(エンジニアリング担当副社長)、ベン・ダーネル(CTO)、ネイト・スチュワート(最高製品責任者)、リンジー・グレナウォルト(最高人事責任者) |
| サービス | 商用データベース管理システム |
| Webサイト | cockroachlabs.com |
CockroachDBはCockroach Labsによって開発されたソースコードが公開されている 分散SQLデータベース管理システムです。 [ 2 ] [ 3 ]
リレーショナル機能は、分散型でトランザクション対応の一貫性のあるキーバリューストア上に構築されており、さまざまな基盤インフラの障害にも耐えられます。また、PostgreSQLと互換性があるため、ユーザーは広範なPostgreSQLエコシステムのさまざまなドライバーやツールを利用できます。CockroachDBクラスターは、データセンターやパブリッククラウドリージョンなどの障害ドメインに分散できる多数のノードで構成されています。クラスターは、水平方向[ 4 ] (ノードの追加)と垂直方向(既存のノードに割り当てられたリソースの増加)の両方で拡張できます。高いレベルの回復力と可用性を提供でき、ベアメタル、 VM、コンテナー、Kubernetesなどのさまざまな環境で実行でき、プライベートデータセンターとクラウドの両方で実行できます。CockroachDBの名前は、災害に強いことで知られるゴキブリに由来しています。[ 5 ]
歴史
コックローチ・ラボは、元Google社員のスペンサー・キンボール、ピーター・マティス、ベン・ダーネルによって2015年に設立されました。キンボールとマティスはGoogleファイルシステムチームの主要メンバーであり、[ 6 ]ダーネルはGoogleリーダーチームの主要メンバーでした。[ 7 ]
Google在籍中、3人ともGoogle所有のDBMSであるBigtableとその後継であるSpannerを使用していた。[ 3 ] Googleを去った後、彼らは似たようなものを設計・構築したいと考えていた。[ 8 ]スペンサー・キンボールは2014年1月に最初の設計バージョンを書き、2014年2月にGitHubでオープンソースプロジェクトを開始し、外部からのアクセスと貢献を可能にした。[ 9 ]
GitHubでの開発は多大な貢献を集め、このプロジェクトはBlack Duck Softwareからオープンソース・ルーキー・オブ・ザ・イヤー賞を受賞しました。 [ 10 ]
共同創設者たちは、カンファレンス、ネットワーキング、ミートアップ、資金調達ラウンドを通じてプロジェクトを支援しました。
2019年6月、Cockroach LabsはCockroachDBのライセンスをフリーソフトウェアライセンスのApache License 2.0から、Business Source License (BuSL)と呼ばれるソースコードが公開されているライセンスに変更すると発表しました。このライセンスでは、「ライセンスを購入せずにCockroachDBの商用版をサービスとして提供すること」を禁止していますが、コミュニティでの使用は引き続き無料です。[ 11 ] [ 12 ]
特徴
CockroachDBは、迅速なアクセスを実現するために、データのコピーを複数の場所に保存します。[ 8 ] [ 13 ]
これは、スケーラブルで、一貫して複製されたトランザクションデータストアとして説明されています。[ 14 ] 1つのインスタンスは、1台のラップトップから数千台のサーバーにまで拡張できます。[ 3 ]
CockroachDB はクラウド上で動作するように設計されており、高い耐障害性を備えています。主要ニュースメディアによると、これを停止させることは「ほぼ不可能」とされています。[ 15 ] [ 16 ] [ 13 ]
CockroachDB は、 Google Spannerの機能に可能な限り近づけるように設計された一貫性モデルを備えていますが、時間同期のための専用ハードウェアに依存しません。「古い読み取りがない」というのが、この一貫性モデルを最も簡単に表現したものです。この一貫性モデルは、意図的に非線形化可能なトランザクション履歴を持つというトレードオフをとっています。[ 17 ]重複キーを含むトランザクションは、外部一貫性が保証されています。そのため、実際には、クロックスキューの変動が大きいノードをクラスターから削除でき、アプリケーションは重複キーと同じ範囲への書き込みによって提供される外部一貫性を利用でき、書き込みはフォロワーのタイムスタンプキャッシュに変更を伝播するため、CockroachDB に依存するシステムでは一貫性の問題が再現される可能性は非常に低いです。[ 18 ]
参照
参考文献
- ^ 「ライセンスに関するFAQ」。
- ^ Ovide, Shira (2015年6月4日). 「CockroachDB、データベースの欠陥に対処するため630万ドルを投じて撤退」 .ウォール・ストリート・ジャーナル. 2020年2月22日閲覧。
- ^ a b cフィンリー、クリント(2015年6月4日)。「元Google社員が次世代Googleの構築を支援するために数百万ドルを調達」 Wired 。2020年2月22日閲覧。
- ^ Heller, Martin (2018年1月4日). 「CockroachDBレビュー:生き残りをかけたスケールアウトSQLデータベース」 InfoWorld . 2024年3月19日閲覧。
- ^ Pina, Eduardo; Sá, Filipe; Bernardino, Jorge (2023年1月). 「NewSQLデータベースの評価:CockroachDB、MariaDB Xpand、VoltDB」 . Future Internet . 15 (1): 10. doi : 10.3390/fi15010010 . hdl : 10316/114892 . ISSN 1999-5903 .
- ^メッツ、ケイド(2012年7月10日)「Googleが『Colossus』でオンライン帝国を再構築」「 . Wired . 2020年2月22日閲覧。
- ^ Wauters, Robin (2009年7月28日). 「Steal! Ben Darnell Leaves Google Reader Team, Joins FriendFeed」 . TechCrunch . 2020年2月22日閲覧。
- ^ a b Novet, Jordan (2015年6月4日). 「ピーター・フェントンの最新投資先はデータベーススタートアップのCockroach」 . VentureBeat . 2020年2月22日閲覧。
- ^ Ewbank, Kay (2015年6月9日). 「CockroachDBがリリースされました」 . I Programmer . 2020年2月22日閲覧。
- ^ Finleey, Klint (2015年1月28日). 「今最も注目されているオープンソースプロジェクト」 . Wired . 2020年2月22日閲覧。
- ^ Mattis, Peter; Darnell, Ben; Kimball, Spencer (2019年6月4日). 「CockroachDBを再ライセンスする理由」 . CockroachLabs.com . 2020年2月22日閲覧。
- ^ 「CockroachDBコミュニティライセンス」 . Cockroach Labs . 2020年7月28日閲覧。
- ^ a b Babcock, Charles (2015年6月4日). 「CockroachDB: Ultimate in Database Survival」 . InformationWeek . 2020年2月22日閲覧。
- ^ Darfler, Benjamin (2014年8月29日). 「CockroachDB: スケーラブルで地理的に複製されたトランザクション型データストア」 . InfoQ . 2020年2月22日閲覧。
- ^ Finley, Klint (2014年7月22日). 「CockroachDBは元Google社員が開発した、回復力のあるクラウドソフトウェア」 . Wired . 2015年5月14日時点のオリジナルよりアーカイブ。2020年2月22日閲覧。
- ^フィンリー、クリント(2014年7月21日)「Out in the Open: Ex-Googlers Building Cloud Software That's Almost Impossible to Take Down」Wired誌。2020年2月22日閲覧。
- ^ Matei, Andrei (2019年1月24日). 「CockroachDBの一貫性モデル」 .
- ^ Cordell, Evan. 「Spanner と CockroachDB の唯一の決定的な違い」 .