Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Este ejemplo muestra cómo cargar datos en Amazon Neptune. A menos que se indique lo contrario, debe seguir estos pasos desde una instancia de Amazon Elastic Compute Cloud (Amazon EC2) en la misma Amazon Virtual Private Cloud (VPC) que su instancia de base de datos de Neptune.
Ejemplo de requisitos previos de carga de datos
Antes de comenzar, debe disponer de lo siguiente:
-
Una instancia de base de datos de Neptune.
Para obtener información acerca del inicio de una instancia de base de datos de Neptune, consulte Creación de un clúster de Amazon Neptune.
-
Un bucket de Amazon Simple Storage Service (Amazon S3) en el que colocar los datos.
Es posible utilizar un bucket existente. Si no tiene un bucket de S3, consulte Crear un bucket en la Guía de introducción de Amazon S3.
-
Datos del gráfico que se van a cargar, en uno de los formatos admitidos por el programa de carga de Neptune:
Si utiliza Gremlin para consultar el gráfico, Neptune puede cargar datos en formato comma-separated-values (
CSV
), como se describe en. Formato de datos de carga de GremlinSi utiliza openCypher para consultar el gráfico, Neptune también puede cargar datos en un formato
CSV
específico de openCypher, como se describe en Formato de carga para los datos de openCypher.Si utiliza SPARQL, Neptune puede cargar los datos en una serie de formatos RDF, tal y como se describe en Formatos de los datos de carga de RDF.
-
Un rol de IAM para que la instancia de base de datos de Neptune asuma que tiene una política de IAM que permite el acceso a los archivos de datos en el bucket de S3. La política debe conceder permisos de lectura y lista.
Para obtener información acerca de cómo crear un rol con acceso a Amazon S3 y, después, asociarlo a un clúster de Neptune, consulte Requisitos previos: rol de IAM y acceso a Amazon S3.
nota
La API
Load
de Neptune necesita acceso de lectura solo para los archivos de datos. No es necesario que la política de IAM conceda acceso de escritura o acceso al bucket completo. Un punto de conexión de VPC de Amazon S3. Para obtener más información, consulte la sección Creación de un punto de conexión de VPC de Amazon S3.
Creación de un punto de conexión de VPC de Amazon S3
El programa de carga de Neptune requiere un punto de conexión de VPC para Amazon S3.
Para configurar el acceso a Amazon S3
Inicie sesión en la consola de Amazon VPC AWS Management Console y ábrala en. https://console.aws.amazon.com/vpc/
En el panel de navegación izquierdo, seleccione Puntos de conexión.
Seleccione Crear punto de conexión.
-
Elija el Service Name (Nombre del servicio)
com.amazonaws.
.region
.s3nota
Si la región indicada es incorrecta, asegúrese de que la región de la consola es correcta.
Elija la VPC que contiene la instancia de base de datos de Neptune.
Seleccione la casilla de verificación situada junto a las tablas de ruteo asociadas a las subredes relacionadas con el clúster. Si solo tiene una tabla de ruteo, debe seleccionar esa casilla.
Seleccione Crear punto de conexión.
Para obtener más información acerca de la creación del punto de conexión, consulte Puntos de conexión de la VPC en la Guía del usuario de Amazon VPC. Para obtener información acerca de las limitaciones de los puntos de conexión de VPC, consulte VPC Endpoints for Amazon S3.
Para cargar datos en una instancia de base de datos de Neptune
-
Copie los archivos de datos en un bucket de Amazon S3. El bucket de S3 debe estar en la misma AWS región que el clúster que carga los datos.
Puede usar el siguiente AWS CLI comando para copiar los archivos al bucket.
nota
No es necesario ejecutar este comando desde la EC2 instancia de Amazon.
aws s3 cp
data-file-name
s3://bucket-name
/object-key-name
nota
En Amazon S3, un nombre de una clave de objeto es la ruta completa de un archivo, incluido el nombre de este.
Ejemplo: en el comando
aws s3 cp datafile.txt s3://examplebucket/mydirectory/datafile.txt
, el nombre de la clave de objeto esmydirectory/datafile.txt
.Como alternativa, puede utilizarla AWS Management Console para cargar archivos en el bucket de S3. Abra la consola Amazon S3 en https://console.aws.amazon.com/s3/
y elija un bucket. En la esquina superior izquierda, elija Upload (Cargar) para cargar los archivos. -
Desde una ventana de la línea de comandos, introduzca lo siguiente para ejecutar el programa de carga de Neptune con los valores correctos para su punto de conexión, la ruta de Amazon S3, el formato y el ARN del rol de IAM.
El parámetro
format
puede tener cualquiera de los siguientes valores:csv
para Gremlin,opencypher
para openCypher ontriples
,nquads
,turtle
yrdfxml
para RDF. Para obtener información acerca del resto de parámetros, consulte Comando del programa de carga de Neptune.Para obtener información acerca de cómo encontrar el nombre de host de la instancia de base de datos de Neptune, consulte la sección Conexión a los puntos de conexión de Amazon Neptune.
El parámetro de región debe coincidir con la región del clúster y del bucket de S3.
Amazon Neptune está disponible en las siguientes regiones: AWS
Este de EE. UU. (Norte de Virginia):
us-east-1
Este de EE. UU. (Ohio):
us-east-2
Oeste de EE. UU. (Norte de California):
us-west-1
Oeste de EE. UU. (Oregón):
us-west-2
Canadá (centro):
ca-central-1
América del Sur (São Paulo):
sa-east-1
Europa (Estocolmo):
eu-north-1
Europa (España):
eu-south-2
Europa (Irlanda):
eu-west-1
Europa (Londres):
eu-west-2
Europa (París):
eu-west-3
Europa (Fráncfort):
eu-central-1
Medio Oriente (Baréin):
me-south-1
Medio Oriente (EAU):
me-central-1
Israel (Tel Aviv):
il-central-1
África (Ciudad del Cabo):
af-south-1
Asia Pacífico (Hong Kong):
ap-east-1
Asia-Pacífico (Tokio):
ap-northeast-1
Asia-Pacífico (Seúl):
ap-northeast-2
Asia-Pacífico (Osaka):
ap-northeast-3
Asia-Pacífico (Singapur):
ap-southeast-1
Asia-Pacífico (Sídney):
ap-southeast-2
Asia-Pacífico (Yakarta):
ap-southeast-3
Asia-Pacífico (Bombay):
ap-south-1
China (Pekín):
cn-north-1
China (Ningxia):
cn-northwest-1
AWS GovCloud (EE. UU.-Oeste):
us-gov-west-1
AWS GovCloud (EEUU-Este):
us-gov-east-1
curl -X POST \ -H 'Content-Type: application/json' \ https://
your-neptune-endpoint
:port
/loader -d ' { "source" : "s3://bucket-name
/object-key-name
", "format" : "format
", "iamRoleArn" : "arn:aws:iam::account-id
:role/role-name
", "region" : "region
", "failOnError" : "FALSE", "parallelism" : "MEDIUM", "updateSingleCardinalityProperties" : "FALSE", "queueRequest" : "TRUE", "dependencies" : ["load_A_id", "load_B_id"
] }'Para obtener información acerca de cómo crear y asociar un rol de IAM a un clúster de Neptune, consulte Requisitos previos: rol de IAM y acceso a Amazon S3.
nota
Consulte Parámetros de solicitudes del programa de carga de Neptune para obtener información detallada sobre los parámetros de solicitud de carga. En resumen:
El parámetro
source
acepta un URI de Amazon S3 que apunta a un archivo único o a una carpeta. Si especifica una carpeta, Neptune carga todos los archivos de datos en esta.La carpeta puede contener varios archivos de vértice y varios archivos de borde.
El URI puede tener cualquiera de los siguientes formatos:
s3://
bucket_name
/object-key-name
https://s3.amazonaws.com/
bucket_name
/object-key-name
https://s3-us-east-1.amazonaws.com/
bucket_name
/object-key-name
Este parámetro
format
puede ser uno de los siguientes:Formato CSV de Gremlin (
csv
) para gráfico de propiedades de GremlinFormato CSV de openCypher (
opencypher
) para gráficos de propiedades de openCypherFormato N -Triples (
ntriples
) para RDF/SPARQLFormato N-Quads (
nquads
) para RDF/SPARQLFormato RDF/XML (
rdfxml
) para RDF/SPARQLFormato Turtle (
turtle
) para RDF/SPARQL
El parámetro opcional
parallelism
le permite restringir el número de subprocesos utilizados en el proceso de carga masiva. Se puede establecer enLOW
,MEDIUM
,HIGH
oOVERSUBSCRIBE
.Cuando
updateSingleCardinalityProperties
se establece en"FALSE"
, el cargador devuelve un error si se proporciona más de un valor en un archivo de origen que se está cargando para una propiedad de borde o de vértice de cardinalidad única.Si
queueRequest
se establece en"TRUE"
, la solicitud de carga se colocará en una cola si ya se está ejecutando un trabajo de carga.El parámetro
dependencies
hace que la ejecución de la solicitud de carga dependa de la finalización correcta de uno o más trabajos de carga que ya se han colocado en la cola. -
El programa de carga de Neptune devuelve un
id
de tarea que le permite comprobar el estado o cancelar el proceso de carga; por ejemplo:{ "status" : "200 OK", "payload" : { "loadId" : "
ef478d76-d9da-4d94-8ff1-08d9d4863aa5
" } } -
Escriba lo siguiente para obtener el estado de la carga con el
loadId
del paso 3:curl -G 'https://
your-neptune-endpoint
:port
/loader/ef478d76-d9da-4d94-8ff1-08d9d4863aa5
'Si el estado de la carga muestra un error, puede solicitar un estado más detallado y una lista de los errores. Para obtener más información y ejemplos, consulta API de Neptune Loader Get-Status .
-
(Opcional) Cancele la tarea
Load
.Escriba lo siguiente
Delete
la tarea del programa de carga con elid
de tarea del paso 3:curl -X DELETE 'https://
your-neptune-endpoint
:port
/loader/ef478d76-d9da-4d94-8ff1-08d9d4863aa5
'El comando
DELETE
devuelve el código HTTP200 OK
si la cancelación se realiza correctamente.Los datos de los archivos de la tarea de carga que han terminado de cargarse no se revierten, Los datos permanecen en la instancia de base de datos de Neptune.