Cодержит самые полные данные об угрозах, исходящих из Интернета, авторитетный анализ и комментарии. Выводы отчета помогут эффективно защитить компьютеры от вирусов, фишинга и спама в будущем.
Рассматриваются три типичных метода хищения данных: добронамеренные сотрудники, нацеленные атаки извне и мстительные сотрудники. Наряду с обзором способов противодействия даны конкретные советы по предотвращению взлома.
Открытые системы :: Системы управления базами данных
XML и базы данных
Данная статья содержит описание взаимоотношений XML и баз данных и некоторых типов программного обеспечения, способного обрабатывать XML-документы в базах данных.
Рональд Буре
Данная статья содержит описание взаимоотношений XML и баз данных и некоторых типов программного обеспечения, способного обрабатывать XML-документы в базах данных. Хотя это описание не претендует на полноту, я надеюсь, что основные вопросы использования XML с базами данных в ней, тем не менее, затронуты. Некоторое преувеличенное внимание, которое уделяется здесь реляционным базам данных, объясняется тем, что с этой технологией я знаком лучше всего.
Является ли XML базой данных?
Прежде чем приступить к обсуждению XML и баз данных, необходимо ответить на естественно возникающий вопрос: «А является ли XML базой данных?». Если строго придерживаться определения базы данных, то «XML» - в том случае, если под этим термином подразумевается XML-документ, - базой данных не является. Хотя XML-документ содержит данные, без дополнительного программного обеспечения, которое служит для обработки этих данных, он является базой данных не в большей степени, чем любой другой текстовый файл.
Если говорить более широко, то есть, подразумевая под «XML» собственно XML-документ и сопровождающие XML инструменты и технологии - ответ будет звучать как «да, но». «Да», потому что XML предоставляет множество функций баз данных: хранение (XML-документ), схемы (DTDS, язык определения схем XML), язык запросов (XQL, XML-QL, QUILT и другие), интерфейсы для языков программирования (SAX, DOM) и так далее. «Но», потому что многие функции присущие классическим базам данных все же отсутствуют: эффективное хранение, индексация, обеспечение безопасности, обработка транзакций и поддержка целостности данных, многопользовательский доступ, триггеры, поддержка запросов ко многим документам и т.д.
Таким образом, хотя допустимо использовать XML в качестве базы данных в средах, где нет больших объемов информации, большого количества пользователей, а также не требующих высокой производительности, он совершенно не подходит для многих реальных задач, предполагающих поддержку большого числа пользователей, жесткие требования к целостности данных и производительности. Кроме того, учитывая невысокие цены на такие продукты, как dBASE и Access, нет серьезных причин использовать XML в качестве базы данных даже тогда, когда это возможно с учетом особенностей области применения.
Почему следует использовать базы данных?
Первое, что необходимо уяснить для себя, рассматривая вопрос о применении XML и базы данных, - почему последняя должна стать основным инструментом. Есть ли необходимость получать доступ к унаследованным данным? Требуется ли место для хранения Web-страниц? Используется ли база данных приложением электронной коммерции, в котором XML играет роль средства передачи данных? Ответы на эти вопросы повлияют на выбор базы данных и промежуточного ПО (если оно будет использоваться), а также на способ применения базы данных.
Например, допустим, используется приложение электронной коммерции, в котором XML играет роль транспорта данных. Можно с уверенностью утверждать, что данные отличаются большой структурированностью и что такие аспекты, как сущности и кодировки, применяемые в документах XML, не имеют решающего значения, в конце концов, важны сами данные, а не то, как они физически хранятся в документе. Если используется относительно простое приложение, реляционная база данных и промежуточное ПО в качестве транспорта данных могут удовлетворить все требования. Если же это крупное и сложное приложение, потребуется полная среда разработки приложений, поддерживающая XML.
С другой стороны, возникают и такие задачи, как поддержка Web-сайтов с большим количеством XML-документов, содержащих, в основном, текстовую информацию. Таким сайтом нужно не только управлять, нужно обеспечивать доступ для многочисленных пользователей. Скорее всего, структура документов здесь весьма неоднородна, а использование сущностей имеет принципиальное значение, поскольку они составляют основу структурирования документов. В этом случае, возможно, возникнет потребность в базах данных с «естественной поддержкой» XML, которые обеспечивают поддержку версий, отслеживание использования сущностей и язык запросов наподобие XQL.
Данные и документы
Пожалуй, наиболее важным фактором выбора базы данных является то, для чего планируется ее использовать - для хранения данных или документов. Если необходимо хранить данные, нужно выбирать базу данных, настроенную на хранение данных, т. е. реляционную или объектно-ориентированную, а также промежуточное программное обеспечение, предназначенное для передачи данных от базы данных в документы XML. С другой стороны, потребность в хранении документов, заставляет выбирать систему управления информационным обеспечением, которая ориентирована специально на хранение документов.
Хотя можно и самостоятельно обеспечить хранение документов в реляционной или объектно-ориентированной базе данных, это просто будет повторением работы, которую уже проделали другие, те кто создавал средства управления информационным обеспечением. Аналогично, хотя такие системы, как правило, разворачиваются поверх объектно-ориентированной или иерархической базы данных, использовать их в качестве лишь базы данных - задача не их легких.
Определить, что нужно хранить - данные или документы - можно, просто просмотрев XML-документы. Дело в том, что XML-документы подразделяются на две категории: ориентированные на данные и на документы.
Документы, ориентированные на данные
Документы, ориентированные на данные, характеризуются четкой упорядоченной структурой, их глубокой проработкой (наименьший независимый элемент данных может располагаться на уровне атрибута), кроме того, смешанного информационного наполнения нет, либо оно присутствует в минимальном объеме. Порядок, в котором появляются однородные элементы, часто не имеет значения. Хорошим примером в данном случае служат XML-документы, содержащие заказы на продажи, графики полетов, меню ресторанов и так далее. Документы, ориентированные на данные, обычно создаются для машинной обработки; возможности XML используются здесь в минимальной степени - он играет роль транспорта.
Документ, ориентированный на данные, может выглядеть, например, следующим образом.
ABC Industries
123 Main St.
Chicago
IL
60609
981215
Следует обратить внимание, что в мире XML многие документы, содержащие большой объем текстовой информации, ориентированы на данные. Так, например, страница на Amazon.com, где приводится информация о книге, содержит в основном текст, при этом имеет весьма жесткую структуру. Большая часть текста повторяется во всех аналогичных страницах, объем текста, приходящегося на каждую страницу, строго ограничен по объему.
Таким образом, страница может быть построена на базе простого, ориентированного на данные документа XML - содержащего информацию, соответствующую каждой странице, которая извлекается из базы данных и таблицы стилей XSL для добавления стереотипного текста. В общем случае любой Web-сайт, на котором производится динамическое создание документов HTML путем заполнения шаблона данными из базы данных, может быть заменен ориентированными на данные XML-документами и одной или более таблицами стилей XSL.
В качестве примера можно рассмотреть следующий документ, содержащий лизинговый договор.
ABC Industries
договаривается о передаче в долговременную
аренду собственности
123 Main St., Chicago,
IL from XYZ
Properties на срок не
менее
TimeUnit=»Months»>18
по цене
Currency=»USD»
TimeUnit=»Months»>1000.
Его можно построить при помощи следующего XML-документа и простой таблицы стилей.
ABC Industries
123 Main St., Chicago,
IL
XYZ Properties
18
1000
Документы, ориентированные на документы
Документы, ориентированные на документы, не имеют жесткой структуры, не отличаются глубиной проработки данных (минимальный независимый элемент располагается на уровне элемента смешанного информационного наполнения или целого документа), кроме того, они характеризуются большим объемом смешанного информационного наполнения. Порядок, в котором возникают однородные элементы, почти всегда важен. Хорошим примером служат книги, электронная почта, рекламные объявления и практически все документы XHTML. Подобные документы, как правило, предназначены для людей.
Вот пример подобного документа.
Гаечный ключ
Full Fabrication Labs,
Inc.
гаечный ключ небольшого
размера.
Гаечный ключ, производится в
двух ориентациях, изготавливается
из нержавеющей стали. Ручка имеет
резиновый наконечник для удобства
работы. Допустима подгонка.
You can:
Закажите
ваш собственный ключ
Дополнительная информация о ключах
Загрузить
каталог
Ключ будет стоить вам всего
19,99 долл., если вы закажете его
прямо сейчас, кроме того, вы получите
в подарок молоток для тонкой работы.
Данные, документы и базы данных
На практике далеко не всегда возможно провести четкую границу между разными типами документов. Например, документы, по сути являющиеся ориентированными на данные, такие как инвойсы, могут содержать неструктурированные данные с небольшой глубиной проработки, например, описания запчастей. Напротив, документы, которые в принципе являются ориентированными на документы, например руководства пользователя, могут содержать проработанные данные с четкой структурой (часто метаданные), типа, имени и регалий автора и выходных данных. И все же, охарактеризовав документы как ориентированные на данные или на документы, легче понять, с чем придется работать - с данными или документами, а, следовательно, существенно упростить для себя решение вопроса о том, какую систему выбрать.
Для хранения и/или извлечения данных нужна база данных (как правило, реляционная, объектно-ориентированная или иерархическая) и промежуточное ПО (либо встроенное, либо предлагаемое независимыми компаниями), или же XML-сервер (платформа для создания распределенных приложений, таких как приложения электронной коммерции, которые используют XML для передачи данных), или Web-сервер, поддерживающий XML (Web-сервер, способный строить XML-документы на базе данных, получаемых из базы). Для хранения документов нужна специальная система управления информационным наполнением. Вопросы использования систем обоих типов рассмотрены в разделах «Хранение и извлечение данных» и «Хранение и извлечение документов». Список ПО приводится в XML Database Products.
Платформа DIRECTUM стала центральным звеном в создаваемой информационной системе, направленной на повышение эффективности и открытости местных органов власти.
Комментарии:
Для того, чтобы оставить комментарий авторизуйтесь или зарегистрируйтесь.