CockroachDB

Распределенная система управления базами данных

Оригинальный автор(ы)Спенсер Кимбалл , Питер Мэттис , Бен Дарнелл
Разработчик(и)Лаборатории по исследованию тараканов
Первоначальный выпуск2017 ; 7 лет назад ( 2017 )
Стабильный релиз
24.1.0 / 20 мая 2024 г. ; 5 месяцев назад ( 2024-05-20 )
Репозиторий
  • github.com/cockroachdb/таракан
Написано вИдти
Доступно вАнглийский
ТипСУРБД
ЛицензияЗапатентованная [1]
Cockroach Labs, Inc.
Тип компанииЧастный
ПромышленностьПрограммное обеспечение
Основан2015 ; 9 лет назад ( 2015 )
ОсновательСпенсер Кимбалл , Питер Мэттис , Бен Дарнелл
Штаб-квартираНью-Йорк Сити
Ключевые люди
Спенсер Кимбалл (генеральный директор)
Питер Мэттис (вице-президент по инжинирингу)
Бен Дарнелл (технический директор)
Нейт Стюарт (директор по продукции)
Линдси Гренауолт (директор по кадрам)
УслугиКоммерческие системы управления базами данных
Веб-сайтcockroachlabs.com

CockroachDB — это распределенная система управления базами данных SQL с исходным кодом, разработанная Cockroach Labs. [2] [3] Реляционная функциональность построена на основе распределенного, транзакционного, согласованного хранилища ключей и значений, которое может выдерживать различные сбои базовой инфраструктуры и совместимо с PostgreSQL , что означает, что пользователи могут воспользоваться широким спектром драйверов и инструментов из обширной экосистемы PostgreSQL. Кластер CockroachDB состоит из ряда узлов, которые могут быть распределены по доменам сбоев, таким как центры обработки данных или регионы публичного облака. Кластер можно масштабировать как горизонтально [4] (путем добавления узлов), так и вертикально (путем увеличения ресурсов, выделяемых существующим узлам). Он может обеспечивать высокий уровень устойчивости и доступности и может работать в различных средах, таких как «голое железо», виртуальные машины , контейнеры и Kubernetes , как в частных центрах обработки данных, так и в облаке. CockroachDB получил свое название от тараканов, поскольку они известны своей устойчивостью к катастрофам. [5]

История

Cockroach Labs была основана в 2015 году бывшими сотрудниками Google Спенсером Кимбаллом , Питером Мэттисом и Беном Дарнеллом . Кимбалл и Мэттис были ключевыми членами команды Google File System , [6] в то время как Дарнелл был ключевым членом команды Google Reader . [7]

Работая в Google, все трое использовали принадлежащую Google СУБД Bigtable и ее преемника Spanner . [3] После ухода из Google они захотели разработать и построить что-то похожее. [8] Спенсер Кимбалл написал первую итерацию дизайна в январе 2014 года и начал проект с открытым исходным кодом на GitHub в феврале 2014 года, разрешив внешний доступ и вклад. [9]

Разработка на GitHub привлекла значительные взносы, благодаря которым проект получил награду Open Source Rookie of the Year от Black Duck Software. [10]

Соучредители поддержали проект посредством конференций, налаживания связей, встреч и раундов финансирования.

В июне 2019 года Cockroach Labs объявила, что CockroachDB изменит свою лицензию с лицензии свободного программного обеспечения Apache License 2.0 на свою лицензию с доступом к исходному коду , известную как Business Source License (BuSL) , которая запрещает «предлагать коммерческую версию CockroachDB в качестве услуги без покупки лицензии», при этом оставаясь бесплатной для использования сообществом. [11] [12]

Функции

CockroachDB хранит копии данных в нескольких местах для обеспечения быстрого доступа. [8] [13]

Он описывается как масштабируемое, последовательно реплицируемое , транзакционное хранилище данных . [14] Один экземпляр может масштабироваться от одного ноутбука до тысяч серверов. [3]

CockroachDB разработан для работы в облаке и имеет высокую отказоустойчивость . Согласно популярным новостным каналам, его описывают как «практически невозможно» отключить. [15] [16] [13]

CockroachDB имеет модель согласованности, которая разработана так, чтобы максимально соответствовать возможностям Google Spanner , но без зависимости от специализированного оборудования для синхронизации времени. «Никаких устаревших чтений» — это самый простой способ описать эту модель согласованности, которая намеренно пошла на компромисс с наличием нелинеаризуемых историй транзакций. [17] Транзакции, содержащие перекрывающиеся ключи, гарантированно имеют внешнюю согласованность. И поэтому на практике системы, полагающиеся на CockroachDB, вряд ли будут воспроизводить проблемы согласованности, поскольку узлы с высокими вариациями в перекосе часов могут быть удалены из кластеров, приложения могут полагаться на внешнюю согласованность, обеспечиваемую перекрывающимися ключами и записью в тот же диапазон, а записи распространяют изменения на кэши временных меток последователей. [18]

Смотрите также

Ссылки

  1. ^ «Часто задаваемые вопросы по лицензированию».
  2. ^ Овиде, Шира (4 июня 2015 г.). «CockroachDB убегает с $6,3 млн на устранение недостатков базы данных». The Wall Street Journal . Получено 22 февраля 2020 г.
  3. ^ abc Финли, Клинт (4 июня 2015 г.). «Бывшие сотрудники Google получают миллионы, чтобы помочь вам построить следующий Google». Wired . Получено 22 февраля 2020 г.
  4. ^ Хеллер, Мартин (4 января 2018 г.). «Обзор CockroachDB: масштабируемая база данных SQL, созданная для выживания». InfoWorld . Получено 19 марта 2024 г.
  5. ^ Пина, Эдуардо; Са, Филипе; Бернардино, Хорхе (январь 2023 г.). «Оценка баз данных NewSQL: CockroachDB, MariaDB Xpand и VoltDB». Future Internet . 15 (1): 10. doi : 10.3390/fi15010010 . hdl : 10316/114892 . ISSN  1999-5903.
  6. Метц, Кейд (10 июля 2012 г.). «Google переделывает онлайн-империю с помощью «Колосса». Wired . Получено 22 февраля 2020 г.
  7. Уотерс, Робин (28 июля 2009 г.). «Украсть! Бен Дарнелл покидает команду Google Reader, присоединяется к FriendFeed». TechCrunch . Получено 22 февраля 2020 г.
  8. ^ ab Novet, Jordan (4 июня 2015 г.). «Последняя инвестиция Питера Фентона — это стартап базы данных под названием Cockroach». VentureBeat . Получено 22 февраля 2020 г.
  9. ^ Ewbank, Kay (9 июня 2015 г.). «CockroachDB Released». I Programmer . Получено 22 февраля 2020 г. .
  10. ^ Финли, Клинт (28 января 2015 г.). «Это самые горячие новые проекты с открытым исходным кодом прямо сейчас». Wired . Получено 22 февраля 2020 г.
  11. ^ Мэттис, Питер; Дарнелл, Бен; Кимбалл, Спенсер (4 июня 2019 г.). «Почему мы повторно лицензируем CockroachDB». CockroachLabs.com . Получено 22 февраля 2020 г. .
  12. ^ "CockroachDB Community License". Cockroach Labs . Получено 28 июля 2020 г.
  13. ^ ab Babcock, Charles (4 июня 2015 г.). "CockroachDB: Ultimate in Database Survival". InformationWeek . Получено 22 февраля 2020 г. .
  14. ^ Дарфлер, Бенджамин (29 августа 2014 г.). «CockroachDB: масштабируемое, геореплицированное, транзакционное хранилище данных». InfoQ . Получено 22 февраля 2020 г. .
  15. ^ Финли, Клинт (22 июля 2014 г.). «CockroachDB — это устойчивое облачное программное обеспечение, созданное бывшими сотрудниками Google». Wired . Архивировано из оригинала 14 мая 2015 г. Получено 22 февраля 2020 г.
  16. Финли, Клинт (21 июля 2014 г.). «Открыто: бывшие сотрудники Google создают облачное программное обеспечение, которое почти невозможно уничтожить». Wired . Получено 22 февраля 2020 г.
  17. ^ Матей, Андрей (24 января 2019 г.). «Модель согласованности CockroachDB».
  18. ^ Корделл, Эван. «Единственное принципиальное различие между Spanner и CockroachDB».
  • Официальный сайт
Взято с "https://en.wikipedia.org/w/index.php?title=CockroachDB&oldid=1243446969"