default LookupService<K, V> partition(int k) { return LookupServicePartition.create(this, k); }
public static LookupService<Node, Geometry> createLookupService(QueryExecutionFactory sparqlService, MappedConcept<Geometry> mc) { //LookupService<Node, Geometry> result = LookupServiceUtilsGeo.createGeoLookupService(sparqlService, mc); LookupService<Node, Geometry> result = LookupServiceUtils.createLookupService(sparqlService, mc); result = LookupServicePartition.create(result, 30, 5); result = LookupServiceCacheMem.create(result); return result; }
public static LookupService<Node, Geometry> createLookupService(QueryExecutionFactory sparqlService, MappedConcept<Geometry> mc) { //LookupService<Node, Geometry> result = LookupServiceUtilsGeo.createGeoLookupService(sparqlService, mc); LookupService<Node, Geometry> result = LookupServiceUtils.createLookupService(sparqlService, mc); result = LookupServicePartition.create(result, 30, 5); result = LookupServiceCacheMem.create(result); return result; }
public static void processHopQuery(HopQuery hopQuery, Collection<Node> sourceNodes, Map<Node, DatasetGraph> result, QueryExecutionFactory defaultQef, Multimap<Node, Node> back) { QueryExecutionFactory qef = hopQuery.getQef(); qef = (qef == null ? defaultQef : qef); MappedQuery<DatasetGraph> mappedQuery = hopQuery.getMappedQuery(); LookupService<Node, DatasetGraph> ls = LookupServiceUtils.createLookupService(qef, mappedQuery); ls = LookupServicePartition.create(ls, chunkSize); Map<Node, DatasetGraph> tmpMap = ls.fetchMap(sourceNodes); Map<Node, DatasetGraph> map; if(back != null) { map = new HashMap<Node, DatasetGraph>(); for(Entry<Node, DatasetGraph> entry : tmpMap.entrySet()) { Node tmpNode = entry.getKey(); DatasetGraph datasetGraph = entry.getValue(); Collection<Node> keys = back.get(tmpNode); for(Node key : keys) { map.put(key, datasetGraph); } } } else { map = tmpMap; } DatasetGraphUtils.mergeInPlace(result, map); }
ls = LookupServicePartition.create(ls, chunkSize);
public static void main(String[] args) { QueryExecutionFactory sparqlService = new QueryExecutionFactoryHttp("http://dbpedia.org/sparql", "http://dbpedia.org"); Var var = Var.alloc("s"); Query query = QueryFactory.create("Prefix geo: <http://www.w3.org/2003/01/geo/wgs84_pos#> Prefix dbpo: <http://dbpedia.org/ontology/> Select ?s ?w { ?s a dbpo:Castle ; geo:geometry ?w }"); LookupService<Node, Table> ls = new LookupServiceSparqlQuery(sparqlService, query, var); ls = LookupServicePartition.create(ls, 1); ls = LookupServiceCacheMem.create(ls); List<Node> keys = new ArrayList<Node>(); keys.add(NodeFactory.createURI("http://dbpedia.org/resource/Marksburg")); keys.add(NodeFactory.createURI("http://dbpedia.org/resource/Rosenburg")); Map<Node, Table> map = ls.fetchMap(keys); System.out.println(map); } }
public static void execQueriesHop(QueryExecutionFactory qef, Collection<Node> nodes, Collection<MappedQuery<DatasetGraph>> mappedQueries, Map<Node, DatasetGraph> result) { for(MappedQuery<DatasetGraph> mappedQuery : mappedQueries) { MapService<Concept, Node, DatasetGraph> listService = MapServiceUtils.createListServiceMappedQuery(qef, mappedQuery, true); LookupService<Node, DatasetGraph> lookupService = LookupServiceListService.create(listService); lookupService = LookupServicePartition.create(lookupService, chunkSize); Map<Node,DatasetGraph> nodeToGraph = lookupService.fetchMap(nodes); DatasetGraphUtils.mergeInPlace(result, nodeToGraph); } }