The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск распределённой СУБД TiDB 2.0"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Выпуск распределённой СУБД TiDB 2.0"  +/
Сообщение от opennews (??) on 29-Апр-18, 17:22 
Состоялся (https://github.com/pingcap/tidb/releases/tag/v2.0.0) релиз распределённой СУБД TiDB 2.0 (https://pingcap.com/index), развиваемой под впечатлением от технологий  Google Spanner (http://research.google.com/archive/spanner.html) и F1 (http://research.google.com/pubs/pub38125.html). TiDB относится к категории гибридных систем HTAP (Hybrid Transactional/Analytical Processing), способных как обеспечивать выполнение транзакций в реальном времени (OLTP), так и применяться для обработки аналитических запросов. Проект написан на языке Go и распространяется (https://github.com/pingcap/tidb) под лицензией Apache 2.0.


Особенности TiDB:


-  Поддержка SQL и предоставление клиентского интерфейса, совместимого с протоколом MySQL, что упрощает адаптацию для TiDB  существующих приложений, написанных для MySQL, или  позволяет задействовать распространённые клиентские библиотеки. Кроме протокола MySQL для обращения к СУБД можно использовать API на базе JSON и коннектор для Spark.

-  Из возможностей SQL поддерживаются индексы, агрегатные функции, выражения GROUP BY, ORDER BY, DISTICT, слияния (LEFT JOIN / RIGHT JOIN / CROSS JOIN) и простые подзапросы. Предоставляемых возможностей достаточно для организации работы с TiDB таких web-приложений, как PhpMyAdmin, Gogs (https://gogs.io/) и Wordpress.
-  Возможность горизонтального масштабирования  и обеспечения отказоустойчивости: размер хранилища и вычислительную мощность можно наращивать простым подключением новых узлов, данные распределяются по узлам с избыточностью, позволяющей продолжить работу в случае сбоя отдельных узлов. Сбои обрабатываются автоматически.

-  Система гарантирует непротиворечивость и для клиентского ПО выглядит как одна большая СУБД, несмотря на то, что фактически для выполнения транзакции привлекаются данные со множества узлов.
-  Для физического хранения данных на узлах могут применяться разные бэкенды, например, локальные движки хранения GoLevelDB и BoltDB или собственный движок для распределённых хранилищ TiKV (https://github.com/pingcap/tikv).
-  Возможность асинхронного изменения схемы хранения, позволяющая на лету добавлять столбцы и индексы без остановки обработки текущих операций.

Ключевые улучшения в TiDB 2.0:

-  Внесён большой набор улучшений в оптимизатор SQL-запросов:


-  Для сокращения потребления памяти для хранения статистики задействованы более компактные структуры данных.
-  Ускорена загрузка статистики при запуске сервера.
-  Добавлена возможность динамического обновления статистики.
-  Оптимизирована модель вычисления веса запроса.
-  Улучшен анализ сложных запросов на предмет возможности применения индексов.
-  Добавлена возможность ручного определения порядка слияния таблиц при помощи конструкции STRAIGHT_JOIN.
-  Увеличена производительность выполнения запросов с пустым "GROUP BY".
-  Добавлена поддержка использования индексов для функций MAX/MIN;
-  Улучшена оптимизация подзапросов и их преобразования в слияния "LEFT OUTER JOIN".

-  В движке обработки SQL-запросов:


-  Добавлена поддержка TLS;
-  Расширена поддержка синтаксиса SQL, улучшена совместимость с MySQL, добавлена поддержка дополнительных типов данных и функций;
-  Добавлена поддержка протокола Proxy;
-  Расширено число предоставляемых метрик для мониторинга;
-  Добавлена проверка корректности файлов конфигурации;
-  Добавлена возможность получения настроек через HTTP API;
-  Добавлена поддержка многопоточной сборки мусора. Ускорен процесс сборки мусора и оптимизировано выставление блокировок при пакетном выполнении операций (Batch mode);
-  Проведён рефакторинг всех операторов с использованием архитектуры Chunk, увеличена производительность аналитических запросов и сокращено потребление памяти. Существенно улучшены результаты прохождения тестов
TPC-H;
-  Добавлена поддержка операторов потокового агрегирования данных;

-  Более чем в 10 раз увеличена скорость загрузки данных оператором "LOAD", операций "INSERT .. IGNORE" и обновления данных с дублирующимися ключами;

-  Предложена возможность ограничения размера памяти, которая может быть израсходована в процессе обработке одного SQL-запроса;


-  Улучшена совместимость с инструментом управления СУБД  Navicat;-  Улучшена совместимость с JDBC;-  Добавлена поддержка дополнительных режимов работы SQL;-  Оптимизирована производительность операции добавления индекса и добавлена возможность выполнения добавления индекса в низкоприоритетном режиме, минимизирующем влияние на другие операции;-  Реализована возможность восстановления данных индекса при помощи команды "ADMIN RECOVER INDEX";-  Возможность изменения опций таблицы при помощи выражения ALTER.

URL: https://github.com/pingcap/tidb/releases/tag/v2.0.0
Новость: https://www.opennet.me/opennews/art.shtml?num=48511

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


4. "Выпуск распределённой СУБД TiDB 2.0"  +/
Сообщение от Вареник on 29-Апр-18, 17:57 
Так чем она отличается от десятка таких же?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

5. "Выпуск распределённой СУБД TiDB 2.0"  +/
Сообщение от Crazy Alex (ok) on 29-Апр-18, 18:48 
ну, кластерность плюс мускульный протокол - уже не так уж плохо. Понятно, что чем-то за это заплатить придётся, но кое-где очень хорошо сядет
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

15. "Выпуск распределённой СУБД TiDB 2.0"  +/
Сообщение от Аноним (??) on 01-Май-18, 17:17 
Можно перечислить весь десяток?
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

9. "Выпуск распределённой СУБД TiDB 2.0"  +/
Сообщение от ГН on 30-Апр-18, 00:24 
> Увеличена производительность выполнения запросов с пустым "GROUP BY".

Наконец-то! Ждали всем шреддером!

> Особенности TiDB:
> Возможность асинхронного изменения схемы хранения, позволяющая на лету добавлять столбцы и индексы без остановки обработки текущих операций.

А в каких СУРБД сегодня существует такая проблема?

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

10. "Выпуск распределённой СУБД TiDB 2.0"  +2 +/
Сообщение от angra (ok) on 30-Апр-18, 01:18 
> А в каких СУРБД сегодня существует такая проблема?

Например в мускуле.

Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

12. "Выпуск распределённой СУБД TiDB 2.0"  –1 +/
Сообщение от Anonim (??) on 30-Апр-18, 17:15 
А в каких базах данных это сделано не как обычный блоб?
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

13. "Выпуск распределённой СУБД TiDB 2.0"  +/
Сообщение от funny.falcon on 01-Май-18, 11:06 
В PostgreSQL можно свободно добавлять столбцы (если у них дефолт NULL). И это было уже больше пятнадцати лет, и к json отношения не имеет.
Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

14. "Выпуск распределённой СУБД TiDB 2.0"  +/
Сообщение от KonstantinB (ok) on 01-Май-18, 16:51 
> А в каких СУРБД сегодня существует такая проблема?

В той или иной мере во всех. Для версионника это нетривиальная операция. В том же postgresql CREATE INDEX CONCURRENTLY появился относительно недавно и имеет ряд ограничений.

Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру