Redland Python привязки очень медленные вставки

Я проверяю привязки Редленда к Python. Из некоторых простых тестов вставка данных кажется во много-много раз медленнее, чем RDFLib. Простой скрипт, такой как:

import RDF

h1=RDF.HashStorage(
        "/var/tmp/redland.bdb", options="hash-type='bdb', contexts='yes'")
g = RDF.Model(h1)

for i in range(10000):
   if i % 100 == 0:
       print('Inserting {} triples.'.format(i))
   g.append(RDF.Statement(
           RDF.Uri('urn:s:{}'.format(i % 1000)), 
           RDF.Uri('urn:p:{}'.format(i %100)),
           RDF.Uri('urn:o:{}'.format(i))))

Я использую Python 3.5, Redland 1.0.17 с поддержкой BDB (скомпилировано вручную).

запуск занимает несколько минут, по сравнению с несколькими секундами RDFLib. В настоящее время 10 000 троек - это небольшое количество, настолько большое, что такая производительность сделает библиотеку практически непригодной для большинства производственных сценариев; так что мне интересно, если я делаю что-то действительно неправильно здесь.

Спасибо за помощь,

Стефано

0 ответов

Другие вопросы по тегам