Конец архитектурной эпохи


Реляционная модель не обязательно является решением


Пережив продолжительные дебаты 1974 года [Rus74] и дискуссии между защитниками Codasyl и реляционной модели данных, авторы не желают более «кормить эту священную корову». Однако они считают уместным обсудить модель данных (или модели данных), на которой они основывают свои системы. В 1970-е гг. в мире СУБД имелись только приложения обработки бизнес-данных, и идея Теда Кодда о нормализации данных в плоские таблицы хорошо послужила сообществу баз данных в течение 30 лет. Однако теперь имеются новые области приложений, которые необходимо принимать во внимание: хранилища данных, Web-ориентированный поиск, аналитика в реальном времени и полуструктурированные данные. Авторы предлагают следующие наблюдения.

  1. В области хранилищ данных почти сто процентов схем относятся к категориям «звезда» или «снежинка», содержащим центральную таблицу фактов с соединениями 1-к-n с окружающими ее таблицами измерений, которые, в свою очередь, могут участвовать в соединениях 1-к-n с таблицами измерений второго уровня и т.д. Хотя схемы «звезда» и «снежинка» легко моделируются с использованием реляционных схем, на самом деле, в этой среде проще и естественнее использовать модель «сущности-связи». Более того, в E/R-модели проще формулируются запросы к хранилищам данных. Наконец, операции над хранилищами данных в реляционной реализации являются существенно более дорогостоящими. Например, операцию, эквивалентную операции изменения ключа строки в таблице измерений, можно гораздо быстрее выполнить в реализации на основе E/R-модели.

  2. В области обработки потоковых данных имеются следующие потребности:

    1. обработка потоков сообщений, поступающих с высокой скоростью;
    2. установление соотношений таких потоковых данных с хранимыми данными.

    Для решения обеих задач принято использовать язык StreamSQL, обобщение SQL, позволяющее одновременно указывать в разделе FROM SQL-запроса хранимые таблицы и потоки.


    Начало  Назад  Вперед



    Книжный магазин