Первый стабильный выпуск распределённой СУБД TiDB
21 октября 2017 года
Представлен (Архивная копия от 11 ноября 2020 на Wayback Machine) релиз распределённой СУБД TiDB 1.0 (Архивная копия от 29 октября 2017 на Wayback Machine), развиваемой под впечатлением от технологий Google Spanner и F1 (Архивная копия от 9 июня 2017 на Wayback Machine). TiDB отнесена к категории гибридных систем HTAP (Hybrid Transactional/Analytical Processing), способных как обеспечивать выполнение транзакций в реальном времени (OLTP), так и применяться для обработки аналитических запросов. Проект написан на языке Go и распространяется под лицензией Apache 2.0.
TiDB предоставляет возможности для горизонтального масштабирования и обеспечения отказоустойчивости: размер хранилища и вычислительную мощность можно наращивать простым подключением новых узлов, данные распределяются по узлам с избыточностью, позволяющей продолжить работу в случае сбоя отдельных узлов. Сбои обрабатываются автоматически.
Система гарантирует непротиворечивость и для клиентского ПО выглядит как одна большая СУБД, несмотря на то, что фактически для выполнения транзакции привлекаются данные со множества узлов. Для физического хранения данных на узлах могут применяться разные бэкенды, например, локальные движки хранения GoLevelDB и BoltDB или собственный движок для распределённых хранилищ TiKV.
Важными особенностями TiDB является поддержка SQL и предоставление клиентского интерфейса, совместимого с протоколом MySQL, что упрощает адаптацию для TiDB существующих приложений, написанных для MySQL, или позволяет задействовать распространённые клиентские библиотеки. Из возможностей SQL поддерживаются индексы, агрегатные функции, выражения GROUP BY, ORDER BY, DISTICT, слияния (LEFT JOIN / RIGHT JOIN / CROSS JOIN) и простые подзапросы. Предоставляемых возможностей достаточно для организации работы с TiDB таких web-приложений, как PhpMyAdmin, Gogs и Wordpress.
Из расширенных возможностей отмечаются средства для асинхронного изменения схемы хранения, позволяющие на лету добавлять столбцы и индексы без остановки обработки текущих операций. Кроме протокола MySQL для обращения к СУБД можно использовать API на базе JSON и коннектор для Spark.
Источники
править- Главная ссылка к новости (https://pingcap.github.io/blog...) (Архивная копия от 11 ноября 2020 на Wayback Machine)
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.