Hi Mikael, Regarding this issue, Is it possible that the 20 sec query is returning a lot more data than the < 1 sec query?
I usually find that the underlying jena query time is easily dominated by data transfer costs to a browser. Chris > On May 2, 2019, at 9:29 AM, Mikael Pesonen <[email protected]> wrote: > > > Another issue in same setup. Following query is fast (lest than second) as > expected: > > select ?s where > { > graph <https://resource.lingsoft.fi/416c3258-4974-4ab1-ae3d-115961923010/> > { > (?s ?score ?content) text:query (lsrm:content "some search" ) . > ?s ?p ?o > } > } > > But this takes about 20 seconds > > select ?s ?p ?o where > { > graph <https://resource.lingsoft.fi/416c3258-4974-4ab1-ae3d-115961923010/> > { > (?s ?score ?content) text:query (lsrm:content "some search" ) . > ?s ?p ?o > } > } > > Is first query optimized so that ?p and ?o aren't actually collected at all? > What would be the correctway to make this query? > > Number of documents is about 3000, and number or triplets per document is 10. > > > > > On 02/05/2019 13:56, Mikael Pesonen wrote: >> >> I'm using Jena 3.11, full server as jar, and have following text index >> config: >> >> <#indexLucene> a text:TextIndexLucene ; >> text:directory <jena_text_index> ; >> text:entityMap <#entMap> ; >> text:storeValues true ; >> text:analyzer [ a text:StandardAnalyzer ] ; >> text:queryAnalyzer [ a text:KeywordAnalyzer ] ; >> text:queryParser text:AnalyzingQueryParser ; >> text:multilingualSupport true ; >> . >> >> <#entMap> a text:EntityMap ; >> text:defaultField "prefLabel" ; >> text:entityField "uri" ; >> text:uidField "uid" ; >> text:langField "lang" ; >> text:graphField "graph" ; >> text:map ( >> [ text:field "prefLabel" ; text:predicate skos:prefLabel ] >> [ text:field "altLabel" ; text:predicate skos:altLabel ] >> [ text:field "content" ; text:predicate lsrm:content ] >> ) . >> >> >> When inserting long text into lsrm:content, search usually works only >> without language. So, inserted >> >> <https://example.com/someid> lsrm:content "long ... text ... here"@en >> >> and querying like this works >> >> (?s ?score ?content) text:query (lsrm:content "text" ) . >> >> but this returns empty result >> >> (?s ?score ?content) text:query (lsrm:content "text" "lang:en") . >> >> But in some occasions language search does work in lsrm:content, can't see >> what is the cause here. >> >> Any ideas? >> > > -- > Lingsoft - 30 years of Leading Language Management > > www.lingsoft.fi > > Speech Applications - Language Management - Translation - Reader's and > Writer's Tools - Text Tools - E-books and M-books > > Mikael Pesonen > System Engineer > > e-mail: [email protected] > Tel. +358 2 279 3300 > > Time zone: GMT+2 > > Helsinki Office > Eteläranta 10 > FI-00130 Helsinki > FINLAND > > Turku Office > Kauppiaskatu 5 A > FI-20100 Turku > FINLAND >
