Создание связей между узлами в базе данных Neo4j
createRelation( создает одно или несколько отношений между начальными узлами и конечными узлами с указанными типами отношений с помощью подключения к базе данных Neo4j ®.neo4jconn,startnode,endnode,relationtype)
createRelation( задает свойства новых отношений.neo4jconn,startnode,endnode,relationtype,'Properties',properties)
возвращает информацию об отношениях в виде relationinfo = createRelation(___)Neo4jRelation объект или таблицу, использующую любую из комбинаций входных аргументов в предыдущих синтаксисах.
Создайте одно отношение между двумя узлами в базе данных Neo4j ® и просмотрите это отношение.
Создание Neo4j подключения к базе данных по URL-адресу http://localhost:7474/db/dataИмя пользователя neo4j, и пароль matlab.
url = 'http://localhost:7474/db/data'; username = 'neo4j'; password = 'matlab'; neo4jconn = neo4j(url,username,password);
Проверьте Message свойство объекта подключения Neo4j neo4jconn. Бланк Message указывает на успешное подключение.
neo4jconn.Message
ans =
[]
Создайте два узла в базе данных с помощью Neo4j подключения к базе данных. Используйте 'Labels' аргумент пары имя-значение для указания метки Person для каждого узла.
label = 'Person'; startnode = createNode(neo4jconn,'Labels',label); endnode = createNode(neo4jconn,'Labels',label);
Создайте связь между двумя узлами с помощью Neo4j подключения к базе данных. Укажите тип отношения как works with.
relationtype = 'works with';
createRelation(neo4jconn,startnode,endnode,relationtype)Найдите новую связь и просмотрите ее тип.
direction = "out"; relinfo = searchRelation(neo4jconn,startnode,direction, ... 'RelationTypes',relationtype,'Distance',2); relinfo.Relations.RelationType
ans = 1×1 cell array
{'works with'}
Закройте подключение к базе данных.
close(neo4jconn)
Создайте единую связь со свойствами между двумя узлами в базе данных Neo4j ® и отобразите свойства.
Создание Neo4j подключения к базе данных по URL-адресу http://localhost:7474/db/dataИмя пользователя neo4j, и пароль matlab.
url = 'http://localhost:7474/db/data'; username = 'neo4j'; password = 'matlab'; neo4jconn = neo4j(url,username,password);
Проверьте Message свойство объекта подключения Neo4j neo4jconn. Бланк Message указывает на успешное подключение.
neo4jconn.Message
ans =
[]
Создайте два узла в базе данных с помощью Neo4j подключения к базе данных. Используйте 'Labels' аргумент пары имя-значение для указания метки Person для каждого узла.
label = 'Person'; startnode = createNode(neo4jconn,'Labels',label); endnode = createNode(neo4jconn,'Labels',label);
Создайте связь между двумя узлами с помощью Neo4j подключения к базе данных. Узлы представляют двух коллег, которые начали совместную работу над проектом с именем Database 1 сентября 2017 года. Укажите тип отношения как works with. Укажите имя проекта и дату начала в качестве свойств связи с помощью properties структура.
relationtype = 'works with'; properties.Project = 'Database'; properties.StartDate = '09/01/2017'; createRelation(neo4jconn,startnode,endnode,relationtype, ... 'Properties',properties)
Поиск новой связи и отображение ее свойств.
direction = "out"; relinfo = searchRelation(neo4jconn,startnode,direction, ... 'RelationTypes',relationtype,'Distance',2); relinfo.Relations.RelationData{1}
ans = struct with fields:
StartDate: '09/01/2017'
Project: 'Database'
Закройте подключение к базе данных.
close(neo4jconn)
Создайте две связи между узлами в базе данных Neo4j ® и просмотрите эти связи.
Предположим, что данные графика хранятся в базе данных Neo4j, представляющей социальный район. Эта база данных имеет семь узлов и восемь взаимосвязей. Каждый узел имеет только один уникальный ключ свойства name со значением в диапазоне от User1 через User7. Каждая связь имеет тип knows.
Создание Neo4j подключения к базе данных по URL-адресу http://localhost:7474/db/dataИмя пользователя neo4j, и пароль matlab.
url = 'http://localhost:7474/db/data'; username = 'neo4j'; password = 'matlab'; neo4jconn = neo4j(url,username,password);
Проверьте Message свойство объекта подключения Neo4j neo4jconn. Бланк Message указывает на успешное подключение.
neo4jconn.Message
ans =
[]
Поиск узла с меткой Person и ключ свойства name задайте значение User7 с помощью подключения к базе данных Neo4j.
nlabel = 'Person'; user7 = searchNode(neo4jconn,nlabel,'PropertyKey','name', ... 'PropertyValue','User7');
Создайте два узла в базе данных с помощью Neo4j подключения к базе данных. Используйте 'Labels' аргумент пары имя-значение для указания метки Person для каждого узла.
label = 'Person'; user8 = createNode(neo4jconn,'Labels',label); user9 = createNode(neo4jconn,'Labels',label);
Создайте две связи с помощью подключения к базе данных Neo4j. Укажите типы отношений как works with и studies with. Двумя взаимосвязями являются:
User8 работает с User7
User8 исследования с User9
startnode = [user8,user8];
endnode = [user7,user9];
relationtype = {'works with','studies with'};
relationinfo = createRelation(neo4jconn,startnode,endnode,relationtype)relationinfo=2×5 table
StartNodeID RelationType EndNodeID RelationData RelationObject
___________ ______________ _________ ____________ _______________________________________
9 6 'works with' 9 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]
7 6 'studies with' 7 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]
relationinfo - таблица со следующими переменными:
Идентификатор начального узла
Тип отношения
Идентификатор конечного узла
Данные о взаимоотношениях
Neo4jRelation объект
Отображение Neo4jRelation объект для первого отношения.
relation = relationinfo.RelationObject(1)
relation =
Neo4jRelation with properties:
RelationID: 9
RelationData: [1×1 struct]
StartNodeID: 6
RelationType: 'works with'
EndNodeID: 9
relation является Neo4jRelation объект со следующими свойствами:
Идентификатор связи
Данные о взаимоотношениях
Идентификатор начального узла
Тип отношения
Идентификатор конечного узла
Закройте подключение к базе данных.
close(neo4jconn)
neo4jconn - Neo4j подключение к базе данныхNeo4jConnect объектNeo4j подключение к базе данных, указанное как Neo4jConnect объект, созданный с помощью функции neo4j.
startnode - Начальный узелNeo4jNode объект | Neo4jNode массив объектовНачальный узел, указанный как числовой скаляр, числовой вектор, Neo4jNode объект, или Neo4jNode массив объектов. Чтобы указать узлы базы данных с помощью идентификаторов узлов, используйте числовой скаляр для одного узла или числовой вектор для нескольких узлов. Указание узлов базы данных как Neo4jNode используйте объект для одного узла или массив объектов для нескольких узлов.
Число начальных узлов должно соответствовать числу конечных узлов в endnode.
Число начальных узлов равно количеству связей, созданных createRelation функция в базе данных Neo4j.
Пример: 8
endnode - Конечный узелNeo4jNode объект | Neo4jNode массив объектовКонечный узел, указанный как числовой скаляр, числовой вектор, Neo4jNode объект, или Neo4jNode массив объектов. Чтобы указать узлы базы данных с помощью идентификаторов узлов, используйте числовой скаляр для одного узла или числовой вектор для нескольких узлов. Указание узлов базы данных как Neo4jNode используйте объект для одного узла или массив объектов для нескольких узлов.
Число конечных узлов должно соответствовать числу начальных узлов в startnode.
Количество конечных узлов равно количеству связей, созданных createRelation функция в базе данных Neo4j.
Пример: 9
relationtype - Тип отношенияТип отношения, заданный как вектор символа, скаляр строки, массив ячеек векторов символов или строковый массив. Чтобы указать один тип отношения, используйте вектор символа или скаляр строки. Чтобы указать несколько типов отношений, используйте массив ячеек из символьных векторов или строковый массив.
Если указан только один тип отношения, все отношения должны иметь один и тот же тип. В противном случае количество типов отношений в этом входном аргументе должно соответствовать количеству узлов в startnode и endnode.
Пример: 'knows'
Типы данных: char | string | cell
properties - Свойства взаимосвязиСвойства связи, указанные как структура, массив структуры, таблица или массив ячеек структур.
При указании структуры createRelation функция преобразует каждое поле и соответствующее ему значение в свойство и соответствующее ему значение в связи с базой данных. При указании таблицы с одной строкой функция преобразует каждую переменную и соответствующее ей значение в свойство и соответствующее ему значение в связи с базой данных.
createRelation функция также устанавливает RelationObject переменной relationinfo выходной аргумент для Neo4jRelation , который содержит информацию об отношениях.
Для нескольких связей укажите массив структуры или таблицу с несколькими строками.
Для нескольких связей с различными свойствами укажите массив ячеек структур.
Примечание
Если свойство не имеет соответствующего значения, то обновленное отношение не содержит этого свойства.
Типы данных: struct | table | cell
relationinfo - Информация о взаимоотношенияхNeo4jRelation объект | таблицаИнформация о связи, возвращенная как Neo4jRelation объект для одной связи или в виде таблицы для нескольких связей.
Для нескольких связей таблица содержит следующие переменные:
StartNodeID - Идентификатор начального узла для каждого сопоставленного отношения
RelationType - символьный вектор, обозначающий тип связи для каждой сопоставленной связи;
EndNodeID - Идентификатор конечного узла для каждого сопоставленного отношения
RelationData - Структурный массив, содержащий ключи свойств, связанные с каждой сопоставленной связью
RelationObject — Neo4jRelation объект для каждой сопоставленной связи
Имена строк в таблице являются Neo4j идентификаторами отношений.
close | createNode | deleteRelation | neo4j | removeRelationProperty | searchNode | searchRelation | setRelationProperty | updateRelation
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.