I want to see as many plans of a SPARQL query as possible. That is, I don't want the optimized plan only, but all the possible plans, or at least some plans, like p1,p2,p3,p4 of a query q1. Using Apache Jena or any other such tool, is it possible? I want to try all the query plans of a query and want to see the execution time.
Where can I find different plans of a SPARQL query?
45 Views Asked by Khan At
1
There are 1 best solutions below
Related Questions in SPARQL
- How to combine ontotext GraphDB autocomplete and SPARQL to refine searching?
- How to only pass specific solution bindings from the default graph to the VALUES clause of the federated query?
- Expansive path expressions in quoted triples?
- Fuzzy String Match in SPARQL
- Blazegraph: How to LOAD gzip files?
- SPARQL query response to objects
- SPARQL Query - WHERE ignoing clause? (dbpedia)
- How to find all titles including a certain word in SPARQL
- How apply an order to CONSTRUCT in SPARQL
- Get Wikipedia page ID from WikiData ID
- how to query local fuseki server using python
- How to extract the language tags from Turtle RDF data?
- ontology versioning: Link both versionIRI#MyClassIRI and ontologyIRI#MyClass123 to same resource in rdf / owl
- Is it possible to directly run SPARQL query against webpages with JSON-LD data?
- Weird behavior on LIMIT and OFFSET when querying DBPedia
Related Questions in RDF
- How to structure json-ld for export/import
- RDF: when a property is used the thing in the object position is a literal of datatype X
- In the UML diagram, in the Class diagram, what does stereotype mean <<compound>>?
- Expansive path expressions in quoted triples?
- RDFlib serlialization in json-ld without blank node ids
- How to extract the language tags from Turtle RDF data?
- ontology versioning: Link both versionIRI#MyClassIRI and ontologyIRI#MyClass123 to same resource in rdf / owl
- uniqueness of owl n-ary relationships
- How to select only direct subClassOf element in a GraphDB custom ruleset?
- Is it possible to directly run SPARQL query against webpages with JSON-LD data?
- Weird behavior on LIMIT and OFFSET when querying DBPedia
- Querying Office for National Statistics data using SPARQL
- Problem with Java when using Apache Jena Fuseki?
- Expressing in json-ld the type of a value embedded within an id
- Filter RDF file using SPARQL
Related Questions in JENA
- RDF: when a property is used the thing in the object position is a literal of datatype X
- Problem with setting up config for Fuseki server - Exception in initialization: org/apache/jena/reasoner/BaseInfGraph$InfFindSafeCapabilities
- Apache Jena cannot update RDF triple store using jsonld file
- Problem with Java when using Apache Jena Fuseki?
- "insert data" query in jena
- Generating a linked-data website with Apache jena
- Fuseki shows "No data available in table" even so there is data
- Jena 4 connection to Virtuoso
- INSERT command returning a 415 response after upgrading from Jena 3.17.0 to 4.9.0
- Cannot properly add directory to PATH with Apache Jena
- Apache-Jena Download
- Jena Riot infers invalid RDF (with literals as subjects)
- How can we import shapes (dash) for SHACL validation in Apache Jena?
- Parameterized SPARQL query that supports null parameter values
- Is there a way in Jena to see that an OntClass is coming from an imported ontology?
Related Questions in SQL-EXECUTION-PLAN
- plan_handle is always different for each query in SQL Server Cache
- Stored Procedure Taking very Long to execute
- What does Type "ref|filter" mean in mariaDB Explain Output
- Select query takes too long to execute
- PostgreSQL Hash Join vs Nested Loop and hash index
- How do I test the performance of an SQL query with parameters in SSMS?
- Performance Issues After Migrating from MariaDB 10.3.39 to 10.6.16 Due to Changes in Query Execution Plan
- Exact meaning of actual times in PostgreSQL explain analyze
- How to improve sort performance in a huge dataset of 20 million rows?
- PostgreSQL query plans when using unnest() in SELECT list vs in subquery
- Postgres nested loop not used in recursive query
- Terrible performance joining a view to a fast subquery / CTE in PostgreSQL
- SQL Server restart/large database restore impacting stored procedure unexpectedly
- Efficient many-to-many embedding comparisons
- Two identical MariaDB slaves, two different execution plans
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
@UninformedUser is quite right in their comment that Jena ONLY generates a single plan by default.
However, it is theoretically possible to find all the possible plans Jena could generate by toggling on/off all the optimiser flags that control which optimisations are used.
In
OptimizerStdeach possible optimisation is enabled/disabled by a context symbol. So you could generateContextobjects with different combinations of the configuration symbols enabled/disabled and create instances of the optimiser with differentContext's and see how the resulting algebra differs. There are a lot of possible optimisations so you may not want to consider every possible combination of flags, maybe start by experimenting with some more obvious ones likeARQ.optFilterPlacementandARQ.optIndexJoinStrategy. You may want to explore the code further to review the actualTransformimplementations to understand the potential optimisation each flag is controlling.Note that you will first need to parse your SPARQL string into a Jena
Queryobject and then compile it into algebra usingAlgebra.compile(Query). If you're interesting in the quad form of the algebra you also needAlgebra.toQuadForm(Op)