Развертывание приложения графовой базы данных с помощью MATLAB Compiler

В этом примере показано, как написать скрипт для анализа данных, хранящихся в графовой базе данных, и развернуть скрипт как автономное приложение. Написание кода, который соединяется с базой данных Neo4j ®, импортирует данные из базы данных в MATLAB ®, анализирует данные и закрывает соединение с базой данных. Затем можно развернуть код, скомпилировав его как автономное приложение с помощью приложения Application Compiler (MATLAB Compiler) и запустив приложение на других машинах.

В целом, пример следует шагам, описанным в разделе Создание автономного приложения из MATLAB (MATLAB Compiler), и обновляет шаги для автономного приложения базы данных.

Убедитесь, что у вас есть права администратора на других компьютерах, чтобы запустить автономное приложение.

Создайте функцию в MATLAB

Написание скрипта MATLAB с именем findShortestPathBetweenPeople.m и сохраните его в выбранном местоположении файла. Скрипт содержит findShortestPathBetweenPeople функция, которая возвращает расстояние между двумя людьми в график сети. Функция выполняет следующие действия:

  • Подключение к Neo4j базе данных, выполняемой на локальном компьютере

  • Импортирует данные графика и преобразует его в ориентированный граф

  • Выполняет анализ кратчайшего пути

  • Закрывает соединение с базой данных

type findShortestPathBetweenPeople.m
function distance = findShortestPathBetweenPeople(userA,userB)

%  FINDSHORTESTPATHBETWEENPEOPLE The findShortestPathBetweenPeople function
%  connects to a Neo4j® database, imports data from the database into
%  MATLAB®, finds the shortest path between two people, and closes the
%  database connection.

%%
% Create a Neo4j connection object |neo4jconn| using the URL
% |http://localhost:7474/db/data|, user name |neo4j|, and password
% |matlab|.

url = 'http://localhost:7474/db/data';
username = 'neo4j';
password = 'matlab';

neo4jconn = neo4j(url,username,password);

%%
% Find all the |Person| nodes and all the relationships associated with
% each |Person| node using |searchGraph|.

social_graphdata = searchGraph(neo4jconn,{'Person'});

%%
% Using the table |social_graphdata.Nodes|, access the |name| property for
% each node that appears in the |NodeData| variable of the table.
%
% Assign the table |social_graphdata.Nodes| to |nodestable|.

nodestable = social_graphdata.Nodes;

%%
% Assign the row names for each row in the table |nodestable| to
% |rownames|.

rownames = nodestable.Properties.RowNames;

%%
% Access the |NodeData| variable from |nodestable| for each row. |nodedata|
% contains an array of structures.

nodedata = [nodestable.NodeData{rownames}];

%%
% To retrieve the |name| field from each structure, index into the array.
% |nodenames| is a cell array of character vectors that contains node names.

nodenames = {nodedata(:).name};

%%
% Create the |digraph| object |social_graph| using the
% |neo4jStruct2Digraph| function with the graph data stored in
% |social_graphdata| and the node names stored in |nodenames|.

social_graph = neo4jStruct2Digraph(social_graphdata,'NodeNames',nodenames);

%%
% Find the shortest path between |UserA| and |UserB| using |shortestpath|.

[~,distance] = shortestpath(social_graph,userA,userB);

%%
% Close the database connection.
close(neo4jconn)

Создайте автономное приложение с помощью приложения Application Compiler

На вкладке MATLAB Apps, в крайнем правом углу раздела Apps, нажмите стрелу, чтобы открыть галерею Apps. В разделе Развертывание приложения щелкните Application Compiler.

В окне проекта MATLAB Compiler укажите основной файл приложения MATLAB, который необходимо развернуть.

  1. В разделе «Основной файл» панели инструментов нажмите кнопку.

  2. В диалоговом окне Add Files перейдите к расположению файла, содержащему ваш сохраненный скрипт. Выберите findShortestPathBetweenPeople.m и нажмите Открыть. Приложение Application Compiler добавляет findShortestPathBetweenPeople перейдите к списку основных файлов.

Решите, включать ли инсталлятор MATLAB Runtime в сгенерированное приложение, выбрав один из двух опций в разделе «Опции упаковки»:

  • Среда выполнения, загруженная из Интернета - генерирует инсталлятор, который загружает MATLAB Runtime и устанавливает его вместе с развернутым приложением MATLAB

  • Среда выполнения, включенная в пакет - Генерирует инсталлятор, который включает в себя инсталлятор MATLAB Runtime

Настройте упакованное приложение и его внешний вид путем ввода следующих опций:

  • Информация о приложении - редактируемая информация о развернутом приложении. Вы также можете настроить внешний вид автономного приложения, изменив значок приложения и заставку. Сгенерированный инсталлятор использует эти сведения для заполнения установленных метаданных приложения.

  • Дополнительные опции инсталлятора - Опции для редактирования пути установки по умолчанию для сгенерированного инсталлятора и выбора пользовательского логотипа.

  • Файлы, необходимые для запуска вашего приложения - Дополнительные файлы, необходимые для запуска сгенерированного приложения. Программное обеспечение включает эти файлы в созданный инсталлятор приложения.

  • Файлы, установленные для вашего конечного пользователя - Файлы, установленные вместе с вашим приложением. Эти файлы включают сгенерированные readme.txt файл и сгенерированный исполняемый файл для целевой платформы.

  • Дополнительные настройки среды выполнения - специфичные для платформы опции для управления сгенерированным исполняемым файлом.

Для получения дополнительной информации об этих опциях смотрите Настройка приложения (MATLAB Compiler).

Чтобы сгенерировать упакованное приложение, щелкните Пакет в разделе Пакет на панели инструментов. В диалоговом окне «Сохранение проекта» укажите местоположение, в котором будет сохранен проект.

В диалоговом окне Пакет проверьте, что выбрана выходная папка Открыть при завершении процесса.

Когда процесс развертывания будет завершен, исследуйте сгенерированные выходы.

  • for_redistribution - Папка, содержащая файл, устанавливающий приложение и MATLAB Runtime.

  • for_testing - Папка, содержащая все артефакты, созданные mcc (например, двоичные файлы, заголовки и исходные файлы для определенного целевого объекта). Используйте эти файлы для тестирования установки.

  • for_redistribution_files_only - Папка, содержащая файлы, необходимые для перераспределения приложения. Распространите эти файлы среди пользователей, у которых на компьютерах установлены MATLAB или MATLAB Runtime.

  • PackagingLog.txt - Файл журнала, сгенерированный MATLAB Compiler.

Установка и запуск автономного приложения

Для установки автономного приложения в for_redistribution папка, дважды кликните MyAppInstaller_web исполняемый файл.

Если необходимо подключиться к Интернету с помощью прокси-сервера, щелкните Параметры подключения. Введите настройки прокси-сервера в указанном диалоговом окне. Нажмите кнопку ОК.

Для завершения установки следуйте инструкциям мастера установки.

Чтобы запустить автономное приложение:

  1. Откройте окно терминала.

  2. Перейдите к папке, в которой вы установили приложение.

  3. Запустите приложение.

Тестирование автономного приложения на целевой машине

Выберите одну целевую машину, чтобы протестировать сгенерированное MATLAB автономное приложение.

Скопируйте файлы в for_testing папка на целевую машину.

Чтобы протестировать автономное приложение:

  1. Откройте окно терминала.

  2. Перейдите к for_testing папка.

  3. Запустите приложение.

Развертывание автономного приложения на целевых компьютерах

Скопируйте for_redistribution_files_only папка в расположение файла на всех целевых компьютерах, где установлены MATLAB или MATLAB Runtime и работает Neo4j сервер базы данных.

Запустите сгенерированное автономное приложение MATLAB на всех целевых компьютерах с помощью исполняемого файла в for_redistribution_files_only папка.

См. также

| | |

Похожие темы