SPARQL

SPARQL è un linguaggio di programmazione dichiarativo e un protocollo per l'analisi di database a grafo. SPARQL ha la capacità di eseguire tutte le analisi che SQL può eseguire, inoltre può essere utilizzato per l'analisi semantica, l'esame delle relazioni. Ciò lo rende utile per eseguire analisi su set di dati che contengono dati sia strutturati che non strutturati. SPARQL consente agli utenti di eseguire analisi sulle informazioni archiviate in un database relazionale, nonché su relazioni FOAF (Friend of a Friend), PageRank e percorso più breve.

SPARQL è stato ideato e definito da un comitato per gli standard del W3C per eseguire analisi sul web semantico o su una rete semantica (grafo della conoscenza). SPARQL sfrutta le informazioni sulle relazioni (livello semantico) che sono inerenti al Resource Description Framework (RDF) per ottenere informazioni sulle correlazioni tra gli oggetti.

Oggi, SPARQL è l'unico linguaggio di query semantico che è uno standard con il W3C. Pertanto, organizzazioni commerciali e governi hanno standardizzato SPARQL come linguaggio e RDF come modello di dati per costruire modelli di settore come Financial Industry Business Ontology (FIBO) nel settore dei servizi finanziari, Clinical Data Interchange Standards Consortium (CDISC) nel settore farmaceutico e HL7 / FHIR nel settore sanitario.

SPARQL contro SQL

SPARQL condivide molti concetti con SQL. Ad esempio, in entrambe le lingue, l'analista utilizza le istruzioni SELECT e le clausole WHERE per analizzare i dati, nonché i comandi ORDER BY, LIMIT e OFFSET. Tuttavia, poiché i database a grafo memorizzano i dati in tripli utilizzando un semplice modello di dati SUBJECT-PREDICATE-OBJECT, SPARQL è stato progettato per interrogare i dati in questo modello come un modo per analizzare meglio le relazioni dei dati.

Esempi di triple includono:

  • Franco-IsA-Person
  • Mercedes-IsA-Automobile
  • Franco-Likes-Mercedes

Con questo semplice set di tre triple, un analista potrebbe utilizzare SPARQL per comprendere tutte le persone in un database e il contesto dietro i dati che producono. Poiché i dati in un database a grafo sono memorizzati in una singola tabella di triple anziché in più tabelle di dati, i comandi JOIN non sono necessari e quindi non fanno parte della sintassi SPARQL, né la maggior parte della sintassi è correlata alle tabelle dei fatti e delle dimensioni.

Casi d'uso di SPARQL

Le specifiche di cui sopra consentono a SPARQL e RDF di essere utilizzati da data scientist e analisti per una varietà di casi d'uso, come ad esempio:

Rilevamento delle frodi: con SPARQL, un analista può facilmente rilevare modelli di relazione come più persone che condividono lo stesso indirizzo IP ma segnalano di risiedere in indirizzi fisici diversi.

Riciclaggio di denaro: SPARQL viene utilizzato per identificare e comprendere semanticamente le intricate relazioni tra entità e transazioni, inclusi i numerosi individui e organizzazioni coinvolti in tali transazioni

Motori di raccomandazione: SPARQL consente all'analista di esplorare le relazioni grafiche tra categorie di informazioni come gli interessi dei clienti, gli amici e la cronologia degli acquisti. Quindi lei o lei può utilizzare SPARQL per consigli sui prodotti per un particolare cliente o segmento di clienti in base ai prodotti acquistati da altri che seguono una cronologia di acquisto simile.

Customer Insight - SPARQL ti aiuta a ottenere nuove informazioni sui gusti di ogni cliente in relazione ad altri clienti con parametri statistici simili come posizione o dati demografici.

Storia di SPARQL

SPARQL e RDF sono nati da un'idea pubblicizzata per la prima volta da Tim Berners-Lee, che ha sottolineato la necessità che i dati esistenti sul Web funzionino meglio insieme nel governo, nell'impresa e nella scienza. Stabilendo SPARQL e RDF come protocollo standard, linguaggio e modello di dati, è stata creata la pietra di paragone per la condivisione dei dati sul Web in tutto il mondo.