Utilizando SPARQL y almacenes de tripletas RDF

From semantic-mediawiki.org
< Using SPARQL and RDF stores
Administrator manualConfigurationUtilizando SPARQL y almacenes de tripletas RDF
N/A
Proporciona información sobre el uso de SPARQL y los conectores a depósitos relacionados.
Table of Contents

En principio, SMW almacena todos los datos en la misma base de datos relacional (generalmente, una base de datos MySQL) que usa MediaWiki. Esto garantiza una configuración simple, pero una base de datos relacional no es el modelo ideal de almacenamiento para datos semánticos. RDF es un modelo de datos más natural para los datos de SMW, ya que este formato de datos organiza la información en grafos en lugar de en tablas de bases de datos fijas. Afortunadamente, es posible utilizar sistemas basados en RDF, junto con la base de datos SQL estándar, para administrar y consultar los datos de SMW. Esta página explica los detalles.

Pros y contras de usar una base de datos RDF[edit]

Utilizar o no de un almacen de datos RDF en una wiki específica depende de una serie de factores, incluida la base de datos RDF específica que se utiliza. No obstante, podemos esperar razonablemente las siguientes ventajas:

  • Mejor rendimiento de la consulta
    Los almacenes RDF están diseñados para responder consultas en el lenguaje de consulta SPARQL. Las consultas SMW pueden expresarse en este lenguaje de forma mucho más natural que en el lenguaje de consulta SQL de las bases de datos relacionales. En este sentido, las consultas SMW son un ejemplo de uso típico para los sistemas de bases de datos RDF, mientras que son un ejemplo de uso bastante exótico para los sistemas de bases de datos relacionales. Además, muchos métodos de optimización importantes en las consultas de bases de datos relacionales son inútiles o engañosas en las consultas SMW. Por lo tanto, se puede esperar que los almacenes de datos RDF proporcionen un rendimiento de consulta superior.
  • Interfaces adicionales
    Los almacenes de datos RDF que soportan el estándar SPARQL también permiten que otras aplicaciones hagan consultas SPARQL contra sus datos sin pasar por la interfaz web SMW. Esto permite el uso eficiente de datos wiki en otras aplicaciones. Algunas bases de datos compatibles con SPARQL admiten (partes de) el lenguaje para ontologías OWL y proporcionan los interfaces correspondientes para consultar los datos almacenados (por ejemplo, a través del Link protocol). Las aplicaciones web semánticas también utilizan varias librerías de programación comunes (como librdf o la OWL API) que pueden ser útiles para integrarlas con otras herramientas en un nivel inferior.
  • Funciones de razonamiento y acceso a datos basado en ontologías
    Los lenguajes de la Web Semántica como el Esquema RDF y OWL proporcionan funciones expresivas adicionales para el modelado, por ejemplo al permitir la declaración de clases derivadas o la declaración de características adicionales de una propiedad (por ejemplo, transitividad de las propiedades). Algunas bases de datos compatibles con SPARQL pueden evaluar estas características para responder consultas, por ejemplo, para el acceso a datos basado en ontologías (OBDA), el método de creación de "vistas virtuales" en datos mediante construcciones de modelado semántico.
  • Integración de datos y reutilización de ontologías
    Es posible almacenar datos adicionales en la base de datos RDF que SMW actualiza. De esta forma, el almacen RDF puede actuar como una plataforma para la integración de datos y la reutilización de ontologías.
  • Separación física de los recursos informáticos
    El uso de un servidor de base de datos que no es el mismo que en MediaWiki proporciona una forma fácil de distribuir tareas entre varios servidores. En particular, se puede evitar que las consultas complejas afecten la operación básica de la wiki, incluso si consumen de manera inesperada una cantidad prohibitiva de potencia informática, es decir, si paran el servidor que aloja la base de datos RDF.

Sin embargo, también hay una serie de posibles inconvenientes:

  • Mayores necesidades de almacenamiento
    Los datos solo se duplican en las bases de datos RDF, no se eliminan de SQL. Por lo tanto, se requiere espacio de almacenamiento adicional.
  • Trabajo de mantenimiento adicional
    La configuración de backends RDF en SMW es fácil, pero todavía requiere un cierto trabajo ejecutar un sistema adicional de administración de base de datos.
  • Dudas sobre el rendimiento y la estabilidad
    Actualmente, existen varias bases de datos RDF de gran calidad en la industria, algunas de ellas libres / de código abierto. Sin embargo, la experiencia de uso de estos sistemas con SMW es aún limitada, por lo que algunas pruebas son útiles antes de decidir sobre un backend particular para una aplicación SMW a gran escala.

Afortunadamente, es posible cambiar entre backends de almacenamiento basados en SQL y basados en RDF sin gran esfuerzo, de modo que la decisión pueda ser revisada después de probarla durante un tiempo.

Decidir sobre qué base de datos RDF[edit]

En principio, SMW admite cualquier base de datos que admita el lenguaje de consulta SPARQL y SPARUL (SPARQL / Update) tal como se introdujo en SPARQL 1.1. En Semantic MediaWiki 1.7.0, se requiere que los almacenes acepten actualizaciones y consultas que no especifiquen un gráfo, pero se planea eliminar esta limitación en el futuro. Dos lugares donde se mantienen listas de almacenes RDF son:

NoteNote:  Los almacenes RDF a veces se denominan " almacenes triples", aunque muchos almacenes modernos son en realidad "almacenes cuádruples" que también asignan un grafo con nombre a cada tripleta RDF.

Conectores de repositorio disponibles[edit]

Help pageConnectorDescriptionVersion
Help:SPARQLStore (custom)CustomCustom access point to the SPARQLStore2.0.0
Help:SPARQLStore (default)DefaultDefault access point to the SPARQLStore1.6.0
Help:SPARQLStore and VirtuosoVirtuosoVirtuoso access point to the SPARQLStore1.7.1
Help:SPARQLStore and 4store4store4store access point to the SPARQLStore2.0.0
Help:SPARQLStore and BlazegraphBlazegraphBlazegraph access point to the SPARQLStore2.3.0
Help:SPARQLStore and FusekiFusekiJena Fuseki access point to the SPARQLStore2.0.0
Help:SPARQLStore and SesameSesameSesame (RDF4J) access point to the SPARQLStore2.1.0

Parámetros de configuración disponibles[edit]

Parameter Description Default Version
$smwgSparqlRepositoryConnectorForcedHttpVersion Sets whether CURLOPT_HTTP_VERSION should explicitly be forced for the endpoint communication
false
2.3.1+
$smwgDefaultStore Sets the storage backend to be used for the semantic data
SMW\SQLStore\SQLStore
0.7+
$smwgExportResourcesAsIri Sets whether resources should be exported as IRIs (Internationalized Resource Identifiers)
true
2.5.0+
$smwgSparqlCustomConnector Defines the SPARQL custom database connectors
custom
1.6.0+
$smwgSparqlDataEndpoint Sets the endpoint for data on the SPARQL database
http://localhost:8080/data/
1.6.0+
$smwgSparqlDefaultGraph Sets the identifier (graph) of the SPARQL database
''
1.7.0+
$smwgSparqlQFeatures Sets the SPARQL query features that are expected to be supported by the repository of the identifier (graph) of the SPARQL database see doc­u­men­ta­tion 2.3.0+
$smwgSparqlQueryEndpoint Sets the endpoint for querying the SPARQL database
http://localhost:8080/sparql/
1.6.0+
$smwgSparqlReplicationPropertyExemptionList see doc­u­men­ta­tion +
$smwgSparqlRepositoryConnector Identifies a database connector that ought to be used together with the semantic data store.
default
2.0.0+
$smwgSparqlUpdateEndpoint Sets the endpoint for updating the SPARQL database
http://localhost:8080/update/
1.6.0+

Moviendo los datos a la nueva base de datos[edit]

Después de cambiar la configuración, todavía no hay datos en la base de datos RDF. Para llenarlo con el contenido actual de la wiki, es necesario actualizar todos los datos. Consulte la página de ayuda en reparación de datos de SMW (en inglés) para obtener más información. Cualquier método que actualice los datos funcionará. Todas las consultas SMW (búsqueda semántica o en línea) se ejecutarán en la base de datos RDF, por lo que sus resultados solo serán correctos cuando todos los datos se hayan actualizado.

Limitaciones conocidas[edit]

Todavía hay algunas funciones que no son compatibles cuando se utiliza la consulta respondiendo a través de una base de datos RDF:

  • Consultas de conceptos: Todavía no hay soporte para conceptos en los almacenes RDF.

Véase también[edit]