TiDB у 2024 році: Хмара, SaaS та ШІ

2024 рік добіг кінця. У 2024 році TiDB досяг значних результатів. Згідно з міжнародно визнаним сайтом рейтингу DB-Engines, ми займаємо тепер 38-ме місце серед реляційних систем баз даних. Це вражаюче досягнення, яке відображає наш зростаючий глобальний вплив серед підприємств і розробників.

pic

Ми також з радістю спостерігаємо, як TiDB приносить реальний вплив нашим клієнтам. Наприклад, у цьому пості від Pinterest вони підкреслили, як міграція з HBase на TiDB дозволила заощадити в середньому близько 50% витрат — деякі підрозділи навіть повідомили про скорочення витрат на 80% — при цьому покращивши продуктивність і стабільність.

Досягнення цих етапів було непростим завданням. Ось швидкий огляд найбільш захоплюючих розробок, які ми випустили в 2024 році.

Cloud First

У нашій організації ми твердо віримо, що майбутнє баз даних — це хмарні технології (cloud-native). Бази даних повинні бути побудовані так, щоб використовувати хмарну інфраструктуру, особливо сховища типу S3, як в AWS. Ми спостерігаємо зростаючу тенденцію використання архітектур на основі S3 навіть у навантаженнях OLTP — Neon і сам TiDB є чудовими прикладами.

У 2024 році TiDB Cloud продовжував свою швидку ітерацію та вдосконалення. Ви можете побачити подробиці в наших замітках про випуск TiDB Cloud в 2024 році. Водночас ми зосередилися на вдосконаленні наших основних компетенцій для обробки величезного зростання використання.

Ось графік, що показує загальний обсяг даних, які зберігають наші клієнти TiDB Cloud за останні два роки. Як ви можете бачити, темп зростання у 2024 році був просто експоненційним. Це створило великі операційні проблеми для нас, оскільки реальні проблеми виникають лише на великому масштабі.

pic

Ось деякі з викликів, з якими ми зіткнулися:

  • IO-коливання (IO Jitter): На AWS re:Invent 2024 я мав можливість поговорити з головою інженерного відділу AWS EBS. Коли я запитав щодо винятків латентності IO, він зазначив, що латентності понад 500 мс вважаються проблемними. Я відповів, що ми спостерігали затримки до 20 секунд — так, навіть на преміум-об'ємах IO2 — і ви могли побачити здивування в його очах. Він визнав, що не всі проблеми можна вирішити лише командою EBS. Тому з нашого боку TiDB ми провели багато внутрішніх оптимізацій, щоб мінімізувати вплив коливань IO на бізнес.
  • Коливання мережі (Network Fluctuations): Один з наших клієнтів зіткнувся з випадковими сплесками, коли деякі запити іноді займали сотні мілісекунд (замість звичних кількох мілісекунд). Ми досліджували це досить довго і зрештою визначили корінь проблеми в оновленні мережі хмарного провайдера. Провайдер підтвердив, що вони замінювали мережеве обладнання, що спричинило короткочасні перебої.
  • Обмежені хмарні ресурси (Limited Cloud Resources): На відміну від поширеної думки, хмарні ресурси не є нескінченними. Особливо для великих масштабів, ви не завжди можете отримати потрібні машини за запитом. Один з наших клієнтів спробував масштабуватися в регіоні Сінгапуру, але отримав від хмарного провайдера відповідь, що вони викупили всі доступні ресурси певного типу інстанцій. Вихідні рішення включають оптимізацію використання ресурсів або попереднє замовлення потужностей, але це реальна проблема для швидко зростаючих бізнесів.

І це лише верхівка айсберга — були випадки, коли траплялися помилки в рахунках, пожежі в дата-центрах, які знищили цілі AZ, і багато іншого. Кожного разу, коли з'являється новий виклик, я нагадую собі: «Бази даних створюються через реальне використання». Наша задача — створити надійну систему, проводити ретельне тестування на стійкість і бути готовими до таких моментів з мінімальним часом простою.

Фокус на SaaS

Кожен, хто знайомий з TiDB, знає, що ми почали з орієнтації на великомасштабні інтернет-сценарії з великими даними та високою конкурентністю. Потім ми розширилися в традиційні галузі, навіть вирішуючи завдання для критичних банківських систем — це схоже на сходження на Еверест.
Тепер, у 2024 році, ми звернули свою увагу на використання SaaS (Software as a Service).

Чому SaaS? Частково це зумовлено запитами від клієнтів. Наприклад, Databricks мала вимоги до ізоляції багатокористувацьких середовищ, що спонукало нас розробити функції контролю ресурсів. Цього року ми отримали більше SaaS-клієнтів, і тому ці потреби опинилися на вищих позиціях у нашому списку пріоритетів.

Інша причина полягає в тому, що багато вимог SaaS — особливо щодо стабільності — схожі на інші критично важливі сценарії, такі як основні банківські системи. У SaaS-середовищах ресурси розподіляються серед багатьох орендарів, тому надійність для великих клієнтів стає особливо критичною. Покращуючи наші можливості для SaaS, ми також отримуємо вигоду для інших сценаріїв використання — те, що добре для SaaS, часто добре і для всього іншого.

Одним із наших улюблених внутрішніх проєктів цього року був кодова назва “1M Tables”, мета якого — підтримка одного мільйона таблиць в одній інстанції TiDB. Це створило серйозні технічні виклики:

  • Кешування схеми (Schema Cache): Раніше TiDB кешував усі дані схеми в пам’яті. На масштабі в мільйон таблиць нам довелося розробити більш складну стратегію кешування. Якщо схема не знаходиться в кеші, завантаження за вимогою може спричинити коливання продуктивності, тому ми ввели новий механізм кешування схем.
  • Збір статистики (Statistics Collection): При мільйоні таблиць визначення того, які таблиці потребують швидкого збору статистики (а які можуть почекати), — це не дрібниця. Затримка зі збором статистики призводить до поганих планів запитів. Щоб вирішити це, ми ввели черги пріоритетів і збирали лише найбільш актуальні стовпці спочатку, забезпечуючи точність запитів найвищого пріоритету.
  • Глобальні зв'язки (Global Binding): У сценаріях SaaS багато орендарів використовують однакові шаблони запитів, але працюють з різними таблицями з майже ідентичними структурами. Якщо ми хочемо застосувати підказки для покращення продуктивності для одного шаблону, нам не хочеться робити це вручну для кожної окремої таблиці. Наша нова функція глобальних зв’язків дозволяє встановлювати підказки для універсального шаблону запиту лише один раз і застосовувати їх до всіх подібних запитів.

З випуском TiDB 8.5 я переконаний, що TiDB став основною хмарною, розподіленою базою даних для SaaS. Ми надали реальну цінність багатьом клієнтам, і один з них підсумував це дуже лаконічно: “Ось це і є справжня цінність TiDB.”

ШІ — це майбутнє

Ось і 2024 рік. Ви не можете говорити про технології, не згадуючи про ШІ. Багато друзів запитують нас, що ми робимо в умовах буму ШІ. Я зазвичай починаю з того, що кажу: “Ми спершу компанія, що працює з базами даних.”

Це означає, що наш пріоритет — підтримувати високу якість, продуктивність і зручність використання бази даних. У сфері ШІ ми зосереджуємося на тому, як TiDB може допомогти компаніям у сфері ШІ масштабувати їхній бізнес.

Цього року ми впровадили можливості пошуку за векторами (vector search). (Швидка підказка: наступного року ми плануємо випустити повнотекстовий пошук (full-text search).) Ми віримо, що TiDB може надати більше цінності клієнтам з ШІ:

  • Масштабованість OLTP: TiDB обробляє онлайн-транзакційні навантаження в масштабі, надаючи ШІ-додаткам можливість рости без побоювань щодо досягнення продуктивних обмежень.
  • Підтримка мультимовних даних (Multi-format Data Support): Незалежно від того, чи потрібно зберігати графові дані (у таблицях TiDB), вектори чи текст, TiDB забезпечує зручну єдину платформу.
  • Сили HTAP (HTAP Strengths): Гібридна транзакційно-аналітична обробка TiDB дозволяє виконувати складні запити, які поєднують пошук за векторами з реальними транзакційними даними (наприклад, приєднання, що включають стовпці з векторами та дані TP).

Наша кінцева мета — запропонувати єдині рішення для даних ШІ (one-stop AI data solutions). Ми вже бачимо історії успіху, як наприклад, Dify, відомий постачальник ШІ, який мігрував дані орендарів на TiDB Cloud.

Погляд в майбутнє

Підсумовуючи, у 2024 році ми випустили два великих релізи: TiDB 8.1 і TiDB 8.5. У 2025 році ми все ще плануємо зосередитися на якості та стабільності. Ми випустимо одну версію з тривалим терміном підтримки (LTS), з мінімумом нових функцій, але максимальною надійністю.
Я незабаром опублікую ще одну статтю, щоб глибше розглянути серію TiDB 8.x.

Оглядаючи 2024 рік, ми пишаємося тим, чого досягли. Наш успіх побудований на наданні відмінного продукту, задоволенні потреб клієнтів і здобутті їх довіри. Бажаємо ще кращого 2025 року — підтримки більшого зростання клієнтів та допомоги бізнесам досягати своїх цілей.

Джерела

Перекладено з: TiDB in 2024: Cloud, SaaS, and AI

Leave a Reply

Your email address will not be published. Required fields are marked *