Bases de Données / Databases

Site Web de l'équipe BD du LIP6 / LIP6 DB Web Site

User Tools

Site Tools


en:site:recherche:logiciels:sparqlwithspark:watdivf5

This is an old revision of the document!


Query F5

SPARQL Hybrid DF plan

val s1 = List(
  ("gr","validThrough"),
  ("gr", "includes"),
  ("gr", "price"))
val s2 = List(
  ("og", "title"), 
  ("rdf", "type"))

// First triple pattern
val retailer = getIdSO("wsdbm", "Retailer3")
val tp1 = VP2EXP(getIdP("gr", "offers")).where(s"s=$retailer").select("o").withColumnRenamed("o","s")
val e1 = sc.parallelize(1 to NB_FRAGMENTS, NB_FRAGMENTS).map(x => -1).toDF("s")
val tp1a = tp1.unionAll(e1)

val l1 = s1.map{case(ns, p) => {
  val idP = getIdP(ns, p)
  VP2EXP(idP).withColumnRenamed("o", s"o$idP")}}

val v1 = getIdP("gr", "includes")
val snf1 = tp1a.join(l1(0),"s").join(l1(1),"s").join(l1(2),"s").withColumnRenamed("s", "v0").withColumnRenamed(s"o$v1","s")

val l2 = s2.map{case(ns, p) => {
  val idP = getIdP(ns, p)
  VP2EXP(idP).withColumnRenamed("o", s"o$idP")}}

val query = snf1.join(l2(0),"s").join(l2(1),"s")
en/site/recherche/logiciels/sparqlwithspark/watdivf5.1473857797.txt.gz · Last modified: by hubert