6

マシンに 2 つ以上のデータセットをダウンロードし、それぞれに対して SPARQL エンドポイントを開始できるようにしたいと考えています。Jena プロジェクトの一部である Fuseki を試してみました。ただし、データセット全体をメモリにロードします。これは、DBpedia のような大規模なデータセットをクエリするつもりである場合、他のこと (複数の SPARQL エンドポイントを開始し、それらに対してフェデレーテッド クエリ システムを使用すること) を行うつもりである場合、あまり望ましくありません。

注意点として、 SILKを使用して複数のデータセットをリンクし、FEDXフェデレーテッド クエリ システムを使用してクエリを実行するつもりです。私が使用しているシステムの変更をお勧めしたり、ヒントを教えていただければ幸いです。また、このプロジェクトに適合するデータセットを提案していただけると大変助かります。

4

2 に答える 2

2

Joshua が言ったように、Jena の Fuseki は TDB を使用しているため、多くのリソースを使用せずに非常に大きなオントロジーを格納できます。たとえば、Yago2 タクソノミーをロードして、約 600MB の RAM のみを使用できます。Fuseki を Java プロジェクトにロードする必要はありません。コマンド ラインから実行し、プロジェクト内でクエリを実行するだけです。

次のようにして、Windows コマンド ラインでロードします。

java -jar c:\your_ontology_directory\fuseki-server.jar \
  --file=your_ontology.rdf /your_namespace

次に、任意の GET/POST アプリケーション (ブラウザーでも) を使用して、それに対して SPARQL クエリを実行できます。

http://localhost:3030/your_namespace/sparql?query=SELECT * { ?s ?p ?o }

デフォルトでは、結果は XML 形式で返されます。

<?xml version="1.0"?>
<sparql xmlns="http://www.w3.org/2005/sparql-results#">
  <head>
    <variable name="s"/>
    <variable name="p"/>
    <variable name="o"/>
  </head>
  <results>
    <result>
      <binding name="s">
        <uri>http://yago-knowledge/resource/wordnet_gulag_103467887</uri>
      </binding>
      <binding name="p">
        <uri>http://www.w3.org/2000/01/rdf-schema#subClassOf</uri>
      </binding>
      <binding name="o">
        <uri>http://yago-knowledge/resource/wordnet_prison_camp_104005912</uri>
      </binding>
    </result>
    …
于 2013-06-10T07:51:26.780 に答える