rdflib_sqlalchemy.SQLAlchemy
을 사용하여 PostgreSQL 테이블에 큰 RDF 데이터 세트 (Geonames 데이터 세트 : 18GB)를로드했습니다.Python RDFLib에서 SPARQL 쿼리의 속도를 높이려면 어떻게해야합니까?
다음은 RDFLib 지원이 포함 된 Python 스크립트에서 간단한 쿼리를 실행 한 것입니다. 나에게 결과를주기 위해 2 시간 이상 걸렸다. RDF 데이터를 triplestore (예 : Virtuoso)에 삽입하지 않고도 더 빠르게 만들 수있는 방법이 있습니까?
mystore = store.SQLAlchemy(configuration="postgresql://localhost:5873/postgres")
g = Graph(mystore, identifier="test")
results = g.query("""SELECT ?s ?p ?o WHERE {?s ?p ?o .} LIMIT 1""")
for row in results:
print row
내가 클러스터의 컴퓨팅 노드에서 일하고 있습니다. 다음과 같은 메모리 내 데이터로 내 쿼리를 실행하려고했습니다. 그러나 여전히 느립니다.
g = Graph()
g.parse('geonames.nt', format='nt')
results = g.query("""SELECT ?s ?p ?o WHERE {?s ?p ?o .} LIMIT 1""")
for row in results:
print row
귀하의 의견을 알려주십시오. 도와 줘서 고마워.
이 크기의 데이터는 RDF 저장소에로드하는 것이 좋습니다. –
rdflib 버전은 무엇입니까? 또한 https://github.com/RDFLib/rdflib-sqlalchemy/issues에서 버그 보고서를 열어보십시오. –