![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Выбор СУБД
Решение данной проблемы является очень важным, так как именно от СУБД зависит процесс обработки данных, объём получаемой клиентом информации, загруженность трафика сети, защищённость данных и многое другое. Существует два типа серверных СУБД: · файл-серверные; · клиент-серверные. Файл-серверные СУБД. Они работают по следующему принципу: на машине-клиенте установлена данная СУБД, а на сервере хранятся все данные; клиент создаёт запрос, СУБД, принимая его, отправляет запрос серверу, получает по сети весь обрабатываемый файл, записывает его в оперативную память, а затем выполняет запрос пользователя. Клиент-серверные СУБД. В отличие от файл-серверных, данные СУБД не скачивают весь обрабатываемый файл на клиентскую машину, а лишь посылают серверу запрос пользователя. СУБД, установленная теперь уже на сервере, обрабатывает полученный запрос, проверяет права пользователя на данные действия, а затем выполняет поставленную ей задачу. Назад возвращается лишь результат запроса, т.е. какая-то таблица или другая информация, будь то текст, графика, анимация или видео. Безусловно, файл-серверные СУБД нам не подходят. Нам незачем записывать по несколько копий данных в пределах, например, одного данного компьютерного класса. Теперь осталось выбрать конкретную СУБД. Здесь важными показателями являются такие, как стоимость, свободный доступ, уровень защиты и другие. Рассмотрим несколько различных СУБД. Экспертная оценка СУБД приведена в таблице 2.1. Таблица 2.1. Экспертная оценка СУБД
MySQL MySQL является относительно небольшой и быстрой реляционной СУБД основанной на традициях Hughes Technologies Mini SQL (mSQL). Основные положительные стороны пакета MySQL. · Многопоточность. Поддержка нескольких одновременных запросов. · Оптимизация связей с присоединением многих данных за один проход. · Записи фиксированной и переменной длины. · ODBC драйвер в комплекте с исходником · Гибкая система привилегий и паролей. · До 16 ключей в таблице. Каждый ключ может иметь до 15 полей. · Поддержка ключевых полей и специальных полей в операторе CREATE. · Поддержка чисел длинной от 1 до 4 байт (ints, float, double, fixed), строк переменной длины и меток времени. · Интерфейс с языками C и perl. · Основанная на потоках, быстрая система памяти. · Утилита проверки и ремонта таблицы (isamchk). · Все данные хранятся в формате ISO8859_1. · Все операции работы со строками не обращают внимания на регистр символов в обрабатываемых строках. · Псевдонимы применимы как к таблицам, так и к отдельным колонкам в таблице. · Все поля имеют значение по умолчанию. INSERT можно использовать на любом подмножестве полей. · Легкость управления таблицей, включая добавление и удаление ключей и полей. Наиболее простой способ работы с MySQL сводится к использованию программы MySQL. Это клиентская часть СУБД MySQL. Можно выполнять команды SQL непосредственно из командной строки системы unix или из интерактивного режима MySQL. СУБД MySQL имеет библиотеку C API. Ее можно использовать для запросов к базе данных, вставки данных, создания таблиц и т.п. C API поддерживает все функции MySQL. Язык perl поддерживается сразу двумя способами: · Портирован интерфейс с perl из mini-SQL, разработанный Андреасом Коенигом · Есть модуль perl DBD Также доступен 32-битный ODBC драйвер для MySQL. Он позволяет запрашивать и получать данные из других источников с поддержкой ODBC. СУБД MySQL предоставляет в Ваше распоряжение подмножество языка SQL, соответствующее спецификации ANSI SQL 92. Основные цели MySQL - быстродействие и ошибкоустойчивость. Добавление транзакций принесет значительное быстродействие и повышение сложности. В настоящее время имеется проект, который должен дать подобные функциональные возможности. Это, вероятно, будет выполнено, с помощью введения атомарной модификации нескольких таблиц сразу. Ядро, на котором сформирован MySQL - набор подпрограмм, которые использовались в высокотребовательном окружении много лет. В то время как MySQL все еще находится в разработке, это уже предоставляет богатый и полезный функциональный набор. СУБД MySQL использует специальную базу данных для предоставления прав доступа к своим базам данных. Эти права могут базироваться на именах серверов и/или пользователей и предоставляться для одной или нескольких баз данных. Пользовательские аккаунты могут быть снабжены паролями. При обращении к базе данных, пароль шифруется. Поэтому он не может быть перехвачен и использован посторонним. Зашифрованный пароль сохраняется в таблице пользователей ('user'). · При установлении соединения сервер посылает случайное число клиенту. · Клиент шифрует пароль, чтобы получить то, что имеет сервер (он хранит пароли в зашифрованном виде) и вычисляет число из полученного с сервера случайного числа и зашифрованного пароля. Это число отсылается на сервер. · Сервер вычисляет число из сохраненного в зашифрованном виде пароля и сгенерированного случайного числа. Если это число совпадет с тем, которое прислал клиент, связь устанавливается. MySQL для хранения данных использует три типа таблиц: с фиксированной длиной строки, с динамической длиной строки и сжатые таблицы. Кроме того, MySQL имеет довольно высокую надёжность и распространяется бесплатно. От PostgreSQL пришлось отказаться, т.к. предполагается, что на машинах, где будет работать наша программа, установлена операционная система Windows. Включает в себя таблицы: · Приходный документ; · Поставщики; · Договор с поставщиками; · Поступление товара; · Автотранспорт; · Покупатели; · Отпуск товара; · Расходный документ; · Транспортировка; · МЦ; · Карточка МЦ; · Перемещение; · Новое место; · Место хранения; · Габариты В созданной базе данных вся информация хранится в 15 таблицах. Схема данных представлена на рисунке 2.4. В таблице «Приходный документ» хранится информация о поступлении материалов, которая обращается к справочнику: «Поставщик» для выбора из списка поставщиков. В таблице «Накладная на внутреннее перемещение» содержится информация о дате перемещения, старое место, код товара. В таблице «Карточка МЦ» содержится информация о наименовании МЦ, дате составления, МОЛ, количестве товара, номере карточки, коде товара. В таблице «Поставщики» содержится информация о поставщике, его адрес и номер договора. В таблице «Расходный документ» содержится информация о дате продажи, покупателе, номере грузовика и номере накладной продажи. В таблице «МЦ» содержится информация о коде товара, идентификационном номере, наименовании товара, технических характеристиках, единице измерения, сроке хранения, наименовании места хранения.
Рис. 2.4 Даталогическая модель
|