на тему рефераты
 
Главная | Карта сайта
на тему рефераты
РАЗДЕЛЫ

на тему рефераты
ПАРТНЕРЫ

на тему рефераты
АЛФАВИТ
... А Б В Г Д Е Ж З И К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Э Ю Я

на тему рефераты
ПОИСК
Введите фамилию автора:


Реферат: Организация Web-доступа к базам данных с использованием SQL-запросов


О конструировании предложений модификации

Для тех, кто достаточно хорошо понял предложение SELECT, несложно овладеть конструированием предложений DELETE, INSERT и UPDATE. Но в процессе такого конструирования следует учитывать, что:

3.    Если в WHERE фразе предложений DELETE и UPDATE используется вложенный подзапрос, то во фразе FROM этого подзапроса не должна упоминаться таблица, из которой удаляются (в которой обновляются) строки. Аналогично, в подзапросе предложения INSERT не должна упоминаться таблица, в которую загружаются данные.

Так, SQL отвергнет предложение

INSERT

INTO      Выбрано

SELECT    (33), Т, БЛ

FROM      Выбрано

WHERE     СМ = 17;

позволяющее ввести информацию о том, что отдыхающий, сидящий на 33-м месте, выбирает тот же набор блюд, что и отдыхающий, сидящий на 17-м месте. Ввод придется осуществить через какую-либо промежуточную таблицу, например, таблицу Выбор:

DELETE

FROM      Выбор;

INSERT

INTO      Выбор  (СМ, Т, БЛ)

SELECT    (33), Т, БЛ

FROM      Выбрано

WHERE     СМ = 17;

INSERT

INTO      Выбрано

SELECT    СМ, Т, БЛ

FROM      Выбор;

4.    Составляя предложения модификации данных, необходимо все время помнить о сохранении непротиворечивости базы данных. Об этом упоминалось ранее и подробно говорилось в литературе.

2.3. Обзор основных SQL-серверов.

2.3.1. SQL-сервер Oracle.

Общая характеристика продуктов Oraсle

Все продукты Oracle (СУБД, средства разработки, средства для конечного пользователя, сетевые компоненты) являются открытыми, масштабируемыми и программируемыми. Они позволяют разрабатывать приложения, как уровня небольшой рабочей группы, так и уровня огромного предприятия с тысячами пользователей, террабайтными базами, размещенными в различных зданиях и даже странах.

Средства Oracle позволяют надежно защитить эти данные, обеспечить их целостность и непротиворечивость. Продукты Oracle работают более чем на ста вычислительных платформах (компьютер + операционная система), поддерживают все основные промышленные сетевые протоколы и графические оконные среды. Это позволяет с минимальными затратами переносить готовые приложения с одной платформы на другую. Например, разработав приложение на однопроцессорном персональном компьютере с MS Windows, Вы можете далее выполнять его на Unix – машинах, больших IBM машинах, SMP и MPP архитектурах, высоко надежных и кластерных архитектурах.

При повышении нагрузки на приложение, можно заменить сервер на более мощный, добавить еще один сервер, вынести часть обработки в другой узел и т. д. Если клиент работал через терминал, а затем решил перейти к архитектуре клиент – сервер или даже переместился в другой город, он сможет продолжать работать с теми же БД Oracle. Все это не потребует модификации кода приложений.

С помощью средств Oracle можно реализовать оперативную обработку (OLTP – системы), системы поддержки принятия решений (DSS – системы) и системы накопления и анализа больших объемов данных (Data Warehouse и OLAP – системы). Oracle поддерживает все основные стандарты:

·     FIPS 127-2, ANSI X3-135.1992 – для БД;

·     NCSC TDI C2, B1, ITSEC F – C2/E3, F – B1/B3 – по защите данных;

·     OSI, DNSIX (MaxSix), SNMP – для сети;

·     ODBC, TSIG, X/Open, DCE, DDE, OLE, OCX, VBX – для взаимодействия приложений.

Классификация продуктов Oracle

Все многообразие продуктов фирмы Oracle можно разделить на следующие группы:

·     Oracle7 Server – ядро СУБД и дополнительные компоненты ядра (опции). Они необходимы для хранения, поиска, извлечения, обработки и администрирования данных;

·     инструментальные средства разработки приложений. Это, в первую очередь, набор средств разработчика Developer/2000, а также прекомпиляторы с языков 3GL и библиотека CALL-интерфейса;

·     средства автоматизации проектирования и разработки (CASE-средства) – Designer/2000;

·     средства для конечных пользователей. Это набор средств Descoverer/2000, офисная система Oracle Office, средства хранения и обработки текстов Text Server (c Context и CoAutor);

·     средства для анализа данных и создания OLAP (online analyse processing) приложений – Express – продукты;

·     средства для обеспечения работы продуктов Oracle в компьютерной сети. Это SQL*Net с драйверами различных сетевых протоколов, средства управления сетью, кодирования данных, преобразования протоколов;

·     средства для взаимодействия с пакетами других фирм. Это шлюзы по данным (Transparent Gateway) к различным СУБД и процедурные шлюзы; ODBC драйвер, Oracle Objects for OLE, универсальный пакет связи Oracle Glue;

·     продукты для рабочих групп – Workgroup/2000. К этой группе относится нерасширяемое ядро Oracle для персональных компьютеров, однопользовательский персональный Oracle, средства разработки небольших приложений-Oracle Power Objects. Продукты для рабочих групп отличаются компактностью, простотой установки и использования, а так же низкими ценами;

·     готовые прикладные системы – Oracle Applications. Среди них наиболее известными являются: Oracle Financial – финансовые, Oracle Manufacturing – управление производством, Oracle Human Resources – кадры, бухгалтерия;

·     новые направления. К этой группе можно отнести продукты для работы с мультимедиа (Media Server, Media Net, Media Objects), средства для работы с БД по медленным и ненадежным сетям (радиомодемы, телефоны, сотовая связь) – Oracle Mobile Agents, средства для работы с БД по Internet (WWW Viewer и WWW сервер).

Oracle7 Server

Универсальный сервер Oracle позволяет хранить и обрабатывать самые разные типы данных. Кроме привычных структурированных данных (числа, строки, дата, время) можно работать с неструктурированными данными, такими как тексты, многомерные пространственные данные, изображения, видео, аудио. При этом Oracle обеспечивает надежность хранения и быстроту доступа к этим данным, а так же возможность создания приложений, работающих со всеми этими данными в комплексе.

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

Встроенные оптимизаторы запросов, использование алгоритмов хеширования, битовых индексов и B-деревьев, возможность тонкой настройки СУБД на возможности среды эксплуатации также позволяют обеспечить очень высокое быстродействие. Дополнительная компонента ядра Parallel Query Option позволяет ускорить работу существующих приложений за счет использования возможностей многопроцессорных машин. Эта компонента резко снижает время выполнения отдельного запроса, загрузки данных, построения индекса и т. д. За счет разбиения операций (например, оператора Select) на части и выполнения этих частей параллельно на разных процессорах. Увеличение числа процессоров с 1 до 10 позволяет ускорить выполнение запроса в 8 раз, что очень важно для работы с очень большими БД.

Компоненты Oracle Parallel Server позволяет СУБД Oracle и приложениям работать на МРР и кластерных архитектурах. Наиболее часто кластер реализуется на базе компьютеров фирм DЕC, Sequent, HP, Sun, IBM (RS 6000). При этом все машины кластера могут работать с одной и той же БД (что ускоряет и распараллеливает работу), а при выходе из строя одного из узлов кластера, другие узлы аккуратно отработают отказ и возьмут на себя дальнейшую обработку данных. Использование Oracle на кластере компьютеров позволяет относительно недорого обеспечить высоконадежное и быстрое решение задач.

Oracle Server позволяет реализовать как односерверную, так и многосерверную архитектуру БД. В случае многосерверной архитектуры узлы могут отстоять на большое расстояние, размещаться на разных ОС и компьютерах, связываться по разным сетевым протоколам. На основе многосерверной архитектуры Oracle позволяет реализовать как распределенную базу данных, так и репликацию.

Компонента Distributed Option позволяет приложению работать с распределенной БД так же, как с локальной. Автоматически реализуемый протокол 2х-фазной фиксации позволяет одновременно модифицировать данные в разных узлах БД. Узлы всегда находятся в согласованном состоянии, однако для этого требуется постоянное наличие связи между узлами. Механизм репликации не требует постоянного наличия связи между узлами. Через заданные промежутки времени или при восстановлении связи, изменения, сделанные в данном узле, будут отрабатываться в копиях таблиц в других узлах. Можно реализовать не только простую репликацию (изменения распространяются от таблицы – мастер к копиям), но и сложную репликацию (когда в узлах хранятся копии одной и той же таблицы и их можно одновременно обновлять).

Сложную репликацию реализует компонента Advance Replcation Option, она же помогает задать механизм разрешения возникающих коллизий. Oracle Server имеет средства для реализации Backup копии Вашей базы, готовой быстро вступить в действие при уничтожении основной базы.

2.3.2. Microsoft SQL сервер.

Microsoft SQL Server для Windows NT является основным средством обработки больших объемов информации. Новая версия SQL Server значительно расширена для повышения производительности СУБД, упрощения администрирования, повышения надежности и скорости обработки данных.

Обзор продукта

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


История развития SQL Server

SQL Server 4.21a

SQL Server 6.0 SQL Server следующие версии
NT Server NT Server Cairo

Симметричная архитектура сервера (SMP)

Графические средства администратора

Унифицированная регистрация в сети

Расширенные хранимые процедуры

Интеграция с эл. Почтой

SQL Object Manager

Service Manager

RPC для доступа к БД

Performance monitor

ANSI89 Level 1

Тиражирование данных

Параллельная обработка БД

Сканирование, индексирование, создание и восстановление страховых копий, загрузка

Поддержка очень больших БД

Оптимизатор, опережающее чтение, управление блокировками

Распределенное управление

OLE automation

ODBC курсоры

Расширения языка

ANSI92 (95.1)

X/A (95.1)

Унифицированное хранение данных

Параллельные запросы

Distributed joins

Доступ к данным OLE

Проверка версий, блокировка на уровне записи

Защита средствами Cairo, каталоги

Пользовательские функции

Интеграция с репозитарием объектов

Microsoft SQL Server 6.0 –специально разработана для удовлетворения требований, предъявляемых системами распределенной обработки данных (таких как тиражирование данных, параллельная обработка, поддержка больших баз данных (БД) на относительно недорогих аппаратных платформах, сохраняющая простоту управления и использования). Сервер имеет средства удаленного администрирования и управления операциями, организованные на базе объектно- ориентированной распределенной среды управления. Новые возможности, такие как OLE Automation и средства программирования административных задач на языке Visual Basic for Applications, обеспечивают интеграцию с приложениями, работающими на ПК. По-прежнему Microsoft уделяет очень большое внимание соответствию своих продуктов существующим промышленным стандартам, что отразилось в расширенной поддержке ANSI SQL и ODBC.

Microsoft SQL Server 6.0 входит в состав семейства Microsoft BackOffice, объединяющего пять серверных приложений, разработанных для совместного функционирования в качестве интегрированной системы. Она позволяет пользователям повысить производительность процесса принятия решений средствами систем, базирующихся на архитектуре клиент-сервер. Кроме того, Microsoft SQL Server 6.0 завершает линию средств разработки, включающих Microsoft Access, Visual FoxPro®, Visual Basic и Visual C++™.

2.3.3. MySQL-сервер.

MySQL – компактный многопоточный сервер баз данных. MySQL характеризуется большой скоростью, устойчивостью и легкостью в использовании.

MySQL был разработан компанией TcX для внутренних нужд, которые заключались в быстрой обработке очень больших баз данных. Компания утверждает, что использует MySQL с 1996 года на сервере с более чем 40 БД, которые содержат 10,000 таблиц, из которых более чем 500 имеют более 7 миллионов строк.

MySQL является идеальным решением для малых и средних приложений. Исходные тексты сервера компилируются на множестве платформ. Наиболее полно возможности сервера проявляются на Unix-серверах, где есть поддержка многопоточности, что дает значительный прирост производительности. На текущий момент MySQL все еще в стадии разработки, хотя версии 3.22 полностью работоспособны.

MySQL-сервер является бесплатным для некоммерческого использования. Иначе необходимо приобретение лицензии, стоимость которой составляет 190 EUR.

Возможности MySQL.

MySQL поддерживает язык запросов SQL в стандарте ANSI 92, и кроме этого имеет множество расширений к этому стандарту, которых нет ни в одной другой СУБД.

Краткий перечень возможностей MySQL:

1.Поддерживается неограниченное количество пользователей, одновременно работающих с базой данных.

            2.Количество строк в таблицах может достигать 50 млн.

            3.Быстрое выполнение команд. Возможно MySQL самый быстрый сервер из существующих.

            4.Простая и эффективная система безопасности.

            MySQL – очень быстрый сервер, но для достижения этого разработчикам пришлось пожертвовать некоторыми требованиями к реляционным СУБД.

В MySQL отсутствуют:

            1.Поддержка вложенных запросов, типа SELECT * FROM table1 WHERE id IN (SELECT id FROM table2). Утверждается, что такая возможность будет в версии 3.23.

            2.Не реализована поддержка транзакций. Взамен предлагается использовать LOCK/UNLOCK TABLE.

            3.Нет поддержки внешних (foreign) ключей.

            4.Нет поддержки триггеров и хранимых процедур.

            5.Нет поддержки представлений (VIEW). В версии 3.23 планируется возможность создавать представления.

По словам создателей именно пункты 2-4 дали возможность достичь высокого быстродействия. Их реализация существенно снижает скорость сервера. Эти возможности не являются критичными при создании Web-приложений, что в сочетании с высоким быстродействием и малой ценой позволило серверу приобрести большую популярность.


2.4. Принципы работы web-серверов.

2.4.1. Web-сервер. Понятие, функции, характеристики.

Web-сервер – это программное обеспечение, отвечающее за прием запросов браузеров, поиск указанных файлов и возращение их содержимого.

В настоящее время в мире разработано и широко применяется несколько десятков программ, реализующих эти функции. Практически для каждой операционной системы существует целый ряд таких программ. Некоторые из них являются независимыми от операционной системы и могут использоваться одновременно в разных ОС. Но в подавляющем большинстве Web-серверы ориентированы на применение только в одной операционной системе. Среди них есть как коммерческие программы, так и распространяемые бесплатно. Иногда функции Web-сервера являются только частью функций, заложенных разработчиками в программу. Кроме минимального набора выполняемых задач, определяющих основные функции Web-сервера, большинство программ содержит в себе много дополнительных возможностей. К ним относятся ограничение прав доступа к отдельным документам, возможность криптографической защиты передаваемых и принимаемых данных, создания на одном компьютере нескольких Web-серверов с разными доменными именами, использования нестандартных портов входа для сервера. Кроме этого от Web-серверов часто требуется поддержка работы с системами управления базами данных и языками Perl и Java. Кроме набора функций, существенное влияние на выбор Web-сервера оказывают простота настройки и удобство в администрировании. Немаловажное значение для высоко посещаемых серверов имеет также быстрота ответа программы на запрос клиента. На сегодняшний день (по данным обзора Netcraft Web Server Survey) бесспорным лидером среди Web-серверов является бесплатно распространяемый сервер Apache. В пятерку лидеров входят также серверы Microsoft Internet Information Server, Netscape, NCSA и WebSite.

2.4.2. Трехзвенная архитектура клиент-сервер.

Обыкновенно для небольших организаций разработчики применяют двухзвенную архитектуру клиент-сервер, когда с рабочих станций осуществляется удаленный доступ к базе данных, и не более того. В самых простых, примитивных системах даже не используются возможности, предоставляемые пользователям РСУБД (Распределения Управления Базами данных), какие, как триггеры и сохраненные процедуры; и хотя разработчики именуют подобные системы клиент-серверами, они имеют весьма мало общего с истинными распределенными приложениями. Более того, идеология «толстого клиента» принуждает к установке на рабочих местах весьма дорогостоящих Wintel-компьютеров, способных произвести все основные вычисления обмен данными с удаленным сервером. Операция производится сквозь толстый многоуровневые слой провайверов, которые должны быть установлены на персональной рабочей станции и лицензированы их разработчиками для каждого рабочего места. Иногда получается совершенно нелепая вещь: если пропускная способность сети не достаточно велика или или недостаточно эффективно организован поток прохождения транзакций, то быстродействующие процессоры клиентских машин совершенно бездействуют; в противном же случае, наоборот, сервер базы данных «задыхается» и не успевает ответить каждому из многочисленных и буквально долбящих его, как дятлы, клиентов. При числе одновременно работающих клиентов более 30 необходимо переходит на трехзвенную архитектуру. В трехзвенной архитектуре всю логику работы с сервером можно возложить на специальный сервер приложения, а разделенные на отдельные фрагменты приложения уменьшают нагрузку на и на машину-клиента, и на сервер, перенося соответствующие операции на специальный сервер. Серверная часть приложения лучше защищена, а сами приложения могут либо непосредственно адресоваться к другим серверным приложениям, либо маршрутизировать запросы к ним (рис. 2.8).

2.4.3. Архитектура Internet/Intranet.

                Достоинства этой архитектуры (рис 2.9) сводятся к достоинствам соответствующей части системы клиент-сервер.


           

Сервер баз данных

 

Клиент

 

Сервер приложений

 

Рисунок 2.8. Трехзвенная схема работы клиент-сервер.

Клиентская часть

Прикладная программа доступна с любого компьютера, на котором инсталлирован браузер. Пользователю нет необходимости изучать интерфейс прикладной программы, потому что он всегда преобразуется к стандарту HTML-странички. Это помогает снизить затраты на обучение. Кроме того, пользователя совершенно не заботят особенности хардверной платформы и операционной системы, поскольку он имеет дело только с браузером, который умеет делать все.

Серверная часть

Приложения доступны любому пользователю сети Internet/Intranet, имеющему право образаться к ним. Поскольку все операции по сопровождению и усовершенствованию системы производятся на сервере, то пропадает необходимость сопровождать и модернизировать части приложения, находящиеся на машинах-клиентах. Такая конфигурация способна обеспечить работу десятка

тысяч или даже миллиона пользователей, являясь идеальной архитектурой для унаследования программ.

Рисунок 2.9. Универсальная схема клиент-сервер для сетей Internet/Intranet.

2.2.4. Обзор серверных программ для различных ОС.

Сегодня выпускаются Web-серверы для всех основных платформ, в том числе различных версий UNIX, Windows NT, IntranetWare фирмы Novell (дополнительный компонент NetWare 4.x), OS/2 Warp, Mac OS и даже Windows 95. Web-серверы стали доступными для массового пользователя.

Функции Web-серверов не ограничиваются пересылкой статических HTML-страниц. Java и сопутствующие языки составления сценариев представляют собой идеальную платформу разработки для Web. Во все рассмотренные продукты, за исключением Apache и ICSS, входят средства для работы с прикладными программами Java, размещенными на сервере. Ряд Web-серверов предусматривают собственные API (Application Programming Interface), а некоторые из них снабжены широко известным интерфейсом Netscape Server API (NSAPI).

Наибольшее распространение среди этих серверов получил метод программирования для Web с применением языков сценариев. Фирмы Microsoft и Netscape включили в свои пакеты даже объектно-ориентированные инструменты для быстрой разработки программ (rapid applications development – RAD), рассчитанные на серьезных разработчиков.

Web-серверы все чаще выпускаются в виде комплексов функциональных средств, встраиваемых в ОС. Универсальность сетей на базе TCP/IP означает, что в интрасети допустимо применение различных типов серверов – например, подключение сервера UNIX к сети Windows NT, - но данный подход может оказаться не самым эффективным с точки зрения использования ресурсов.

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10


на тему рефераты
НОВОСТИ на тему рефераты
на тему рефераты
ВХОД на тему рефераты
Логин:
Пароль:
регистрация
забыли пароль?

на тему рефераты    
на тему рефераты
ТЕГИ на тему рефераты

Рефераты бесплатно, реферат бесплатно, курсовые работы, реферат, доклады, рефераты, рефераты скачать, рефераты на тему, сочинения, курсовые, дипломы, научные работы и многое другое.


Copyright © 2012 г.
При использовании материалов - ссылка на сайт обязательна.