SPARQL

SPARQL é uma linguagem de programação e protocolo declarativo para análise de bases de dados gráficas. SPARQL tem a capacidade de realizar todas as análises que o SQL pode realizar, além de poder ser usado para análise semântica, o exame de relacionamentos. Isto torna-o útil para executar análises em conjuntos de dados que tenham tanto dados estruturados como não estruturados. SPARQL permite que os usuários realizem análises em informações armazenadas em um banco de dados relacional, bem como relacionamentos de amigos (FOAF), PageRank e caminho mais curto.

SPARQL foi concebido e definido por um comitê de padrões W3C para realizar análises na web semântica ou em uma rede semântica (gráfico de conhecimento). SPARQL aproveita as informações de relacionamento (camada semântica) que são inerentes ao Resource Description Framework (RDF) para obter insights sobre correlações entre objetos.

Hoje, SPARQL é a única linguagem de consulta semântica que é um padrão com o W3C. Como tal, organizações comerciais e governos têm padronizado o SPARQL como uma linguagem e o RDF como um modelo de dados para construir modelos da indústria como a Financial Industry Business Ontology (FIBO) na indústria de serviços financeiros, o Clinical Data Interchange Standards Consortium (CDISC) na indústria farmacêutica e o HL7/FHIR na saúde.

SPARQL vs. SQL

SPARQL compartilha muitos conceitos com SQL. Por exemplo, em ambas as linguagens, o analista utilizaria instruções SELECT e WHERE para analisar os dados, bem como comandos ORDER BY, LIMIT e OFFSET. No entanto, como os bancos de dados gráficos armazenam dados em triplos utilizando um modelo de dados SUBJECT-PREDICATE-OBJECT simples, o SPARQL foi projetado para consultar dados neste modelo como uma forma de melhor analisar as relações dos dados.

Exemplos de triplos incluem:

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

Com este simples conjunto de três triplos, um analista poderia usar o SPARQL para compreender todas as pessoas de um banco de dados, bem como o contexto por trás dos dados que eles produzem. Como os dados em um banco de dados gráfico são armazenados em uma única tabela de triplos ao invés de múltiplas tabelas de dados, comandos JOIN não são necessários e, portanto, não fazem parte da sintaxe do SPARQL, nem a maioria da sintaxe está relacionada a tabelas de fatos e dimensões.

casos de uso do SPARQL

As especificações acima permitem que o SPARQL e o RDF sejam usados por cientistas e analistas de dados para uma variedade de casos de uso, tais como:

Detecção de fraude - Com o SPARQL, um analista pode facilmente detectar padrões de relacionamento, tais como múltiplas pessoas compartilhando o mesmo endereço IP, mas reportando residir em endereços físicos diferentes.

Lavagem de dinheiro - O SPARQL está sendo usado para identificar e entender semanticamente as relações intrincadas entre entidades e transações, incluindo os muitos indivíduos e organizações envolvidos com essas transações

Motores de Recomendação - O SPARQL permite ao analista explorar as relações gráficas entre categorias de informação como interesses do cliente, amigos e histórico de compras. Então ela ou ela pode usar SPARQL para recomendações de produtos para um determinado cliente ou segmento de clientes com base em quais produtos são comprados por outros que seguem um histórico de compras semelhante.

Customer Insight - SPARQL ajuda a obter uma nova visão sobre os gostos e aversões de cada cliente em relação a outros clientes com parâmetros estatísticos semelhantes, tais como localização ou demografia.

História do SPARQL

SPARQL e RDF vieram de uma idéia divulgada pela primeira vez por Tim Berners-Lee, que enfatizou a necessidade dos dados que existem na Web trabalharem melhor juntos no governo, nas empresas e na ciência. Ao estabelecer o SPARQL e o RDF como protocolo padrão, linguagem e modelo de dados, foi criada a pedra de toque para o compartilhamento de dados na web mundial.