Skip To Content

Consideraciones para las bases de datos de Neo4j utilizadas como data stores NoSQL

Si está utilizando bases de datos de Neo4j como data stores NoSQL registrados en su sitio de ArcGIS Knowledge, hay algunos detalles a tener en cuenta para garantizar que sus gráficos de conocimiento funcionen correctamente.

Crear un gráfico de conocimiento

El primer paso para utilizar una base de datos de Neo4j con su sitio de ArcGIS Knowledge es crear una base de datos de Neo4j mediante los comandos de administración de Neo4j. Registre la base de datos con su sitio como un data store NoSQL.

Cuando se registra una base de datos de Neo4j como un data store NoSQL, esta se puede registrar utilizando el nombre de la base de datos o un alias asignado a ella. El nombre o el alias que utilice está sujeto a las mismas restricciones de nomenclatura que el gráfico de conocimiento. Una vez creado el data store NoSQL, no se puede cambiar el nombre de la base de datos o el alias no se puede cambiar ni eliminar en Neo4j.

Cuando proporcione información de autenticación para conectarse a la instancia de Neo4j, asegúrese de que el usuario o la identidad con la que se accede a la base de datos tenga suficientes privilegios para admitir todas las operaciones necesarias por el gráfico de conocimiento que se creará.

El gráfico de conocimiento asociado al data store NoSQL tendrá el nivel de acceso asociado a las credenciales que se utilizaron para crear el data store NoSQL. Esas credenciales se respetan cuando cualquier cliente accede al contenido del servicio del gráfico de conocimiento. Por ejemplo, si el usuario solo puede acceder a un conjunto específico de entidades y relaciones, solo esos elementos estarán disponibles en la investigación de un proyecto ArcGIS Pro.

Más información sobre cómo administrar sus bases de datos de Neo4j

Administrar datos

Cuando crea un gráfico de conocimiento que utiliza un data store NoSQL, debe elegir cómo se administrarán los datos almacenados en la base de datos de Neo4j. Esta opción determina otros factores relacionados con la base de datos de Neo4j.

Por ejemplo, el graph store asociado a su sitio de ArcGIS Knowledge almacena información del esquema que debe mantenerse sincronizada con la información almacenada en las bases de datos de Neo4j asociadas a su sitio. La forma de hacerlo depende de cómo se administren los datos en la base de datos.

Debe crear un plan de copias de seguridad y restauración de sus bases de datos de Neo4j que este coordinado con el plan de copias de seguridad y restauración de la implementación de ArcGIS Enterprise y su graph store de ArcGIS Data Store.

Datos administrados por ArcGIS

Si un gráfico de conocimiento va a contener datos administrados por ArcGIS, la base de datos registrada debe estar vacía cuando la agrega a su implementación de ArcGIS Enterprise como data store NoSQL. Si una base de datos Neo4j no está completamente vacía, la operación para crear un gráfico de conocimiento con datos administrados por ArcGIS fallará.

Cuando cree un data store NoSQL que contendrá datos administrados por ArcGIS, las credenciales que proporcione para acceder a la base de datos Neo4j deberán tener los privilegios correspondientes al arquitecto de rol Neo4j incorporado.

Solo puede crear un data store NoSQL que acceda a una base de datos Neo4j en la que esta contenga datos administrados por ArcGIS. Del mismo modo, solo puede crear un gráfico de conocimiento que acceda a un data store NoSQL en el que la base de datos contenga datos administrados por ArcGIS. Por ejemplo, no puede crear un segundo gráfico de conocimiento que acceda al mismo data store NoSQL cuando designe que el data store NoSQL tiene datos administrados por el usuario.

Una vez creado un gráfico de conocimiento con datos administrados por ArcGIS, los identificadores de entidades y relaciones deben mantenerse sincronizados entre la base de datos de Neo4j y el graph store de ArcGIS Knowledge para que el gráfico de conocimiento permanezca operativo. Para garantizar la integridad de los datos, las ediciones de todos los sistemas asociados al gráfico de conocimiento solo se admiten mediante operaciones y solicitudes realizadas en ArcGIS Pro y ArcGIS Enterprise.

Las ediciones de datos y otros cambios realizados en la base de datos de Neo4j no se deben realizar desde fuera de ArcGIS. Esto incluye cambiar o eliminar los índices asociados a la base de datos de Neo4j, ya que estos son necesarios para permitir la búsqueda.

Datos administrados por el usuario

Si su base de datos de Neo4j contiene datos, puede registrarla como un data store NoSQL y crear un gráfico de conocimiento en el que se designe al data store NoSQL como aquel que tiene datos administrados por el usuario.

Cuando cree un data store NoSQL que contendrá datos administrados por el usuario, las credenciales que proporcione para acceder a la base de datos de Neo4j deben tener privilegios correspondientes al lector de rol Neo4j incorporado. Sin embargo, si habilita la búsqueda al crear el gráfico de conocimiento, deberá utilizar el arquitecto de roles integrado; las funcionalidades de búsqueda requieren privilegios suficientes para crear índices de texto completo en la base de datos de Neo4j.

Todas las entidades y relaciones en un gráfico de conocimiento deben tener un identificador único. Cuando cree un graph de conocimiento con un data store NoSQL administrado por el usuario, la base de datos debe contener una propiedad que sirva como identificador único. El nombre de la propiedad de identificador único debe ser el mismo para todos los tipos de entidad y tipos de relación y se debe proporcionar al crear el gráfico de conocimiento. El valor almacenado en la propiedad debe ser único en todos los tipos de entidad o en todos los tipos de relaciones, pero no tiene que ser globalmente único en todas las entidades y relaciones en la base de datos.

Si la búsqueda está habilitada para un gráfico de conocimiento, ArcGIS Knowledge crea índices de texto completo en la base de datos de Neo4j para permitir la búsqueda. Estos índices no se deben actualizar ni eliminar fuera de ArcGIS Knowledge. Los nombres de los índices comienzan por esri__.

Para buscar los datos del gráfico de conocimiento y agregarlos a un gráfico de vínculos o un mapa, debe sincronizar el modelo de datos de la base de datos de Neo4j con el graph store de ArcGIS Knowledge. Si un nodo o relación en la base de datos Neo4j tiene varias etiquetas, la sincronización del modelo de datos falla. Cuando se produce este fallo, se puede acceder a los datos asociados con la información del modelo de datos sincronizado anteriormente, pero no puede agregar datos a un gráfico de vínculos ni a un mapa asociado a partes del modelo de datos que no se ha sincronizado. Debe sincronizar el modelo de datos siempre que el esquema cambie en la base de datos de Neo4j.

Puede crear muchos data store NoSQL que accedan a la misma base de datos de Neo4j siempre que ésta no contenga datos administrados por ArcGIS creados por un gráfico de conocimiento diferente, y que cada data store acceda a la misma base de datos con credenciales distintas. También puede crear muchos gráficos de conocimiento que accedan a un único data store NoSQL que se designe con datos administrados por el usuario. Cualquiera de estos métodos puede producir muchos gráficos de conocimiento que accedan a la misma base de datos de Neo4j subyacente. Utilice el portal ArcGIS Enterprise para controlar quién puede acceder a cada gráfico de conocimiento.

Por ejemplo, si tiene dos gráficos de conocimiento y cada uno está asociado a un data store NoSQL diferente, y cada data store NoSQL accede a la base de datos de Neo4j utilizando credenciales distintas, asegúrese de que cada gráfico de conocimiento se comparte con el grupo correcto de usuarios del portal ArcGIS Enterprise. Comparta cada gráfico de conocimiento con un grupo independiente del portal. Establezca la pertenencia a cada grupo del portal para que cada usuario del portal tenga acceso al contenido correcto utilizando el gráfico de conocimiento correcto.

Del mismo modo, puede crear dos gráficos de conocimiento que accedan al mismo data store NoSQL utilizando credenciales que proporcionen acceso completo a una base de datos de Neo4j. Sin embargo, puede controlar lo que los distintos usuarios del portal pueden hacer con la información disponible compartiendo los gráficos de conocimiento de forma diferente en el portal ArcGIS Enterprise. Un gráfico de conocimiento puede compartirse con un grupo en el que todos los miembros tengan asignado el rol de visor y, por tanto, solo tengan acceso de lectura al contenido. El otro gráfico de conocimiento puede compartirse con un grupo diferente en el que los miembros tengan el rol de Editor y, por tanto, puedan editar las entidades y relaciones y sus propiedades.

Los gráficos de conocimiento que acceden a datos administrados por el usuario en una base de datos de Neo4j son de solo lectura cuando se accede a ellos en un proyecto de ArcGIS Pro. Si accede al mismo gráfico de conocimiento utilizando una API para desarrolladores de ArcGIS Enterprise, podrá editar las entidades y relaciones y los valores de sus propiedades; sin embargo, el modelo de datos del gráfico de conocimiento seguirá siendo de solo lectura. Es decir, no puede agregar nuevos tipos de entidad ni tipos de relación ni agregar nuevas propiedades a los tipos existentes.

Eliminar la base de datos

Cuando ya no necesite algún gráfico de conocimiento, puede eliminarlo en el portal de Enterprise. Los datos del gráfico de conocimiento se eliminan automáticamente del almacén de gráficos. Sin embargo, si el gráfico de conocimiento hace referencia a un data store NoSQL, el data store y su base de datos de Neo4j asociada no se eliminan automáticamente.

Si el gráfico de conocimiento contenía datos administrados por ArcGIS, no puede crear otro gráfico de conocimiento administrado por ArcGIS a partir del mismo data store NoSQL porque la base de datos de Neo4j no está vacía. Sin embargo, si el gráfico de conocimiento contenía datos administrados por el usuario, puede crear un nuevo gráfico de conocimiento que acceda a los datos del data store NoSQL existente.

Si ya no pretende usar una base de datos de Neo4j con ArcGIS Knowledge, puede eliminar el data store NoSQL del portal de Enterprise. La base de datos de Neo4j asociada no se elimina. Antes de eliminar el elemento de data store NoSQL, compruebe su configuración y anote a qué base de datos de Neo4j hace referencia. Puede seguir los pasos para archivar los datos y eliminar la base de datos de Neo4j utilizando las utilidades de Neo4j y los comandos de administración según las directrices de su organización.

Nota:

Una vez que se haya eliminado un gráfico de conocimiento del portal de Enterprise, no podrá utilizar ninguna investigación almacenada en sus proyectos de ArcGIS Pro a los que haga referencia el gráfico de conocimiento eliminado. Una investigación existente no se puede asociar a un gráfico de conocimiento diferente. Tendrá que eliminar las investigaciones que hagan referencia al gráfico de conocimiento eliminado de todos los proyectos donde estén presentes o eliminar los proyectos, según corresponda.

Si el gráfico de conocimiento se ha transferido a una nueva implementación de Enterprise, las capas existentes del gráfico de conocimiento en un mapa o un gráfico de vínculos pueden actualizarse para utilizar el nuevo gráfico de conocimiento, aunque la investigación deba eliminarse.