Чтобы обеспечить правильную работу графов знаний при использовании базы данных Neo4j в качестве хранилищ данных NoSQL, зарегистрированных на вашем сайте ArcGIS Knowledge, необходимо учитывать некоторые детали. Например, вы должны создать скоординированный план резервного копирования и восстановления, который будет синхронизировать резервные копии ваших баз данных Neo4j, хранилища графа ArcGIS Data Store и вашего развертывания ArcGIS Enterprise.
Создать граф знаний
Первым шагом в использовании базы данных Neo4j на вашем сайте ArcGIS Knowledge является создание базы данных Neo4j с помощью команд администрирования Neo4j. Зарегистрируйте базу данных на своем сайте как хранилище данных NoSQL.
Когда база данных Neo4j регистрируется как хранилище данных NoSQL, ее можно зарегистрировать, используя либо имя базы данных, либо присвоенный ей псевдоним. На используемое вами имя или псевдоним распространяются те же ограничения на задание имен, что и на граф знаний. После создания хранилища данных NoSQL невозможно переименовать базу данных или изменить псевдоним или добавить его в Neo4j.
Когда вы предоставляете данные аутентификации для подключения к экземпляру Neo4j, убедитесь, что пользователь или удостоверение, с которым осуществляется доступ к базе данных, имеет достаточные права для поддержки всех операций, необходимых для графа знаний, который будет создан.
Хранилище данных NoSQL и, следовательно, база данных Neo4j могут быть связаны только с одним графом знаний.
Управление данными
Когда вы создаете граф знаний, используя хранилище данных NoSQL, вы должны выбрать способ управления данными, хранящимися в базе данных Neo4j. Этот выбор определяет другие факторы, касающиеся базы данных Neo4j.
Например, хранилище графов, связанное с вашим сайтом ArcGIS Knowledge, хранит информацию о схеме, которая должна синхронизироваться с информацией, хранящейся в базах данных Neo4j, связанных с вашим сайтом. Как это достигается, зависит от того, как управляются данные в базе данных.
Данные, управляемые ArcGIS
Если граф знаний будет содержать данные, управляемые ArcGIS, зарегистрированная база данных должна быть пустой, когда вы добавляете ее в качестве хранилища данных NoSQL. Если база данных Neo4j не полностью пуста, операция по созданию графа знаний с данными, управляемыми ArcGIS, завершится ошибкой.
Идентификаторы элементов и связей должны синхронизироваться между базами данных Neo4j и хранилищем графов ArcGIS Knowledge, чтобы граф знаний оставался работоспособным. Для обеспечения целостности данных редактирование всех систем, связанных с графом знаний, включая связанные базы данных Neo4j, поддерживается только посредством операций и запросов, выполненных к графу знаний в ArcGIS Pro и ArcGIS Enterprise.
Редактирование данных и другие изменения в базе данных Neo4j не должны производиться вне ArcGIS. Это включает в себя изменение или удаление любых индексов, связанных с базой данных Neo4j, поскольку они необходимы для поддержки поиска.
Данные, управляемые пользователем
Если ваша база данных Neo4j содержит данные, вы можете зарегистрировать базу данных как хранилище данных NoSQL и создать граф знаний, содержащий данные, управляемые пользователем. Данные и модель данных доступны только для чтения при доступе с помощью ArcGIS Knowledge.
Все элементы и отношения в графе знаний должны иметь уникальный идентификатор. Имя свойства уникального идентификатора должно быть одинаковым для всех типов элементов и типов отношений и должно предоставляться при настройке нового графа знаний. Значение, хранящееся в свойстве, должно быть уникальным для всех типов элементов или для всех типов отношений, но не должно быть глобально уникальным для всех элементов и отношений в базе данных.
Если для графа знаний включен поиск, в базе данных Neo4j ArcGIS Knowledge создает полнотекстовые индексы для поддержки поиска. Эти индексы нельзя обновлять или удалять вне ArcGIS Knowledge. Имена индексов начинаются с esri__.
Для поиска данных графа знаний и добавления их на диаграмму связей или карту необходимо синхронизировать модель данных базы данных Neo4j с хранилищем графа ArcGIS Knowledge. Если узел или отношение в базе данных Neo4j имеют несколько надписей, синхронизация модели данных завершается ошибкой. При возникновении этого сбоя данные, связанные с ранее синхронизированной информацией модели данных, могут быть доступны, но вы не можете добавлять данные в диаграмму связей или карту, связанные с частями модели данных, которые не были синхронизированы. Вы должны синхронизировать модель данных при каждом изменении схемы в базе данных Neo4j.
Удалить базу данных
Когда вам больше не нужен будет граф знаний, вы сможете удалить его на портале Enterprise. Данные для графа знаний автоматически удаляются из хранилища графов. Однако если граф знаний ссылается на хранилище данных NoSQL, хранилище данных и связанная с ним база данных Neo4j не удаляются автоматически.
Если граф знаний содержит данные, управляемые ArcGIS, вы не сможете создать другой граф знаний, управляемый ArcGIS, из того же хранилища данных NoSQL, поскольку база данных Neo4j не пуста. Однако, если граф знаний содержит данные, управляемые пользователем, вы можете создать новый граф знаний, который обращается к данным в существующем хранилище данных NoSQL.
Если вы больше не собираетесь использовать базу данных Neo4j с ArcGIS Knowledge, вы можете удалить хранилище данных NoSQL на портале Enterprise. Это не удаляет связанную базу данных Neo4j. Прежде чем удалять элемент хранилища данных NoSQL, проверьте его настройки и запишите, на какую базу данных Neo4j он ссылается. Затем вы можете выполнить шаги для архивирования данных и удаления базы данных Neo4j с помощью утилит Neo4j и команд администрирования в соответствии с рекомендациями вашей организации.
Примечание:
После удаления графа знаний с портала Enterprise вы не сможете использовать исследования, хранящиеся в ваших проектах ArcGIS Pro, которые ссылаются на удаленный граф знаний. Существующее исследование или диаграмма связей не могут быть связаны с другим графом знаний. Вам придется удалить исследования, которые ссылаются на удаленный граф знаний, из всех проектов, где они существуют, или удалить сами проекты, если это целесообразно.