Труды КНЦ вып.9 (ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ) вып. 9/2019(10)
Она подразумевает наличие наименований у вершин (node labels) и ребер (relationship types). Ребра при этом могут иметь направление. С вершинами и ребрами также могут быть ассоциированы наборы свойств в виде пар— (ключ, значение). Возможные типы значений могут варьироваться в зависимости от конкретной реализации модели от простых (например, строкового, целочисленного и т.д.) до более сложных (например, списки, словари). Другой распространенной графовой моделью является моделью триплетов или RDF-моделью (Resource Description Framework, RDF). Она состоит из триплетов или троек «субъект-предикат-объект», которые также можно интерпретировать в виде пары вершин (субъект и объект) и инцидентного им ребра (предикат). Однако если сравнивать модель графа свойств с RDF-моделью, то основным отличием будет являться наличие у элементов модели графа свойств внутренней структуры (т.е. некоторого набора свойств). В свою очередь в RDF- модели элементы триплета определяются просто в виде строк символов, являющихся URI-идентификаторами (Universal Resource Identificator, URI) или литеральными значениями. Иными атрибутами RDF-модель их не наделяет. Другим отличием будет возможность определения экземпляров ребер, то есть задание несколько ребер одинакового типа между вершинами. Модель графа свойств обеспечивает данную возможность. Каждое ребро в этом случае будет иметь уникальный идентификатор, тогда как в RDF-модели триплет «субъект- предикат-объект», определяющий якобы еще один экземпляр ребра меджу, будет считаться дубликатом, виду того что URI предиката будет тем же самым, что и в исходном триплете. Следствием этого является также то, что RDF-модель не обладает имманентной возможностью характеризовать ребра, то есть определять их свойства, например, вес ребра. Хотя это ограничение модели обходиться с помощью приема реификации [1], то есть трансформации ребра в промежуточную вершину, смежную с исходными. Однако смысл, стоящий за такой модификацией, необходимо будет поддерживать уже на уровне приложения, осуществляющего манипуляции с графом. Еще одним отличием RDF-модели является возможность задавать «четверки» (quads), то есть определять принадлежность триплета некоторому графу и тем самым разделять граф на компонетны. Модель графа свойств явно такой данной возможности не предосталвяет. Однако такого сегментирования можно добиться заданием дополнительных меток вершин и типов ребер, указывающих на принадлежность к некоторому подгару, или заданием нескольких графов, несвязанных между собой и имеющих в качестве идентификаторов некоторые «центральные» вершины. Однако, как и случае реификации, учет таких приемов метамоделирования должен быть реализован в бизнес-логике приложения или приниматься во внимание пользователем при формулировке и интепретации результатов запросов. 2. Основные графовые алгоритмы для анализа данных с помощью графовых СУБД Рассмотрим применение графовых баз данных для решения задач анализа данных. Заметим, что в данном случае подразумеваются те возможности, которые обычно предоставляются самой графовой СУБД и ориентируются именно на оперирование графовой моделью. В основе этих возможностей лежат алгоритмы, 139
Made with FlippingBook
RkJQdWJsaXNoZXIy MTUzNzYz