Кросс-платформенный способ загрузки больших RDF в тройные магазины
В настоящее время мы используем Virtuoso для хранения троек RDF. Нам нужен автоматизированный способ загрузки файлов RDF в базу данных. Данные могут быть очень большими, поэтому в настоящее время мы полагаемся на Virtuoso bulk data loader для загрузки данных; однако возможно, что в будущем мы переключимся на какое-то другое тройное хранилище, поэтому я не хочу зависеть от такого решения для конкретной платформы. Существует ли более общий, кросс-платформенный способ загрузки больших файлов RDF в triple магазины?
Большая часть нашего программирования выполняется на Python, поэтому решение с привязками Python было бы предпочтительнее.
Я довольно новичок в семантических веб-технологиях, поэтому, пожалуйста, дайте мне знать, если мой вопрос недостаточно детализирован, и я постараюсь предоставить дополнительную информацию. Спасибо!
1 ответ:
Существует любое количество виртуозных методов вставки RDF, подробно описанных в http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtRDFInsert , большинство из которых специфичны для Virtuoso отчасти из-за особенностей, уникальных для Virtuoso, таких как WebDAV & ODS, или особенностей, реализованных по-разному в других магазинах или не реализованных вообще.
Вероятно, наиболее универсальным методом в вашем случае будет чтение наборов данных в Python и использование SPARQL 1.1 update (http://www.w3.org/TR/sparql11-update/) команды для вставки / загрузки данных в Virtuoso или любые другие тройные хранилища, поддерживающие SPARQL 1.1 update, что, как я полагаю, большинство сделало бы сейчас. Основным недостатком этого подхода является то, что процесс вставки должен управляться в Python, чтобы гарантировать, что данные загружаются последовательно, обрабатывая тупики, откаты и т. д. что сделало бы этот метод намного медленнее и, вероятно, невыносимо для очень больших наборов данных. Именно поэтому большинство поставщиков предоставляют свои собственные методы "массового загрузчика", где согласованность данных и тупики и т. д. обрабатываются внутренне гораздо быстрее.