Сохранить направленный график в базе данных Neo4j
storeDigraph( указывает дополнительные параметры, использующие один или несколько аргументов пары имя-значение. Например, neo4jconn,G,Name,Value)'GlobalNodeLabel','Person' сохраняет все узлы в направленном графике с помощью Person метка узла.
Создать digraph объект и сохранить его содержимое в базе данных Neo4j ®. Отображение содержимого результирующего графика 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 =
[]
Создать digraph с тремя узлами, который представляет новый граф Neo4j. Узлы представляют три дополнительных пользователя: User8, User9, и User10.
G = digraph([1 1 3],[2 3 2],[1 2 3],{'User8','User9','User10'});Сохраните данные в виде графика Neo4j в базе данных Neo4j.
storeDigraph(neo4jconn,G)
По умолчанию storeDigraph функция сохраняет направленный граф без меток узлов. Кроме того, функция сохраняет отношения с типом отношений по умолчанию. Edge.
Отображение информации о Neo4j узлах графика. graphinfo - структура, содержащая сведения о узле и связи.
criteria = ["Edge"];
graphinfo = searchGraph(neo4jconn,criteria);
graphinfo.Nodesans=3×3 table
NodeLabels NodeData NodeObject
__________ ____________ ___________________________________
7 [] [1×1 struct] [1x1 database.neo4j.http.Neo4jNode]
52 [] [1×1 struct] [1x1 database.neo4j.http.Neo4jNode]
47 [] [1×1 struct] [1x1 database.neo4j.http.Neo4jNode]
Nodes - таблица, содержащая следующие переменные:
Метка узла
Данные узла
Neo4jNode объект
Отображение информации о взаимосвязях графика Neo4j.
graphinfo.Relations
ans=3×5 table
StartNodeID RelationType EndNodeID RelationData RelationObject
___________ ____________ _________ ____________ _______________________________________
17 7 'Edge' 52 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]
18 47 'Edge' 52 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]
35 7 'Edge' 47 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]
Relations - таблица, содержащая следующие переменные:
Идентификатор начального узла
Тип отношения
Идентификатор конечного узла
Данные о взаимоотношениях
Neo4jRelation объект
Закройте подключение к базе данных.
close(neo4jconn)
Создать digraph объект и сохранить его содержимое в базе данных Neo4j ®. Укажите метку узла для применения ко всем узлам на результирующем графике Neo4j. Укажите тип взаимосвязи для применения ко всем взаимосвязям в результирующем графике 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 =
[]
Создать digraph с тремя узлами, который представляет новый граф Neo4j. Узлы представляют три дополнительных пользователя: User8, User9, и User10.
G = digraph([1 1 3],[2 3 2],[1 2 3],["User8" "User9" "User10"]);
Сохраните данные в виде графика Neo4j в базе данных Neo4j. Укажите метку узла Person для каждого узла в результирующем графике Neo4j с помощью 'GlobalNodeLabel' аргумент пары имя-значение. Укажите тип связи knows для каждого отношения в графике с помощью 'GlobalRelationType' аргумент пары имя-значение.
storeDigraph(neo4jconn,G,'GlobalNodeLabel','Person', ... 'GlobalRelationType','knows')
Отображение информации о Neo4j узлах графика. graphinfo - структура, содержащая сведения о узле и связи.
criteria = {'Person'};
graphinfo = searchGraph(neo4jconn,criteria);
graphinfo.Nodesans=10×3 table
NodeLabels NodeData NodeObject
__________ ____________ ___________________________________
0 'Person' [1×1 struct] [1x1 database.neo4j.http.Neo4jNode]
48 'Person' [1×1 struct] [1x1 database.neo4j.http.Neo4jNode]
1 'Person' [1×1 struct] [1x1 database.neo4j.http.Neo4jNode]
2 'Person' [1×1 struct] [1x1 database.neo4j.http.Neo4jNode]
3 'Person' [1×1 struct] [1x1 database.neo4j.http.Neo4jNode]
4 'Person' [1×1 struct] [1x1 database.neo4j.http.Neo4jNode]
5 'Person' [1×1 struct] [1x1 database.neo4j.http.Neo4jNode]
9 'Person' [1×1 struct] [1x1 database.neo4j.http.Neo4jNode]
49 'Person' [1×1 struct] [1x1 database.neo4j.http.Neo4jNode]
50 'Person' [1×1 struct] [1x1 database.neo4j.http.Neo4jNode]
Nodes - таблица, содержащая следующие переменные:
Метка узла
Данные узла
Neo4jNode объект
graphinfo содержит три дополнительных узла.
Отображение информации о взаимосвязях графика Neo4j.
graphinfo.Relations
ans=11×5 table
StartNodeID RelationType EndNodeID RelationData RelationObject
___________ ____________ _________ ____________ _______________________________________
1 0 'knows' 1 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]
0 0 'knows' 2 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]
3 1 'knows' 3 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]
2 2 'knows' 1 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]
5 3 'knows' 4 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]
4 3 'knows' 5 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]
6 5 'knows' 4 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]
8 5 'knows' 9 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]
19 48 'knows' 49 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]
7 48 'knows' 50 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]
9 50 'knows' 49 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]
Relations - таблица, содержащая следующие переменные:
Идентификатор начального узла
Тип отношения
Идентификатор конечного узла
Данные о взаимоотношениях
Neo4jRelation объект
graphinfo содержит три дополнительных отношения.
Закройте подключение к базе данных.
close(neo4jconn)
Создать digraph путем задания узлов и ребер. Затем сохраните направленный график в базе данных Neo4j ®, указав метки узлов и типы связей. Отображение содержимого результирующего графика 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 =
[]
Создайте таблицу для узлов. Определите names переменная, которая содержит имена трех дополнительных людей: User8, User9, и User10. Затем определите classification переменная для классификации каждого человека как Person. Также определите titles переменная, которая содержит название должности каждого человека. Первые два человека - аналитики, а третий - техник.
names = {'User8';'User9';'User10'};
classification = {'Person';'Person';'Person'};
titles = {'Analyst';'Analyst';'Technician'};
nodetable = table(names,classification,titles,'VariableNames', ...
{'Name','Classification','Title'});Создайте таблицу с двумя ребрами. Одно ребро указывает, что два человека знают друг друга. Другое ребро указывает, что два человека работают друг с другом.
edge1 = [1 2];
edge2 = [3 3];
description = {'knows','works with'};
edgetable = table([edge1',edge2'],description', ...
'VariableNames',{'EndNodes','Description'});Создать digraph с использованием таблиц ребер и узлов.
G = digraph(edgetable,nodetable);
Сохранить данные в digraph объект в виде графа Neo4j в базе данных Neo4j. Укажите метки узлов для каждого узла в результирующем графике Neo4j с помощью 'NodeLabel' аргумент пары имя-значение. График использует Classification и Title переменные таблицы узлов для меток узлов. Кроме того, график использует Description переменной таблицы кромок для типов взаимосвязей.
labels = {'Classification';'Title'};
relation = 'Description';
graphinfo = storeDigraph(neo4jconn,G,'NodeLabel',labels, ...
'RelationType',relation)graphinfo = struct with fields:
Nodes: [3×3 table]
Relations: [2×5 table]
Отображение информации о Neo4j узлах графика.
graphinfo.Nodes
ans=3×3 table
NodeLabels NodeData NodeObject
__________ ____________ ___________________________________
6 {2×1 cell} [1×1 struct] [1x1 database.neo4j.http.Neo4jNode]
52 {2×1 cell} [1×1 struct] [1x1 database.neo4j.http.Neo4jNode]
7 {2×1 cell} [1×1 struct] [1x1 database.neo4j.http.Neo4jNode]
Nodes - таблица, содержащая следующие переменные:
Метка узла
Данные узла
Neo4jNode объект
Отображение информации о взаимосвязях графика Neo4j.
graphinfo.Relations
ans=2×5 table
StartNodeID RelationType EndNodeID RelationData RelationObject
___________ ____________ _________ ____________ _______________________________________
17 6 'knows' 7 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]
35 52 'works with' 7 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]
Relations - таблица, содержащая следующие переменные:
Идентификатор начального узла
Тип отношения
Идентификатор конечного узла
Данные о взаимоотношениях
Neo4jRelation объект
Закройте подключение к базе данных.
close(neo4jconn)
neo4jconn - Neo4j подключение к базе данныхNeo4jConnect объектNeo4j подключение к базе данных, указанное как Neo4jConnect объект, созданный с помощью функции neo4j.
G - Направленный графикdigraph объектНаправленный график, указанный как digraph объект.
Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.
graphinfo = storeDigraph(neo4jconn,G,'GlobalNodeLabel','Person','GlobalRelationType','knows') сохраняет направленный граф и указывает, что все узлы в результирующем графе имеют Person метка узла и все связи имеют knows тип.Примечание
Если не указать 'GlobalNodeLabel' или 'NodeLabel', результирующий график Neo4j содержит узлы без меток.
'GlobalNodeLabel' - Метка глобального узлаМетка глобального узла, заданная как разделенная запятыми пара, состоящая из 'GlobalNodeLabel' и символьный вектор, массив ячеек символьных векторов, строковый скаляр или строковый массив. Чтобы указать метку одного узла, используйте вектор символов или скаляр строки. Чтобы указать несколько меток узлов, используйте массив ячеек из символьных векторов или строковый массив.
После выполнения storeDigraph функция, каждый узел в результирующем графике Neo4j содержит метки узлов, которые задаются с помощью этого аргумента пары имя-значение.
Пример: "Person"
Пример: {'Person','Employee'}
Типы данных: char | string | cell
'NodeLabel' - Метка узлаМетка узла, указанная как разделенная запятыми пара, состоящая из 'NodeLabel' и символьный вектор, массив ячеек символьных векторов, строковый скаляр или строковый массив. Чтобы указать метку одного узла, используйте вектор символов или скаляр строки. Чтобы указать несколько меток узлов, укажите массив ячеек из символьных векторов или строковый массив.
Чтобы задать различные метки для узлов в результирующем графике Neo4j, используйте этот аргумент пары имя-значение. Указанные метки узла должны соответствовать именам переменных в таблице сведений о узле в digraph объект.
Пример: "Person"
Пример: {'Name','Title'}
Типы данных: char | string | cell
'GlobalRelationType' - Тип глобального отношения'Edge' (по умолчанию) | символьный вектор | строковый скалярТип глобального отношения, указанный как пара, разделенная запятыми, состоящая из 'GlobalRelationType' и вектор символов или строковый скаляр. Чтобы указать один и тот же тип взаимосвязи для всех связей между узлами в результирующем графе Neo4j, используйте этот аргумент пары имя-значение.
Примечание
При указании типа связи используйте либо 'GlobalRelationType' или 'RelationType' аргумент пары имя-значение. Нельзя указать оба этих аргумента одновременно.
Пример: "knows"
Типы данных: char | string
'RelationType' - Тип отношения'Edge' (по умолчанию) | символьный вектор | строковый скалярТип отношения, указанный как пара, разделенная запятыми, состоящая из 'RelationType' и вектор символов или строковый скаляр. Чтобы указать различные типы отношений между узлами в результирующем графе Neo4j, используйте этот аргумент пары имя-значение. Указанные типы должны соответствовать именам переменных в таблице сведений о границах в digraph объект.
Примечание
При указании типа связи используйте либо 'RelationType' или 'GlobalRelationType' аргумент пары имя-значение. Нельзя указать оба этих аргумента одновременно.
Пример: 'Description'
Типы данных: char | string
graphinfo - Графическая информацияГрафическая информация в базе данных Neo4j, возвращенная в виде структуры с этими полями.
| Область | Описание |
|---|---|
| Таблица, содержащая информацию о каждом узле в
Имена строк в таблице являются Neo4j идентификаторами узлов. |
| Таблица, содержащая информацию о связи для узлов в
Имена строк в таблице являются Neo4j идентификаторами отношений. |
storeDigraph функция сохраняет все объекты MATLAB ® как JSONstring эквиваленты на графике Neo4j. Например, функция сохраняет дату. datetime('Jan/01/2017') как "Jan/01/2017" на графике Neo4j.
addNodeLabel | close | createNode | createRelation | deleteNode | deleteRelation | neo4j | removeNodeLabel | removeNodeProperty | removeRelationProperty | setNodeProperty | setRelationProperty
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.