Поделиться через


Движок СУБД Microsoft SQL

Ядро СУБД Microsoft SQL — это основная служба для хранения, обработки и защиты данных. Она обеспечивает контролируемый доступ и быструю обработку транзакций для широкого спектра коммерческих и предпринимательских приложений.

Ядро СУБД SQL — это общий базовый механизм для всех предложений Microsoft SQL. Это корпоративная реляционная система управления реляционными базами данных общего назначения (RDBMS).

Для миллионов клиентов по всему миру в каждой отрасли и уровне организации ядро СУБД Microsoft SQL — это служба базы данных для безопасной обработки и хранения данных. Требовательные приложения могут надежно считывать и изменять сведения при сохранении целостности в большом масштабе. Ядро СУБД SQL выполняется в качестве службы, которая принимает клиентские подключения, а затем выполняет запрошенные операции с базами данных. Защищенный с помощью функций доступа к данным корпоративного класса и шифрования, а также встроенными функциями высокого уровня доступности и восстановления базы данных, ядро СУБД SQL является полной платформой базы данных.

Мультимодальный движок базы данных

Ядро СУБД SQL — это многомодальный движок с целевыми форматами хранения, целевыми структурами индексов и единым оптимизатором запросов, который принимает решения на основе анализа затрат во всех моделях данных.

Продукты, использующие ядро СУБД SQL, могут быть корпоративной онлайн-обработкой транзакций (OLTP), оперативной аналитической обработкой (OLAP) или нереляционным решением для современных приложений. Реляционные, нормализованные данные могут быть общими для баз данных, но ядро СУБД SQL поддерживает множество моделей данных и форматов данных.

Все возможности отображаются в одном ядре СУБД SQL, используя один и тот же язык запросов Transact-SQL (T-SQL) в одном уровне безопасности и используя те же решения высокой доступности и аварийного восстановления.

Инструментальная оснастка

Ядро СУБД SQL поставляется с набором бесплатных, ведущих в отрасли средств для запросов, архитектуры данных, автоматизации и разработки баз данных.

Администратор базы данных (DBA) управляет резервным копированием и восстановлением, настройкой производительности, безопасностью и высокой доступностью.

Рекомендуемые инструменты:

Основы базы данных: соответствие ACID

Основной принцип любой RDBMS заключается в поддержке ACID-свойств транзакций. Транзакция является последовательностью операций, выполненных как одна логическая единица работы. Логическая единица работы должна содержать четыре свойства, чтобы квалифицироваться как транзакция: атомарность, согласованность, изоляция и устойчивость (ACID).

Недвижимость Описание
Atomicity Транзакция должна быть атомарной единицей работы; либо выполняются все входящие в нее изменения данных, либо не выполняется ни одно из этих изменений.
Согласованность По завершении транзакция должна оставить все данные в согласованном состоянии. В реляционной базе данных все правила и объявленные ограничения должны применяться к изменениям транзакции для обеспечения целостности данных.
Изоляция Изменения, внесенные одной транзакцией, должны быть изолированы от изменений, внесенных другими параллельными транзакциями. Частичные или промежуточные состояния между транзакциями не допускаются. Это свойство также называется сериализуемостью, так как это приводит к возможности воспроизведения ряда последовательных транзакций, которые приводят к тому же состоянию базы данных.
Durability После завершения транзакции она записывается в энергонезависимое хранилище, поэтому система фиксирует его эффекты даже в случае сбоя. Транзакции, зафиксированные только в переменной памяти (ОЗУ), не являются устойчивыми.

Дополнительные сведения о транзакциях см. в руководстве по блокировке транзакций и настройке версий строк. Подробные сведения о ядре СУБД SQL см. в руководствах по внутренней и архитектуре SQL Server.

По умолчанию ядро СУБД SQL является полной базой данных, совместимой с ACID. В интересах масштабирования или производительности разработчики баз данных могут намеренно обойти некоторые принципы ACID в ядре СУБД SQL. Например, они могут использовать отложенную устойчивость, неустойчивые таблицы или считывать незафиксированные данные. Во всех этих случаях разработчик делает выбор для компромисса с некоторыми свойствами ACID для достижения других целей. Такие компромиссы должны быть сделаны с осторожностью, поскольку они могут привести к проблемам целостности данных и повлиять на бизнес-результаты.

Поддержка функций платформы

Большинство функций Transact-SQL (T-SQL), которые используются приложениями, полностью поддерживаются на всех платформах ядра СУБД SQL. Например, основные компоненты SQL, такие как типы данных, операторы и строки, арифметические, логические и курсорные функции работают одинаково на всех платформах. Однако существует несколько различий T-SQL в языках определения данных (DDL) и языках обработки данных (DML). Эти различия приводят к тому, что инструкции и запросы T-SQL частично поддерживаются на различных платформах по причинам разработки.

В случае платформ как службы (PaaS) или программного обеспечения как службы (SaaS), например некоторые операционные системы или локальные возможности файлов отключены из-за логической или физической изоляции. Например, в автономной базе данных инструкции и параметры T-SQL недоступны, если они настраивают параметры уровня экземпляра, компоненты операционной системы или указывают конфигурацию файловой системы.

В следующей таблице перечислены основные функции ядра СУБД SQL со ссылками на обзорную документацию и краткие описания.

Функция Описание
Группы доступности AlwaysOn Высокая доступность предприятия и аварийное восстановление, синхронные или асинхронные, с доступными для чтения вторичными репликами
Always Encrypted Шифрование столбцов конфиденциальных данных на стороне клиента
Аудит Аудит административной деятельности
Резервное копирование и восстановление Защита и восстановление данных базы данных
Сжатие резервных копий Встроенное сжатие резервных копий
шифрование резервных копий Встроенное шифрование резервных копий
Расширение буферного пула Повышение операций ввода-вывода путем добавления ненулевого ОЗУ в буферный пул
Запись измененных данных Отслеживание и запись изменений данных
Колонковые индексы Колонковое хранилище для аналитических рабочих нагрузок
Динамическое маскирование данных Ограничение воздействия конфиденциальных данных
Кластеризация отказоустойчивости Корпоративная отказоустойчивая кластеризация для обеспечения высокой доступности и аварийного восстановления
Полнотекстовый поиск Расширенные возможности поиска текста
Таблицы графов Связи модели и графа запросов
OLTP в памяти Оптимизированные для памяти таблицы и процедуры
Индексированные представления Материализация представлений путем создания индексов
Поддержка JSON Хранение и запрос данных JSON со встроенными функциями JSON
Ledger Возможности защиты базы данных от изменений
Аутентификация Microsoft Entra Проверка подлинности учетных записей пользователей и служб на уровне предприятия
Обслуживание индексов в сети Обслуживание, которое не нарушает нормальную работу
Оптимизированная блокировка Улучшенный механизм блокировки транзакций
секционирование Масштабирование с использованием секционированных таблиц и индексов
PolyBase Виртуализация данных для запроса внешних источников данных
Хранилище запросов Встроенный монитор для настройки производительности запросов
Репликация Распределение данных между серверами
Безопасность на уровне строк Управление отфильтрованным доступом к табличным данным
Пространственные данные Хранение и запрос географических данных
Темпоральные таблицы Отслеживание полной истории изменений
Прозрачное шифрование данных Шифрование неактивных файлов базы данных
Поддержка векторов Хранение и обработка векторных встраиваний, векторный поиск по векторным индексам. Поддержка интеграции LangChain и интеграции семантического ядра.
Поддержка XML Хранение и запрос XML-данных, XML-индексов

Поддержка языка и драйвера:

Driver Описание
.NET драйвер ADO.NET для SQL
Вперед Драйвер Golang go-mssqldb для SQL
Java Драйвер JDBC для SQL
Node.js драйвер Node.js для SQL
ODBC Драйвер ODBC для SQL Server
OLE DB OLE DB Driver (драйвер) для SQL Server (сервер)
PHP Драйвер PHP для SQL
Python Драйвер Python mssql-python для SQL
Ruby Драйвер Ruby для SQL
Спарк Соединитель Spark для SQL

Современные платформы с помощью ядра СУБД SQL

На следующих современных платформах используется ядро СУБД SQL, начиная с флагманского продукта SQL Server.

Товар Модель развертывания
SQL Server Локальные виртуальные машины, включая SQL Server на виртуальной машине Azure, с поддержкой Arc, Windows, Linux и linux
База данных SQL Azure Полностью управляемая база данных, платформа как услуга (PaaS)
Управляемый экземпляр SQL Azure Полностью управляемый экземпляр базы данных, платформа как услуга (PaaS)
Хранилище данных Fabric Полностью управляемое хранилище, программное обеспечение как услуга (SaaS) в Microsoft Fabric
База данных SQL в Fabric Полностью управляемая база данных, программное обеспечение как услуга (SaaS) в Microsoft Fabric

В документации по SQL раскрывающийся список селектора версий является ключевым для понимания того, какая версия применяется к статье, ссылке на синтаксис, учебник или другое содержимое. Многие статьи Learn настраиваются для соответствия определенным платформам и возможностям SQL. В большинстве справочных статей SQL также есть панель значков с описанием применимых платформ для статьи. Дополнительные сведения о навигации по документации см. в руководстве по навигации по документации ПО SQL Server.

Бесплатные предложения

Начните сегодня бесплатно. Вы можете бесплатно попробовать ядро СУБД SQL с бесплатной подпиской Azure:

Migration

Целевая страница "Руководство по миграции баз данных Azure" содержит ссылки для быстрого запуска миграции с различных платформ на различные платформы Microsoft SQL.