FoundationDB - FoundationDB
Оригинальный автор (ы) |
|
---|---|
Разработчики) | Apple Inc. |
изначальный выпуск | 4 марта 2013 г. |
Стабильный выпуск | 6.2.28[1] / 15 ноября 2020 |
Репозиторий | |
Написано в | C ++, C[2] |
Операционная система | |
Доступно в | английский |
Тип | NoSQL |
Лицензия | Apache 2.0 |
Интернет сайт | www |
FoundationDB это бесплатно и с открытым исходным кодом многомодельный распределен NoSQL база данных разработана Apple Inc. с архитектура без совместного использования ресурсов.[3] Продукт был разработан на основе «основной» базы данных с дополнительными функциями, предоставленными на «уровнях».[4] Основная база данных предоставляет упорядоченный хранилище ключей и значений с сделки.[5] Транзакции могут читать или записывать несколько ключей, хранящихся на любой машине в кластере, при полной поддержке КИСЛОТА характеристики.[6] Транзакции используются для реализации различных моделей данных через уровни.
Программа FoundationDB Alpha началась в январе 2012 года и завершилась 4 марта 2013 года выпуском публичной бета-версии.[7] Их версия 1.0 была выпущена для общего доступа 20 августа 2013 г. 24 марта 2015 г. сообщалось, что яблоко приобрел компанию.[8] Уведомление на веб-сайте FoundationDB указывало, что компания «развила» свою миссию и больше не будет предлагать загрузки программного обеспечения.[9]
19 апреля 2018 г. Apple открыла исходный код программного обеспечения, выпустив его под Apache 2.0 лицензия.[10]
Основные особенности
Основные особенности FoundationDB включают следующее:
- Упорядоченное хранилище ключей и значений
- В дополнение к поддержке стандартных операций чтения и записи на основе ключей, свойство упорядочения позволяет читать диапазоны, которые могут эффективно сканировать большие массивы данных.[5]
- Сделки
- Обработка транзакций задействует мультиверсионный контроль параллелизма для чтения и оптимистичный параллелизм для записи. Транзакции могут охватывать несколько ключей, хранящихся на нескольких машинах.
- КИСЛОТНЫЕ свойства
- FoundationDB гарантирует сериализуемый изоляция и сильный долговечность через избыточное хранилище на диске до рассмотрения транзакций преданный идее.
- Слои
- Карта слоев новая модели данных, API и языки запросов к ядру FoundationDB. Они используют способность FoundationDB обновлять несколько элементов данных за одну транзакцию, обеспечивая согласованность.[4] Пример - их SQL слой.[11]
- Товарные кластеры
- FoundationDB предназначен для развертывания на распределенных кластерах товар оборудование работает Linux.[12]
- Репликация
- FoundationDB хранит каждую часть данных на нескольких машинах в соответствии с настраиваемым коэффициентом репликации. Тройная репликация - рекомендуемый режим для кластеров из 5 и более машин.
- Масштабируемость
- FoundationDB предназначен для поддержки горизонтальное масштабирование через добавление машин в кластер с автоматической обработкой репликации и разделения данных.
- Поддерживаемые системы
- FoundationDB поддерживает пакеты для Linux, Windows и macOS. Версия для Linux поддерживает производственные кластеры, а версии для Windows и macOS поддерживают локальные операции в целях разработки. Конфигурации на Amazon EC2 также поддерживаются.[13]
- Привязки языков программирования
- FoundationDB поддерживает привязки языков для Python, Go, Ruby, Node.js, Java, PHP и C, все из которых доступны вместе с продуктом.[13]
Ограничения дизайна
Дизайн FoundationDB имеет несколько ограничений:
- Длинные сделки
- FoundationDB не поддерживает транзакции продолжительностью более пяти секунд.
- Крупные сделки
- Общий объем записанных ключей и значений не может превышать 10 МБ.
- Большие ключи и значения
- Размер ключей не может превышать 10 КБ. Значения не могут превышать 100 КБ.
История
FoundationDB, штаб-квартира в Вене, штат Вирджиния,[13] была основана в 2009 году Ником Лавеццо, Дэйвом Розенталем и Дэйвом Шерером, опираясь на свой опыт работы на руководящих и технологических должностях в своей предыдущей компании Visual Sciences.[14]
В марте 2015 года сайт сообщества FoundationDB был обновлен, и теперь было указано, что компания изменила направление и больше не будет предлагать загрузки своего продукта. Компания была приобретена Apple Inc., что было подтверждено 25 марта 2015 года.[15][8]
19 апреля 2018 г. Apple открыла исходный код программного обеспечения, выпустив его под Apache 2.0 лицензия.[10]
Смотрите также
- Транзакция базы данных
- Распределенная база данных
- Распределенная транзакция
- Список ранее проприетарного программного обеспечения
Рекомендации
- ^ "Релизы apple / foundationdb". github.com. Получено 2020-11-15.
- ^ FoundationDB: распределенное транзакционное хранилище ключей и значений с открытым исходным кодом - apple / foundationdb, 4 января 2019 г. - через GitHub
- ^ База данных хочет, чтобы вы перестали сбрасывать КИСЛОТУ
- ^ а б FoundationDB выпускает бета-версию своей базы данных NoSQL / YesACID
- ^ а б "Доступен NoSQL, совместимый с ACID FoundationDB". Архивировано из оригинал на 2013-06-28. Получено 2013-04-11.
- ^ Передовые задачи FoundationDB в области NoSQL: доминирование реляционных баз данных
- ^ «FoundationDB переносит транзакции в NoSQL». Архивировано из оригинал на 2018-04-20. Получено 2013-04-11.
- ^ а б Apple приобретает Durable Database Company FoundationDB
- ^ «Архивная копия». Архивировано из оригинал 2015-03-25. Получено 2019-12-19.CS1 maint: заархивированная копия как заголовок (связь)
- ^ а б «FoundationDB с открытым исходным кодом». www.foundationdb.org. Получено 2018-04-19.
- ^ "Уровень SQL FoundationDB". Архивировано из оригинал на 2013-08-20. Получено 2013-08-21.
- ^ FoundationdB выпускает новую платформу данных NoSQL
- ^ а б c FoundationDB стремится консолидировать NoSQL
- ^ SQL или NoSQL: FoundationDB запускает базу данных «Лучшее из обоих миров»
- ^ https://blogs.wsj.com/digits/2015/03/24/apple-acquires-foundationdb/?mod=WSJ_hps_sections_tech