Управления реляционными базами данных и анализа данных
Вид материала | Руководство |
- Программа дисциплины Системы управления базами данных Семестры, 22.73kb.
- Проектирование базы данных, 642.58kb.
- «Прикладная информатика (по областям)», 1362.72kb.
- Тема Базы данных. Системы управления базами даннях (12 часов), 116.1kb.
- Реляционная модель данных в системах управления базами данных, 200.05kb.
- Системы управления базами данных, 313.7kb.
- Системы управления базами данных (субд). Назначение и основные функции, 30.4kb.
- 1. 2 Системы управления базами данных. Основные функции, 630.95kb.
- Развитие объектно-ориентированных систем управления базами данных, 122.52kb.
- Любая программа для обработки данных должна выполнять три основных функции: ввод новых, 298.05kb.
Простой и безопасный доступ к данным через Веб
Сервер SQL Server 7.0 обладает возможностями генерации HTML-страниц по данным, хранящимся на сервере SQL Server, отправки этих данных на узлы HTTP и FTP, отправки и получения сообщений электронной почты. SQL Server 2000 использует гораздо более современные и усовершенствованные средства для доступа через Веб к данным, содержащимся в базах данных SQL Server и кубах OLAP. Эти средства обеспечивают обращение к данным с помощью интуитивно понятных пользовательских интерфейсов и широких возможностей поиска, доступных даже начинающим пользователям.
Обеспечение безопасного подключения к базе данных по протоколу HTTP
Сервер SQL Server 2000 позволяет обратиться к данным с веб-узлов при помощи нескольких различных механизмов, каждый из которых опирается на имеющуюся в системе библиотеку ISAPI.DLL. Эта библиотека позволяет пользователям определять виртуальные корни в информационных службах Интернета (Microsoft Internet Information Services, IIS), соответствующие данному экземпляру SQL Server 2000. При этом URL-адрес можно использовать для следующих целей.
- Непосредственное выполнение SQL-запросов. URL-запросы имеют вид: oot?sql=“…” По таким URL-запросам веб-приложения могут составить строки с URL-адресом, которые ссылаются на виртуальный корень SQL Server 2000 и содержат оператор языка Transact-SQL. Оператор языка Transact-SQL отправляется на экземпляр сервера SQL Server 2000, соответствующий данному виртуальному корню, а результат возвращается в виде стандартного набора строк. Если указано предложение FOR XML, то вместо набора строк возвращается XML-документ. Поддерживаются запросы по отдельным строкам и столбцам.
- Непосредственный доступ к объектам базы данных, например, к таблицам. Непосредственные запросы имеют вид: oot/dbobject/xpath Непосредственные запросы по протоколу HTTP возвращают данные не в формате XML, благодаря чему можно выполнять прямое извлечение из базы данных таких объектов, как изображения. В этом случае необходимо использование синтаксиса XPath, в котором таблицы (и представления) воспринимаются в качестве элементов, а столбцы – в качестве атрибутов.
- Выполнение файла шаблона. Запросы с использованием шаблонов имеют вид: ссылка скрыта и непосредственно ссылаются на файл шаблона, который является допустимым XML-документом, состоящим из одного или нескольких операторов SQL. При указании в URL-адресе файла шаблона выполняются содержащиеся в нем команды SQL. Запросы замещаются соответствующими результатами, и весь XML-документ возвращается инициатору запроса.
- Выполнение запросов XPath по XML-представлению. Запросы XPath по XML-представлениям имеют вид: oot/vname/xpath?params Запросы XPath обращаются к определенным данным реляционных таблиц с помощью XML-представления (аннотированной схемы), которое отображает XML-данные в таблицы реляционной базы данных.
Рис. 1. Виртуальный корень, используемый для доступа к серверу SQL Server 2000, указывается в диалоговом окне New Virtual Directory Properties
- анонимный доступ с именем пользователя и паролем, установленными в операционной системе Windows или на сервере SQL Server непосредственно для доступа к виртуальному корню и используемыми всеми пользователями;
- обычная проверка подлинности путем передачи открытым текстом имени пользователя и пароля для доступа к серверу SQL Server (должна использоваться вместе с протоколом SSL);
- интегрированная проверка с использованием таблиц ACL операционной системы Windows.
При использовании всех этих средств уровни безопасности устанавливаются для каждого виртуального корня, а разрешения на доступ устанавливаются на сервере SQL Server. Библиотека ISAPI.DLL имеет три встроенных варианта проверки подлинности:
Полнотекстовый поиск
Очень большая часть сохраняемой в электронной форме информации находится в виде неструктурированных текстовых данных – обычных текстовых файлах и форматированных документах. Хотя основная масса этих текстовых данных хранится в файловых системах, многие организации сейчас хранят их в реляционных базах данных. Благодаря этому появляется возможность широко пользоваться преимуществами баз данных, включая быстрый доступ, возможности запросов, простые прикладные интерфейсы конечных пользователей и безопасный удаленный доступ. К сожалению, большинство производителей баз данных требуют дополнительной платы за средства текстового поиска, что ограничивает его применение. Некоторые пользователи для удовлетворения своих потребностей вынуждены приобретать дорогостоящие продукты сторонних производителей. Эти решения обычно связаны с извлечением данных из базы через мосты или шлюзы и сохранения их в файловой системе в виде файлов, что позволяет применять текстовое индексирование. Такой примитивный метод исключает возможность непосредственного объединения текстового запроса с обычным структурированным реляционным запросом. Включенное в SQL Server 7.0 средство полнотекстового поиска позволяет разработчикам использовать и управлять структурированными и неструктурированными данными единым образом.
SQL Server 2000 расширяет интегрированные возможности полнотекстового поиска, представленные в сервере SQL Server 7.0, позволяя пользователям выполнять поиск по тексту, хранящемуся в базе данных даже в том случае, когда текст содержится в форматированном документе. Полнотекстовый поиск является базовой функциональной возможностью сервера SQL Server 2000 и входит в стандартный вариант установки SQL Server; пользователям больше не требуется запускать выборочную установку для подключения этой функции. Более того, это средство включено без дополнительной оплаты в выпуски Enterprise Edition, Standard Edition, Personal Edition, Developer Edition и Enterprise Evaluation Edition.
Ниже кратко перечислены возможности полнотекстового поиска в сервере SQL Server:
- полнотекстовые запросы по обычным текстовым данным, содержащимся в реляционных таблицах;
- полнотекстовые запросы, полностью интегрированные в язык T-SQL. В одном запросе можно объединять полнотекстовый и «традиционный» поиск;
- поиск по всем индексированным столбцам таблицы;
- программный доступ к сведениям о запросе (ранжирование по относительной степени соответствия запросу, статистическое взвешивание по элементам поиска и т. д.).
Сервер SQL Server 2000 поддерживает полнотекстовый поиск по форматированным документам (например, по документам Microsoft Office или по HTML-документам). Для реализации полнотекстового поиска документы следует хранить в базе данных в BLOB-столбцах (Binary Large Object) и отмечать для полнотекстового индексирования. Фильтры документов позволяют извлекать текстовое содержимое из документов определенных форматов. SQL Server проверяет каждый документ, определяя соответствующий ему фильтр. Во время индексирования загружается соответствующий фильтр и возвращает информацию о тексте, необходимую для создания полнотекстового индекса, игнорируя при этом незначащие слова6. SQL Server 2000 поставляется с фильтрами для HTML-файлов, текстовых файлов и документов Microsoft Office, однако разработчики могут создать свои собственные фильтры с помощью спецификации IFilter7.
Ведение полнотекстовых индексов чрезвычайно важно, поскольку в этом случае пользователи могут найти интересующую их информацию даже тогда, когда она была лишь недавно внесена в базу данных. В сервере SQL Server 7.0 было необходимо планирование заданий пакетной обработки по обновлению полнотекстовых индексов. В сервер SQL Server 2000 в качестве новой технологии ведения индексов введено отслеживание изменений. Эта функция ведет список всех изменений данных, индексируемых для полнотекстового поиска. Автоматическое отражение этих изменений в индексе может выполняться по расписанию или с помощью службы SQL Server Agent8. Процесс обновления происходит асинхронно в фоновом режиме, что упрощает администрирование, снижает объем обработки (в результате более эффективного обновления) и способствует актуальности полнотекстовых индексов. Отслеживание изменений в большинстве случаев снижает необходимость полного и частичного обновления, но в случае возникновения такой необходимости сервер SQL Server 2000 выполняет эти операции быстрее, чем SQL Server 7.09.
В сервере SQL Server 2000 произведены также следующие усовершенствования полнотекстового поиска:
- Поддержка полнотекстового индексирования в кластерах с восстановлением после отказа, позволяющая полнотекстовым индексам восстанавливаться вместе с экземпляром SQL Server 2000.
- Полнотекстовые запросы для представлений, что обеспечивает дополнительные возможности10.
- Функция Top_N_By_Rank, возвращающая N результатов с наибольшим рангом, что полезно для повышения быстродействия.
- Многоязыковая поддержка, являющаяся результатом поддержки в сервере SQL Server 2000 порядка сортировки на уровне столбца. Осмысленные перенос слов и учет спряжения глаголов (т. е. в зависимости от языка).
Безопасность
По своей природе веб-приложения электронной коммерции весьма чувствительны к защите информации. Это послужило причиной внесения в сервер SQL Server 2000 новых значительных улучшений системы безопасности, не только обеспечивающих наиболее высокий в отрасли уровень безопасности, но также упрощающих применение средств, необходимых для достижения этого уровня. Прежде всего, SQL Server 2000 устанавливается по умолчанию с существенно более высоким уровнем безопасности, при этом используются средства, встроенные в новейшую интегрированную систему безопасности операционной системы Windows 2000. Это упрощает и ускоряет изоляцию сервера в производственной среде.
SQL Server 2000 также включает в себя набор новых средств обеспечения безопасности: мощную и гибкую систему безопасности сервера на ролевой основе, профили баз данных и приложений, интегрированные средства аудита безопасности (отслеживающие 18 различных видов событий и дополнительные события), поддержку шифрования файлов и сетевых сообщений (включая SSL), а также поддержку протокола Kerberos и возможность делегирования полномочий. SQL Server 2000 прошел проверку в рамках программы правительства США Trusted Product Evaluation Program и Агентство национальной безопасности подтвердило его соответствие уровню безопасности C211.
Запросы English Query
Традиционно разработчики создавали приложения, скрывающие процесс составление запросов от конечного пользователя, или используя алгоритмы для их составления, или предлагая статический набор запросов, доступный с помощью интуитивно понятного прикладного интерфейса пользователя. Однако такие методы не позволяют полностью использовать информацию, содержащуюся в базе данных. Идеальный механизм должен позволять неопытным конечным пользователям составлять запросы в свободной форме, давая возможность разработчику сконцентрировать усилия на других частях приложения вместо того, чтобы включать в приложение большое количество запросов и надеяться, что они действительно будут соответствовать потребностям конечных пользователей. В наши дни ввиду популярности Интернета потребность составления конечными пользователями запросов в свободной форме стала еще более насущной. Пользователи рассчитывают, что на веб-узлах им будут предоставлены возможности полномасштабного и удобного поиска.
Среда Microsoft English Query позволяет разработчикам и администраторам баз данных предложить всем категориям конечных пользователей простой доступ к данным, хранящимся в реляционных базах данных, и в то же время удовлетворить потребности опытных пользователей и тех, кто запрашивает сложные подмножества данных. English Query позволяет пользователям задавать вопросы на английском языке вместо составления запроса с помощью операторов SQL. English Query действует как посредник, превращая вопрос пользователя в правильно составленный запрос SQL, извлекающий необходимые результаты из базы данных. Среда English Query полностью интегрирована в сервер SQL Server 2000 и входит в его выпуски Enterprise Edition, Standard Edition, Personal Edition, Developer Edition и Enterprise Evaluation Edition. Корпорация Майкрософт является единственным производителем, предлагающим такие функциональные возможности, не говоря уже о включении их в базовый продукт12.
Разработка (authoring) и развертывание приложений English Query значительно упрощены. Средство разработки теперь размещается в среде Microsoft Visual Studio® версии 6.0, которая включена в сервер SQL Server 2000.
Рис. 2. Разработка приложений English Query теперь выполняется в среде Visual Studio
Приступая в этой среде к проекту English Query, разработчики могут воспользоваться новым мастером проекта, позволяющим автоматически создать объекты и отношения для всех таблиц базы данных. Каждому объекту мастер проекта автоматически присваивает имя и характерные отношения, что приводит к автоматическому созданию около 70% объектов и отношений, необходимых модели. Эта среда также включает в себя графическое средство построения диаграмм, в котором отображаются объекты и отношения создаваемой модели English Query. Оно также позволяет автоматически создавать отношения между объектами путем их перетаскивания друг на друга. При необходимости детального контроля разработчики могут использовать новый основанный на языке XML формат SMF (Semantic Modeling Format), позволяющий использовать данные модели English Query. Используемый совместно с моделью Authoring Object Model формат SMF обеспечивает программную разработку моделей English Query. Несколько прилагаемых примеров проектов English Query помогут разработчикам быстро приступить к созданию своих собственных проектов.
Развертывание приложений English Query в Интернете упрощено до нескольких щелчков мышью. Подобным образом упрощено тестирование и сопровождение приложений English Query – имеющийся мастер может предлагать новые отношения и объекты на основании неудачных вопросов пользователя. Неудачные вопросы регистрируются, а предлагаемые средой English Query предположения отражают изменения, необходимые для принятия таких вопросов.
При использовании этой среды совместно со службами анализа данных (ранее называемыми службами OLAP) сервера SQL Server 2000 разработчики могут теперь применять приложения English Query к кубам OLAP, используя возможность составления в среде English Query многомерных выражений (Multidimensional Expression, MDX). В среду включен мастер проекта, разработанный специально для OLAP. Он обеспечивает еще больший процент автоматического создания объектов и отношений, чем вышеупомянутый стандартный мастер проекта. Кроме интеграции с кубами OLAP и результатами анализа, теперь можно подключать среду English Query к различным хранилищам данных через интерфейс OLE DB, который обеспечивает упрощающую доступ непосредственную передачу интегрируемых данных между неоднородными источниками13. Кроме этих возможностей интеграции среда English Query в сервере SQL Server 2000 позволяет составлять другие формы запросов SQL, включая, помимо языка Transact-SQL, языки SQL для Oracle и Microsoft Jet SQL.
Конечные пользователи выиграют в результате интеграции с полнотекстовым поиском (путем включения в запросы SQL предикатов CONTAINS и FREETEXT), позволяя приложениям English Query осуществлять поиск как структурированных, так и неструктурированных текстовых данных. Искушенные конечные пользователи могут применять новое приложение Question Builder для графического составления запросов и извлечения информации о модели English Query, включая сведения о том, какие английские фразы могут быть использованы в запросах. Приложение Question Builder имеет трехоконный интерфейс, который облегчает задачу определения информации, доступной в базе данных, графически отображая входящие в модель объекты и отношения.