【发布时间】:2019-09-27 10:08:50
【问题描述】:
我刚刚成功创建了一个本地独立的 Blazegraph 实例并按照此处的说明上传了 Wikidata 数据库https://github.com/wikimedia/wikidata-query-rdf/blob/master/docs/getting-started.md。
这是我使用的“超级”命令:
git clone --recurse-submodules https://gerrit.wikimedia.org/r/wikidata/query/rdf wikidata-query-rdf && cd wikidata-query-rdf && mvn package && cd dist/target && unzip service-*-dist.zip && cd service-*/
nohup ./runBlazegraph.sh &
mkdir data && wget https://dumps.wikimedia.org/wikidatawiki/entities/latest-lexemes.ttl.gz && mkdir data/split && ./munge.sh -f latest-lexemes.ttl.gz -d data/split -l en,es -s && ./loadRestAPI.sh -n wdq -d `pwd`/data/split && ./runUpdate.sh -n wdq -l en,es -s
./runUpdate.sh 仍在运行,但已将更新拉到 2019-09-23T13:31:56Z
测试它,我将我本地的 Wikidata 结果与Wikidata Query Service 结果进行了比较,并且存在差异。
例如,如果我从示例中运行“Cats”查询:
#Cats
SELECT ?item ?itemLabel
WHERE
{
?item wdt:P31 wd:Q146.
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
维基数据查询服务有 142 个结果。我没有。
如果我从示例中运行“最近事件”查询:
#Recent Events
SELECT ?event ?eventLabel ?date
WHERE
{
# find events
?event wdt:P31/wdt:P279* wd:Q1190554.
# with a point in time or start date
OPTIONAL { ?event wdt:P585 ?date. }
OPTIONAL { ?event wdt:P580 ?date. }
# but at least one of those
FILTER(BOUND(?date) && DATATYPE(?date) = xsd:dateTime).
# not in the future, and not more than 31 days ago
BIND(NOW() - ?date AS ?distance).
FILTER(0 <= ?distance && ?distance < 31).
# and get a label as well
OPTIONAL {
?event rdfs:label ?eventLabel.
FILTER(LANG(?eventLabel) = "en").
}
}
# limit to 10 results so we don't timeout
LIMIT 10
Wikidata 查询服务显然返回 10 个结果。我有一个。
为什么结果会出现这种差异?是不是我做错了什么?
提前谢谢你。
关于我正在运行 Wikidata 的机器的其他信息,以防万一它很重要。
- 工作站 Dell Precision 7510
- Ubuntu 18.04.3 LTS 64 位
- 内存 32G RAM
- 处理器 Intel® Core™ i7-6820HQ CPU @ 2.70GHz × 8
- 显卡 Quadro M2000M/PCIe/SSE2
- 磁盘 250Gb SSD
【问题讨论】:
-
你刚刚加载了
latest-lexemes.ttl.gz?剩下的数据呢?我的意思是,Wikidata 很大,你为什么不至少加载 Truthy 数据集?为什么要将查询您的小数据集与公共端点中加载的完整数据集进行比较? -
我对这个@AKSW 很满意。我只是按照说明进行操作。拥有完整的数据集就足以仅加载 latest-all.ttl.gz 还是我必须分别加载 latest-all.ttl.gz、latest-lexemes.ttl.gz 和 latest-truthy.ttl.gz?谢谢。
-
根据文档:wikidata.org/wiki/Wikidata:Database_download#RDF_dumps - "完整的转储一起包含 Wikidata 中的所有实体信息,但顺序(别名、语句等)除外,这不是自然地以 RDF 表示。简化的转储将没有限定符的语句编码为单个 RDF 三元组(省略引用)。” - 您可以从加载真实数据集开始 - 这已经非常大并且需要一些时间......
标签: sparql blazegraph wikidata-query-service