Организация схемы
Стандартная парадигма баз данных предусматривает, прежде всего, создание схемы базы данных, которая описывает структуру базы данных, а уже после этого – наполнение базы данных с помощью интерфейса, обеспечиваемого схемой6. При этом СУБД отображает вводимые данные в фактическую структуру хранения.
Теперь все более часто придется сталкиваться с ситуацией, когда мы не будем иметь такой роскоши, как априорная схема. В настоящее время многие приложения создают данные независимо от какой-либо системы базы данных7
(например, научные приложения), и поскольку информация получается более легким путем для сбора, передачи и хранения, такое несоответствие будет только усиливаться. По этой причине возникает необходимость отображения в схему (и, возможно, в новые структуры хранения) данных, сгенерированных вне системы, пост-фактум. Этот подход "снизу-вверх" к наполнению баз данных не часто поддерживается в современных системах.
Тем не менее, весьма важно обеспечить простые механизмы, позволяющие сделать внешние источники данных доступными системам баз данных с тем, чтобы можно было реализовать нечто, подобное сценариям IVE. Для обеспечения такой возможности необходимы сложные процедуры отображения данных. Мы ведем здесь речь о создании того, что является, по существу, представлением внешних данных в духе баз данных, но такое представление должно конструироваться над данными в произвольных форматах.
Может оказаться, что данные, получаемые из какого-либо источника, например, из узла Web, имеют некоторую структуру. Фрагменты текста кодируются тегами, описывающими их роли. К сожалению, использование этих тегов может в значительной степени варьироваться. Тот факт, что на какой-либо одной странице используется тег H3 для заголовков, совсем не обязательно имеет силу для других страниц, и может быть даже из того же самого сайта. Такая вариация в использовании кодировки текстов затрудняет конструирование чего-либо такого, что мы могли бы понимать как схему, которая описывает как Web-страницы.
Кроме того, когда к таким источникам данных добавляются новые данные, мы можем обнаружить, что схема неполна или несовместима. Поэтому практикуемая в настоящее время жесткость схем баз данных становится препятствием в использовании систем баз данных для удовлетворения потребностей многих информационных систем. Нам необходимы средства управления схемой, которые могут элегантно адаптироваться к динамической природе внешних данных. Кроме того, схема должна допускать различные форматы и различные множества свойств данных, когда они появляются в среде СУБД.