Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Connettore Amazon Athena Neptune
Amazon Neptune è un servizio di database a grafo gestito rapido e affidabile che rende più semplice la creazione e l'esecuzione di applicazioni che funzionano con set di dati altamente connessi. Il motore di database a grafo dedicato e a prestazioni elevate di Neptune archivia miliardi di relazioni e invia query al grafo con una latenza di millisecondi. Per ulteriori informazioni, consulta la Guida per l'utente di Neptune.
Il connettore Amazon Athena Neptune consente ad Athena di comunicare con l'istanza del database a grafo Neptune, rendendo i dati del grafico Neptune accessibili tramite query SQL.
Se hai abilitato Lake Formation nel tuo account, il ruolo IAM per il tuo connettore Lambda federato Athena che hai distribuito nell'accesso in lettura deve avere accesso in lettura in AWS Serverless Application Repository Lake Formation a. AWS Glue Data Catalog
Prerequisiti
L'utilizzo del connettore Neptune richiede i seguenti tre passaggi.
-
Configurazione di un cluster Neptune
-
Configurare un AWS Glue Data Catalog
-
Implementazione del connettore sul tuo Account AWS. Per ulteriori informazioni, consulta Distribuzione di un connettore origine dati o Utilizzo di AWS Serverless Application Repository per distribuire un connettore origine dati. Per ulteriori dettagli specifici sulla distribuzione del connettore Neptune, consulta Distribuire il connettore Amazon Athena Neptune su
.com. GitHub
Limitazioni
Attualmente, il Neptune Connector presenta le seguenti limitazioni.
-
La proiezione di colonne, inclusa la chiave primaria (ID), non è supportata.
Configurazione di un cluster Neptune
Se non disponi di un cluster Amazon Neptune esistente e di un set di dati con grafici delle proprietà che desideri utilizzare, devi configurarne uno.
Assicurati che siano disponibili un gateway Internet e un gateway NAT nel VPC che ospita il cluster Neptune. Le sottoreti private utilizzate dalla funzione Lambda del connettore Neptune devono avere un instradamento verso Internet tramite questo gateway NAT. La funzione Lambda del connettore Neptune utilizza il gateway NAT per comunicare. AWS Glue
Per istruzioni su come configurare un nuovo cluster Neptune e caricarlo con un set di dati di esempio, consulta Sample Neptune
Configurazione di un AWS Glue Data Catalog
A differenza dei tradizionali archivi di dati relazionali, gli edge e i nodi DB dei grafici di Neptune non utilizzano uno schema prestabilito. Ogni voce può avere campi e tipi di dati diversi. Tuttavia, poiché il connettore Neptune recupera i metadati da AWS Glue Data Catalog, è necessario creare AWS Glue un database con tabelle con lo schema richiesto. Dopo aver creato il database e le tabelle AWS Glue , il connettore può compilare l'elenco delle tabelle disponibili per le query da Athena.
Come abilitare la corrispondenza delle colonne senza distinzione tra maiuscole
Per risolvere i nomi delle colonne della tabella Neptune con l'uso corretto delle maiuscole e delle minuscole anche quando i nomi delle colonne sono tutti AWS Glue in minuscolo, puoi configurare il connettore Neptune per la corrispondenza senza distinzione tra maiuscole e minuscole.
Per abilitare questa funzionalità, imposta la variabile di ambiente enable_caseinsensitivematch
su true
nella funzione Lambda del connettore Neptune.
Specificazione del parametro glabel per i nomi delle tabelle con maiuscole e minuscole AWS Glue
Poiché AWS Glue supporta solo nomi di tabella minuscoli, è importante specificare il parametro glabel
AWS Glue table quando si crea una tabella per Neptune e il nome della AWS Glue tabella Neptune include il maiuscolo.
Nella definizione della AWS Glue tabella, includete il glabel
parametro e impostate il suo valore sul nome della tabella con l'involucro originale. Ciò garantisce che l'involucro corretto venga preservato quando AWS Glue interagisce con il tavolo Neptune. Nell'esempio seguente il valore di glabel
è impostato sul nome della tabella Airport
.
glabel = Airport
![Impostazione della proprietà glabel AWS Glue table per preservare l'indicizzazione del nome della tabella per una tabella di Neptune](images/connectors-neptune-1.png)
Per ulteriori informazioni sulla configurazione di un dispositivo AWS Glue Data Catalog per l'utilizzo con Neptune, consulta AWS Glue Configurare
Prestazioni
Il connettore Athena Neptune esegue il pushdown del predicato per ridurre la quantità di dati scansionati dalla query. Tuttavia, i predicati che utilizzano la chiave primaria comportano un errore di query. Le clausole LIMIT
riducono la quantità di dati scansionati, ma se non viene fornito un predicato, le query SELECT
con una clausola LIMIT
eseguiranno la scansione di almeno 16 MB di dati. Il connettore Neptune è resiliente alla limitazione della larghezza di banda della rete dovuta alla simultaneità.
Interrogazioni pass-through
Il connettore Neptune supporta le query passthrough. È possibile utilizzare questa funzionalità per eseguire query Gremlin sui grafici delle proprietà e per eseguire query SPARQL sui dati RDF.
Per creare query passthrough con Neptune, utilizzate la seguente sintassi:
SELECT * FROM TABLE( system.query( DATABASE => '
database_name
', COLLECTION => 'collection_name
', QUERY => 'query_string
' ))
L'esempio seguente: filtri di interrogazione passthrough di Neptune per gli aeroporti con il codice. ATL
Le virgolette singole raddoppiate servono per scappare.
SELECT * FROM TABLE( system.query( DATABASE => 'graph-database', COLLECTION => 'airport', QUERY => 'g.V().has(''airport'', ''code'', ''ATL'').valueMap()' ))
Risorse aggiuntive
Per ulteriori informazioni su questo connettore, visitate il sito corrispondente su GitHub .com