Шрифт:
Интервал:
Закладка:
transaction isolation изоляция транзакции, уровень изолированности транзакции
Механизм, при котором каждая транзакция поддерживается окружением так, что она воспринимает себя, как если бы она выполнялась одна в базе данных. Когда одновременно выполняется множество транзакций, то действия всех других транзакций не видны каждой транзакции, если на момент ее старта эти действия не были подтверждены. Firebird поддерживает не один, а три уровня изоляции, включая один уровень, который может видеть результаты работы других транзакций, когда они подтверждаются. См. Read Committed, Snapshot, Snapshot Table Stability
transitively dependent транзитивно зависимый
Ограничение или условие, при котором одна таблица С является зависимой от другой таблицы А, потому что таблица С зависит от другой таблицы В, которая зависит от таблицы А. Подобная зависимость может, например, возникать, если таблица В имеет внешний ключ, ссылающийся на первичный ключ таблицы А, а таблица С имеет внешний ключ, ссылающийся на первичный ключ таблицы В. Этот термин также используется при моделировании данных для обозначения условий, когда в процессе нормализации атрибут одной сущности имеет частичную (но не полную) зависимость от набора уникальных атрибутов другой сущности
trigger триггер
Скомпилированный модуль, принадлежащий таблице, который выполняет действие, когда происходит событие DML для строки этой таблицы. На событие до и/или после операций добавления, изменения или удаления строки таблицы можно создать любое количество триггеров, используя все возможности процедурного SQL (PSQL)
tuple кортеж
В терминологии реляционных баз данных это "строго корректное" имя для строки в таблице или для группы столбцов, которые являются подмножеством строки. Борцы за чистоту языка скажут, что в SQL кортеж именуется строкой
UDF
Аббревиатура для User Defined Function (функция, определенная пользователем). Более корректно - внешняя функция. См. также external function
unbalanced index несбалансированный индекс
Индексы Firebird поддерживаются в виде структур двоичных деревьев. Про такие структуры говорят, что они разбалансированы[183] , когда новые узлы все время добавляются таким образом, что это приводит к значительному ветвлению одной "стороны" двоичного дерева. Обычно такое происходит, когда процесс добавляет сотни тысяч новых строк в одной транзакции. По этой причине рекомендуется деактивировать индексы в процессе объемных добавлений. Последующая активация пересоздаст полностью сбалансированные индексы
uninstallation деинсталляция
Уродливое обратное словообразование, путающее говорящих не на английском языке, в то время как оно до сих пор не существует ни в одном уважающем себя словаре! Оно приблизительно означает "процесс, обратный инсталляции" (то есть удаление ранее установленного программного продукта из компьютерной системы)
union объединение
Предложение в спецификации запроса SELECT, которое позволяет строки двух или более операторов SELECT объединять в один конечный выходной набор, если объединяемые наборы соответствуют друг другу по количеству, типам данных и размерам их выходных столбцов. Эти наборы могут быть выбраны из различных таблиц
updatable view изменяемый просмотр
Про просмотр говорят, что он изменяемый, если он получен из обычного запроса к одной таблице и все его столбцы существуют в базовой таблице. Некоторые неизменяемые просмотры могут быть сделаны изменяемыми путем создания для них триггеров. См. также view
validation проверка
Механизм, с помощью которого новые данные, помещаемые в столбец таблицы, проверяются некоторым образом для определения, соответствуют ли они требуемому формату, значению или диапазону значений. Двумя способами реализации проверок в базе данных являются ограничения CHECK и триггеры. Ограничение CHECK будет вызывать исключение, если входные данные не пройдут проверку в существующем выражении или ограничении. В триггерах значение NEW.VALUE может быть протестировано более детально, и если оно ошибочно, то можно выдать пользовательское исключение
versioning architecture версионная архитектура
То же, что и Multi-Generational Architecture (MGA, многоверсионная архитектура). Механизм, создающий новую версию строки при ее изменении или удалении. До COMMIT такая версия не видна другим транзакциям, кроме той, в которой было произведено это изменение или удаление. После COMMIT новая версия записи становится постоянной, а старая становится или устаревшей или все еще актуальной для конкурирующих транзакций (в зависимости от их уровня изолированности). Это позволяет целиком исключить ненужные блокировки чтения, а блокировки модификации возникают только тогда, когда конкурирующие транзакции пытаются обновить одну и ту же запись
view просмотр, представление
Стандартный объект SQL, который хранит спецификацию запроса и ведет себя так же, как и обычная таблица. Просмотр не хранит данные на диске - он действует как предварительно определенный контейнер для набора выходных данных, которые находятся в одной или более таблицах
WNET error ошибка WNET
В протоколе firebird.log отмечает ошибку, полученную сетевой подсистемой Firebird от протокола именованных каналов Windows (Windows Named Pipes) соединения клиент-сервер
XSQLDA
Аббревиатура для extended SQL Descriptor Area (расширенная область дескрипторов SQL). Это структура API, которая используется для передачи данных между клиентским приложением и серверным модулем синтаксического анализа динамического SQL. XSQLDA существуют в двух видах: входные дескрипторы и выходные дескрипторы
XSQLVAR
Структура для определения sqlvar, важного поля в структуре XSQLDA, которая используется для передачи и получения входных и выходных параметров
Y valve затворка Y
Имя, данное подсистеме Firebird, определяющее, который из "внутренних движков" Firebird должен быть использован при подключении к базе данных. Например, использовать локальное подключение или сетевое, или какую функциональность нужно подключить при работе с базой данных, имеющей конкретный номер ODS
Примечания
1
Квадратные скобки могут присутствовать в операторах DDL для задания размерности массивов. -Прим. перев.
2
Не думайте, что копирование файла базы данных на компакт-диск сделает базу данных базой только для чтения. База данных должна быть сделана только для чтения с использованием утилит gbak или gfix до записи на компакт-диск. См. соответствующие главы по инструментам в части IX.
3
Под 64-битовым вводом/выводом имеется в виду поддержка в сервере, операционной системе и файловой системе работы с файлами размером больше 4 Гбайт, что требует не старой 32-битовой адресации, а 64-битовой. Это не имеет отношения к поддержке 64-разрядных процессоров. - Прим. науч. ред.
4
Заметьте, однако, что пользовательские библиотеки внешних функций не являются переносимыми между платформами. Необходимо создавать версии этих библиотек для каждой платформы, на которой может располагаться база данных. Все платформы, поддерживающие Windows, могут использовать те же библиотеки Windows; библиотеки разделяемых объектов для платформ POSIX не обязательно будут выполняться на всех платформах POSIX.
5
Из-за ошибки в Windows использование DummyPacketlnterval может привести к зависанию или краху Windows на клиентской стороне. Объяснения см. в следующей статье Microsoft Support: http://support,microsoft.com/default.aspx?kbid=296265. Не рекомендуется его использовать и в системах, отличных от Windows. Он может даже мешать возможному отключе-
6
По умолчанию [x]inetd в своем файле конфигурации имеет ограничение на число стартуемых экземпляров конктретного сервиса. Это может проявляться как ошибка при подключении очередного пользователя (напрмер, невозможно подключить более 60 пользователей). Отредактируйте файл конфигурации [x]inetd и установите желаемый лимит количества сервисов fb_inet_server, т.е. количества подключний к Классическому серверу FireBird. Прим. науч. ред.
7
Строго говоря, наличие уникального ключа в таблице не является обязательным для реляционных баз данных, хотя его наличие весьма желательно. - Прим. перев.
8
Трудно определить, какой возможен максимальный размер баз данных Firebird. Пользователи сообщают о базах данных в 900 Гбайт, которые еще "продолжают расти".
9
О двухфазном подтверждении транзакций см. в главе 25.
10
Рекомендуется свободно распространяемый драйвер IBProvider Дмитрия Коваленко. Подробности см. на http://www.ibprovider.com/rus/index.html.
- Delphi. Учимся на примерах - Сергей Парижский - Программирование
- Сделай видеоигру один и не свихнись - Слава Грис - Программирование / Руководства
- Психбольница в руках пациентов - Алан Купер - Программирование