Обзор компонента Database Engine (SQL Server Compact)
Компонент Microsoft SQL Server Compact Database Engine — это базовая технология для хранения, обработки и защиты данных. С помощью компонента SQL Server Compact Database Engine можно создавать, открывать и изменять базы данных SQL Server Compact в веб-приложениях. Компонент Database Engine обеспечивает контролируемый доступ и быструю обработку транзакций для удовлетворения требований приложений, использующих данные, на предприятии.
Компоненты ядра СУБД
Компонентами SQL Server Compact Database Engine являются подсистема хранилища и обработчик запросов.
Подсистема хранилища
Ядро хранилища данных SQL Server Compact выполняет следующие функции.
Управление файлом, в котором хранится база данных, а также использование его пространства.
Составление и чтение физических страниц, используемых для хранения данных.
Управление буферами данных и всеми операциями ввода-вывода физических файлов.
Управление транзакциями и использование блокировки для контроля одновременного доступа пользователей к строкам и схемам базы данных.
Обеспечение ACID (атомарность, целостность, изоляция и надежность) транзакций.
Создание и поддержка структуры индексов.
Поддержка целостности ссылочных данных.
Поддержка шифрования и защиты баз данных паролем.
Обработчик запросов
Обработчик запросов SQL Server Compact разбирает, компилирует, оптимизирует и исполняет выражения, запросы и команды SQL.
Синтаксис языка SQL, используемого SQL Server Compact, является подмножеством синтаксиса Transact-SQL, поддерживаемого сервером MicrosoftSQL Server. При разборе проверяется синтаксис запроса и создаются структуры данных, представляющих разобранный запрос. Затем обработчик запросов компилирует и оптимизирует запрос. Во время оптимизации запроса обработчик запросов создает для него план выполнения.
При обработке запроса оптимизатор запросов SQL Server Compact учитывает все доступные и в том числе следующие индексы.
Инструкции языка управления данными (DML).
Объединение и исчисление предикатов с ORDER BY.
Предложения GROUP BY и DISTINCT.
После этого обработчик запросов исполняет команды SQL и возвращает результаты запроса.
Обработчик запросов SQL Server Compact автоматически создает статистические сведения о распределении значений в индексе. Обработчик запросов использует эти сведения для определения оптимальной стратегии оценки запроса. Обработчик запросов использует статистику для выбора наиболее подходящего индекса для эффективной обработки.
Примечание
Любой выбор индекса может быть перезаписан с помощью подсказок индекса. Кроме того, поддерживается принудительный порядок объединения.
См. также
Основные понятия
Транзакции (SQL Server Compact)
Блокировки (SQL Server Compact)