Полуструктурированные данные - Semi-structured data
Полуструктурированные данные[1] это форма структурированные данные который не подчиняется табличной структуре моделей данных, связанных с реляционные базы данных или другие формы таблицы данных, но тем не менее содержит теги или другие маркеры для разделения семантических элементов и обеспечения иерархии записей и полей в данных. Поэтому он также известен как самоописывающий структура.
В полуструктурированных данных объекты, принадлежащие к одному классу, могут иметь разные атрибуты даже если они сгруппированы вместе, и порядок атрибутов не важен.
Полуструктурированные данные все чаще встречаются с появлением Интернет куда полный текст документы и базы данных больше не являются единственными формами данных, и различным приложениям требуется носитель для обмен информацией. В объектно-ориентированные базы данных, часто встречаются полуструктурированные данные.
Типы полуструктурированных данных
XML
XML,[2] другие языки разметки, электронное письмо, и EDI все формы полуструктурированных данных. OEM (Модель обмена объектами)[3] был создан до XML как средство самоописания структуры данных. XML был популяризирован веб-службами, разработанными с использованием МЫЛО принципы.
Некоторые типы данных, описанные здесь как «частично структурированные», особенно XML, страдают от впечатления, что они неспособны к структурной строгости на том же функциональном уровне, что и реляционные таблицы и строки. Действительно, представление XML как частично структурированного по своей сути (ранее он назывался «неструктурированным») затрудняет его использование в расширяющемся диапазоне приложений, ориентированных на данные. Даже документы, обычно рассматриваемые как воплощение полуструктуры, могут быть разработаны с практически такой же строгостью, что и схема базы данных, обеспечены схемой XML и обработаны как коммерческими, так и пользовательскими программами, не снижая их удобство использования для читателей.
Принимая во внимание этот факт, XML можно было бы назвать имеющим «гибкую структуру», способную к ориентированному на человека потоку и иерархии, а также к очень строгой структуре элементов и типизации данных.
Однако концепция XML как «удобочитаемого для человека» может быть только принята. Некоторые реализации / диалекты XML, такие как XML-представление содержимого документа Microsoft Word, реализованное в Office 2007 и более поздних версиях, используют десятки или даже сотни различных типов тегов, которые отражают конкретную проблемную область - в случае Word , форматирование на уровне символа, абзаца и документа, определения стилей, включение цитат и т. д., которые сложным образом вложены друг в друга. Понимание даже части такого XML-документа путем его чтения, не говоря уже о выявлении ошибок в его структуре, невозможно без очень глубокого предварительного понимания конкретной реализации XML, наряду с помощью программного обеспечения, которое понимает используемую схему XML. Такой текст не является «понятным для человека» точно так же, как книга, написанная на суахили (в которой используется латинский алфавит), была бы для американца или западноевропейца, не знающего ни слова на этом языке: теги - это символы, которые не имеют смысла человек, незнакомый с доменом.
JSON
JSON или нотация объектов JavaScript - это открытый стандартный формат, в котором используется читаемый человеком текст для передачи объектов данных, состоящих из пар атрибут-значение. Он используется в основном для передачи данных между сервером и веб-приложением в качестве альтернативы XML. JSON был популяризирован веб-сервисами, разработанными с использованием ОТДЫХ принципы.
Появляется новое поколение баз данных, например MongoDB и Диван которые хранят данные изначально в формате JSON, используя преимущества архитектуры полуструктурированных данных.
Плюсы и минусы использования полуструктурированного формата данных
Преимущества
- Программистам, сохраняющим объекты из своего приложения в базе данных, не нужно беспокоиться о объектно-относительное несоответствие импеданса, но часто может сериализовать объекты с помощью облегченной библиотеки.
- Поддержка вложенных или иерархических данных часто упрощает модели данных, представляющие сложные отношения между сущностями.
- Поддержка списков объектов упрощает модели данных, избегая беспорядочного перевода списков в реляционную модель данных.
Недостатки
- Традиционная реляционная модель данных имеет популярный и готовый язык запросов, SQL.
- Склонность к «мусору на входе, мусоре на выходе»; устранение ограничений из модели данных снижает необходимость в предварительных размышлениях, необходимых для работы приложения данных.
Смотрите также
Рекомендации
- ^ Питер Бунеман (1997). «Полуструктурированные данные» (PDF). Симпозиум по принципам систем баз данных.
- ^ Группа баз данных Penn имеет проект полуструктурированных и XML-данных.
- ^ СУБД Stanford Universities Lore
внешняя ссылка
- Группа баз данных UPenn - полуструктурированные данные и XML
- Аналитика полуструктурированных данных: реляционная платформа или платформа Hadoop? от IBM