p align="left">Среда Delphi обладает с одной стороны, высокой производительностью приложений благодаря созданию полностью скомпилированного кода, удобной настраиваемой средой разработки, компонентной архитектурой, позволяющей строить приложение путем сборки его из отдельных компонентов, множество которых имеет широкое распространение, а с другой стороны - возможностью доступа к разнообразным данным, начиная от плоских таблиц типа dBase и Paradox и заканчивая разнообразными серверными СУБД. С помощью Delphi возможен достаточно безболезненный переход к архитектуре клиент-сервер по сравнению с другими средствами, модернизация с помощью которых была бы сопряжена с большими трудовыми и материальными затратами. На сегодняшний день Delphi является одним из самых распространенных средств создания приложений баз данных для корпоративных применений. Простота и естественность языка, ориентация системы на разработку именно такого рода приложений, наконец, эффективность (большая производительность и небольшие размеры) создаваемых с ее помощью программ сделали Delphi незаменимым средством разработки различного рода клиентских мест, т.е. программ для доступа к базам данных. [3] Delphi представляет собой 32-разрядную рабочую среду для создания 32-разрядных приложений, которые могут исполняться под управлением Windows 95, 98 или Windows NT. В основу этого программного продукта легли концепции объектно-ориентированного программирования на базе языка Object Pascal и визуального подхода к построению приложений. Delphi позиционируется фирмой Inprise как средство создания полноценных распределенных корпоративных систем доступа к данным [4]. Но в то же время среда разработки сохранила простоту и наглядность процесса создания приложений, основанного на использовании технологий визуального программирования. Компонентный подход позволяет легко и быстро создавать не только интерфейс программ, но и достаточно сложные механизмы доступа к данным, а также повторять и тиражировать удачные программные решения. Delphi позволяет также создавать прикладные программы за рекордно короткое время, поскольку можно оперативно поочередно выполнять и отлаживать свою программу в рамках среды разработки. Оптимизирующий компилятор Delphi прозрачно и быстро преобразует интерфейс и программу на исходном языке в компактную исполняемую программу на машинном языке или в библиотеку динамических связей DLL. В состав поставки Delphi входит множество средств для разработки и эксплуатации приложений, использующих базы данных: машина баз данных Borland Database Engine (BDE), представляющая собой набор dll-библиотек, обеспечивающих низкоуровневый доступ к локальным и клиент / серверным СУБД; драйверы для работы с удаленными серверами данных SQL Links; утилита для установки псевдонимов баз данных, параметров и драйверов БД на конкретном компьютере; средство для создания, изменения и просмотра БД Database Desktop, ориентированное на работу с локальными СУБД; универсальная утилита SQL Explorer, позволяющая вести визуальное программирование БД с использованием данных от сервера; средство для трассировки выполнения SQL-запросов SQL Monitor и другие средства разработки приложений для БД. Все это делает Delphi одним из самых удобных средств программирования. 2.3 Анализ СУБД и выбор БД для создания информационной модели Базами данных (БД) называют электронные хранилища информации, доступ к которым осуществляется с помощью одного или нескольких компьютеров. Обычно БД создается для хранения и доступа к данным, содержащим сведения о некоторой предметной области человеческой деятельности или области реального мира. Почти все продукты, созданные с конца 70-х годов, основаны на подходе, который называют реляционным. Реляционный подход представляет собой основную тенденцию сегодняшнего рынка, и реляционная модель - единственная наиболее существенная разработка в истории развития БД. Реляционная БД - это база данных, в которой данные воспринимаются пользователем в виде таблиц. [2] Системы управления базами данных (СУБД) - это программные средства, предназначенные для создания, наполнения, обновления и удаления баз данных. [3] В зависимости от расположения различают локальные и распределенные (удаленные) СУБД. Все части локальной СУБД размещаются на компьютере пользователя базы данных. Локальный вариант реально может обеспечить лишь однопользовательский режим доступа к данным. Этот вариант на предприятиях практически не встречается, так как в нем чрезвычайно трудно синхронизировать содержимое нескольких копий БД, количество которых (копий) должно равняться количеству одновременно работающих с данными пользователей. До недавнего времени для организации коллективных БД использовалась, как правило, архитектура файл-сервер. В файл-серверных БД данные располагаются на сетевом файл-сервере, который может быть доступен одновременно нескольким пользователям, поэтому к таким БД возможен многопользовательский режим доступа. Данные в БД хранятся в единственном экземпляре, а каждый клиент в каждый момент времени работает с некоторой локальной копией этих данных, причем управление данными целиком возлагается на клиентские программы. Именно они должны заботиться о синхронизации локальных копий данных на каждом клиентском месте с содержимым основной (и единственной) базы данных. В ходе эксплуатации таких систем были выявлены общие недостатки файл-серверной архитектуры, которые состоят в следующем. Вся тяжесть вычислительной работы ложится на компьютер клиента; на рабочую станцию присылаются не только данные, необходимые конечному пользователю, но и данные, которые будут использоваться для выполнения запроса и затем будут отброшены. Объем лишней информации может быть значительно больше, чем объем информации нужной. В результате возрастает загрузка сети, и увеличиваются требования к аппаратным мощностям пользовательского компьютера. Поскольку БД представляет собой набор файлов на сетевом сервере, доступ к таблицам регулируется только сетевой операционной системой, что делает такую БД по сути беззащитной от случайного или намеренного искажения хранящейся в ней информации, уничтожения или хищения. Бизнес-правила в системах файл-сервер реализуются в программе клиента, что в принципе не исключает проектирование противоречащих бизнес-правил в различных программах. Смысловая целостность информации при этом может нарушаться. Недостаточно развитый аппарат транзакций локальных СУБД служит потенциальным источником ошибок как при одновременном внесении изменений в одну и ту же запись, так и при реализации отката результатов серии объединенных по смыслу в единое целое операций над БД, когда некоторые из них завершились успешно, а некоторые - нет. Это может нарушать ссылочную и смысловую целостность БД. Перечисленных недостатков во многом лишены СУБД, построенные по архитектуре клиент-сервер. В архитектуре клиент-сервер между клиентом и БД появляется важное промежуточное звено - сервер БД (специальная программа, управляющая базой данных) Клиент формирует запрос к серверу на языке запросов SQL (Structured Query Language - структурированный язык запросов), являющийся промышленным стандартом для реляционных БД. SQL-сервер обеспечивает интерпретацию запроса, его выполнение, формирование результата и выдачу этого результата клиенту. При этом ресурсы клиентского компьютера не участвуют в физическом выполнении запроса: клиентский компьютер лишь отсылает запрос к серверной БД и получает результат, после чего интерпретирует его необходимым образом и предоставляет пользователю. Так как клиентскому компьютеру посылается результат выполнения запроса, по сети передаются только те данные, которые в действительности нужны клиенту. В итоге снижается нагрузка на сеть. Кроме того, SQL-сервер, если это возможно, оптимизирует полученный запрос таким образом, чтобы он был выполнен за минимально возможное время. Все это повышает быстродействие системы и снижает время ожидания результата запроса. При выполнении запросов сервером существенно повышается степень безопасности данных, поскольку правила целостности данных определяются на сервере и являются едиными для всех приложений, использующих эту БД. В результате исключается возможность определения противоречивых правил поддержания целостности. Мощный аппарат транзакций, поддерживаемый SQL-серверами, блокирует одновременное изменение одних и тех е данных различными пользователями и предоставляет возможность откатов к первоначальным значениям при внесении в БД изменений, закончившихся аварийно. Данные в серверной БД обычно физически хранятся на диске в виде одного большого файла, что в сочетании с назначаемыми каждому пользователю паролями и привилегиями существенно повышает защиту данных от намеренной порчи и хищений. По вышеназванным причинам при разработке базы данных в дипломном проекте была выбрана архитектура клиент-сервер. В архитектуре клиент-сервер используются промышленные серверы данных типа Oracle, MS SQL Server, Informix, Sybase, InterBase и ряд других [5]. Серверы Oracle, Informix, Sybase управляют базами данных объемом десятки и сотни гигабайт. Для управления меньшими корпоративными базами данных MS SQL Server и InterBase. Каждый тип сервера работает на собственном диалекте языка, который более или менее соответствует стандарту ANSI 92. Серверы Oracle и InterBase имеют некоторые дополнения. А диалекты серверов Sybase и MS SQL отличаются от стандарта довольно сильно. [4] Oracle была первой коммерческой реляционной СУБД, поддерживающей ставший ныне индустриальным стандартом язык SQL; ее первая версия появилась в 1970 году. Ранние версии этой СУБД были предназначены для мэйнфреймов, а в качестве рабочих мест использовались терминалы. Однако со временем появились версии Oracle, предназначенные для использования в архитектуре клиент-сервер (первой такой версией была Oracle 5, выпущенная в 1985 году). Первоначально версии Oracle были предназначены для различных серверных платформ. Первые версии этого сервера для персональных компьютеров появились в середине 90-х годов. Oracle была первой компанией, создавшей СУБД, использовавшую предоставляемыми некоторыми серверными платформами средства параллельных вычислений. На сегодняшний день последней версией этого сервера является версия Oracle 8i, отличительными свойствами которой являются: наличие объектных расширений и соответствующих типов данных; наличие функций аналитической обработки данных; возможность создания таблиц, содержащих агрегатные данные; поддержка хранения мультимедиа-данных; дополнительные возможности обеспечения безопасности данных, например, шифрование данных; возможность создания систем, устойчивых к сбоям и ряд других. Oracle производит собственные средства разработки клиентских приложений, например, Developer/2000 или Oracle Power Objects, а также предоставляет пользователям возможность создавать клиентские приложения с помощью других средств. [5] Первая версия Microsoft SQL Server предназначалась для платформы OS/2, последующие версии этого сервера баз данных предназначались для платформы Windows NT и со временем были тесно интегрированы с этой операционной системой. На сегодняшний день наиболее широко используемой является выпущенная в 1998 году версия Microsoft SQL Server 7.0. Эта версия предназначена исключительно для платформы Windows NT, в ее состав входят удобные утилиты администрирования, сервисы преобразования данных, поддержка распределенных запросов и транзакций, утилиты для создания хранилищ данных. Клиентские приложения для Microsoft SQL Server можно создавать как с помощью средств разработки Microsoft - Visual Basic, Visual C++ и других, так и с помощью средств разработки других производителей. Для этого поставляются специальные драйверы и библиотеки. [5] Ведущий продукт фирмы Informix - Informix Dynamic Server, последняя версия которого называется Informix Dynamic Server.2000. Данный продукт поддерживает платформы UNIX и Microsoft SQL Server и обеспечивает эффективную работу как на одно-, так и на многопроцессорных системах. В числе основных характеристик сервера следует отметить следующие: использование для управления дисковым пространством как средств ОС, так и собственных функций, что позволяет добиться более высокой производительности;
Страницы: 1, 2, 3, 4, 5, 6
|