Browse Definitions :
Definition

SPARQL

Contributor(s): Steve Sarsfield

SPARQL is a declarative programming language and protocol for graph database analytics. SPARQL has the capability to perform all the analytics that SQL can perform, plus it can be used for semantic analysis, the examination of relationships. This makes it useful for performing analytics on data sets that have both structured and unstructured data.  SPARQL allows users to perform analytics on information stored in a relational database, as well as friend-of-a-friend (FOAF) relationships, PageRank and shortest path. 

SPARQL was conceived and defined by a W3C standards committee to perform analysis on the semantic web or a semantic network (knowledge graph). SPARQL takes advantage of the relationship information (semantic layer) that is inherent in the Resource Description Framework (RDF) to gain insights into correlations between objects.

Today, SPARQL is the only semantic query language that is a standard with the W3C. As such, commercial organizations and governments have standardized on SPARQL as a language and RDF as a data model to build industry models such as Financial Industry Business Ontology (FIBO) in financial services industry, Clinical Data Interchange Standards Consortium (CDISC) in pharmaceutical and HL7/FHIR in healthcare.

SPARQL vs. SQL

SPARQL shares many concepts with SQL. For example, in both languages, the analyst would use SELECT statements and WHERE clauses to analyze data, as well as ORDER BY, LIMIT and OFFSET commands. However, since graph databases store data in triples using a simple SUBJECT-PREDICATE-OBJECT data model, SPARQL was designed to query data in this model as a way to better analyze the relationships of data. 

Examples of triples include:

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

With this simple set of three triples, an analyst could use SPARQL to understand all of the people in a database as well as the context behind the data they produce.  Since data in a graph database is stored in a single table of triples rather than multiple tables of data, JOIN commands are not necessary and therefore not part of the SPARQL syntax, nor is most syntax related to fact and dimension tables.

SPARQL use cases

The above specifics allow SPARQL and RDF to be used by data scientists and analysts for a variety of use cases, such as:

Fraud Detection - With SPARQL, an analyst can easily detect relationship patterns such as multiple people sharing the same IP address but reporting to reside in different physical addresses.

Money Laundering - SPARQL is being used to semantically identify and understand the intricate relationships between entities and transactions, including the many individuals and organizations involved with those transactions

Recommendation Engines – SPARQL lets the analyst explore graph relationships between information categories such as customer interests, friends, and purchase history. Then her or she can use SPARQL for product recommendations for a particular customer or customer segment based on which products are purchased by others who follow similar purchase history.

Customer Insight – SPARQL helps you gain new insight into each customer’s likes and dislikes in relation to other customers with similar location, demographics, etc.

History of SPARQL

SPARQL and RDF came from an idea first publicized by Tim Berners-Lee, who stressed the need for data that exists on the Web to work better together in government, enterprise, and science. By establishing SPARQL and RDF as a standard protocol, language and data model, the touchstone for data sharing on the worldwide web was created.

This was last updated in May 2019

Continue Reading About SPARQL

Start the conversation

Send me notifications when other members comment.

Please create a username to comment.

-ADS BY GOOGLE

File Extensions and File Formats

SearchCompliance

  • risk management

    Risk management is the process of identifying, assessing and controlling threats to an organization's capital and earnings.

  • compliance as a service (CaaS)

    Compliance as a Service (CaaS) is a cloud service service level agreement (SLA) that specified how a managed service provider (...

  • data protection impact assessment (DPIA)

    A data protection impact assessment (DPIA) is a process designed to help organizations determine how data processing systems, ...

SearchSecurity

  • spyware

    Spyware is a type of malicious software -- or malware -- that is installed on a computing device without the end user's knowledge.

  • application whitelisting

    Application whitelisting is the practice of specifying an index of approved software applications or executable files that are ...

  • botnet

    A botnet is a collection of internet-connected devices, which may include PCs, servers, mobile devices and internet of things ...

SearchHealthIT

SearchDisasterRecovery

  • business continuity plan (BCP)

    A business continuity plan (BCP) is a document that consists of the critical information an organization needs to continue ...

  • disaster recovery team

    A disaster recovery team is a group of individuals focused on planning, implementing, maintaining, auditing and testing an ...

  • cloud insurance

    Cloud insurance is any type of financial or data protection obtained by a cloud service provider. 

SearchStorage

  • DRAM (dynamic random access memory)

    Dynamic random access memory (DRAM) is a type of semiconductor memory that is typically used for the data or program code needed ...

  • RAID 10 (RAID 1+0)

    RAID 10, also known as RAID 1+0, is a RAID configuration that combines disk mirroring and disk striping to protect data.

  • PCIe SSD (PCIe solid-state drive)

    A PCIe SSD (PCIe solid-state drive) is a high-speed expansion card that attaches a computer to its peripherals.

Close