Skip to content

Commit

Permalink
Deploying to master from @ JanusGraph/janusgraph@0cb87d3 🚀
Browse files Browse the repository at this point in the history
  • Loading branch information
porunov committed Oct 30, 2024
1 parent fb57727 commit 8866556
Show file tree
Hide file tree
Showing 13 changed files with 63 additions and 3 deletions.
45 changes: 45 additions & 0 deletions master/changelog/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -2049,6 +2049,20 @@
JSON schema initializer
</a>

</li>

<li class="md-nav__item">
<a href="#batched-queries-enhancement-introduction-of-janusgraphnoopbarriervertexonlystep" class="md-nav__link">
Batched Queries Enhancement: Introduction of JanusGraphNoOpBarrierVertexOnlyStep
</a>

</li>

<li class="md-nav__item">
<a href="#batch-query-optimizations-now-support-traversals-containing-the-drop-step" class="md-nav__link">
Batch Query Optimizations Now Support Traversals Containing the drop() Step
</a>

</li>

</ul>
Expand Down Expand Up @@ -3176,6 +3190,20 @@
JSON schema initializer
</a>

</li>

<li class="md-nav__item">
<a href="#batched-queries-enhancement-introduction-of-janusgraphnoopbarriervertexonlystep" class="md-nav__link">
Batched Queries Enhancement: Introduction of JanusGraphNoOpBarrierVertexOnlyStep
</a>

</li>

<li class="md-nav__item">
<a href="#batch-query-optimizations-now-support-traversals-containing-the-drop-step" class="md-nav__link">
Batch Query Optimizations Now Support Traversals Containing the drop() Step
</a>

</li>

</ul>
Expand Down Expand Up @@ -4432,6 +4460,23 @@ <h5 id="berkeleyje-ability-to-overwrite-arbitrary-settings-applied-at-environmen
<h5 id="json-schema-initializer">JSON schema initializer</h5>
<p>For simplicity JSON schema initialization options has been added into JanusGraph.
See <a href="../schema/schema-init-strategies/">documentation</a> to learn more about JSON schema initialization process.</p>
<h5 id="batched-queries-enhancement-introduction-of-janusgraphnoopbarriervertexonlystep">Batched Queries Enhancement: Introduction of <code>JanusGraphNoOpBarrierVertexOnlyStep</code></h5>
<p>In previous versions, when a query that could benefit from batch-query optimization (multi-query) was executed without
a user-defined barrier step, JanusGraph would inject a <code>NoOpBarrierStep</code> by default. This approach allowed batching
for edges and properties, which do not gain advantages from multi-query optimization.</p>
<p>Starting with JanusGraph 1.1.0, this behavior has been improved. The system now injects a
<code>JanusGraphNoOpBarrierVertexOnlyStep</code> instead of the standard <code>NoOpBarrierStep</code> when no barrier steps are detected.
This change ensures that batching is applied exclusively to vertices, which do benefit from batch queries,
while excluding edges and properties from the batching process.</p>
<p>If a user explicitly defines a <code>.barrier()</code> step in the query, the system will continue to use the <code>NoOpBarrierStep</code> as expected.</p>
<h5 id="batch-query-optimizations-now-support-traversals-containing-the-drop-step">Batch Query Optimizations Now Support Traversals Containing the <code>drop()</code> Step</h5>
<p>Starting with JanusGraph 1.1.0, batch optimizations for vertex removal have been introduced in the <code>drop()</code> step and
are enabled by default. Previously, any batch optimization would be skipped for queries containing at least one
<code>drop()</code> step. However, with this update, such queries are now eligible for batch query optimization (multi-query).</p>
<p>Please note that the <code>LazyBarrierStrategy</code> (a TinkerPop strategy) is disabled for any query that includes at least one <code>drop()</code> step.</p>
<p>To disable the <code>drop()</code> step optimization and maintain the previous behavior, users can set the following configuration:
<div class="highlight"><pre><span></span><code>query.batch.drop-step-mode=none
</code></pre></div></p>
<h3 id="version-101-release-date">Version 1.0.1 (Release Date: ???)</h3>
<div class="tabbed-set tabbed-alternate" data-tabs="2:2"><input checked="checked" id="__tabbed_2_1" name="__tabbed_2" type="radio" /><input id="__tabbed_2_2" name="__tabbed_2" type="radio" /><div class="tabbed-labels"><label for="__tabbed_2_1">Maven</label><label for="__tabbed_2_2">Gradle</label></div>
<div class="tabbed-content">
Expand Down
7 changes: 7 additions & 0 deletions master/configs/configuration-reference/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -4331,6 +4331,13 @@ <h3 id="querybatch">query.batch</h3>
</thead>
<tbody>
<tr>
<td>query.batch.drop-step-mode</td>
<td>Batching mode for <code>drop()</code> step. Used only when <code>query.batch.enabled</code> is <code>true</code>.<br>Supported modes:<br>- <code>all</code> - Drops all vertices in a batch.<br>- <code>none</code> - Skips drop batching optimization.<br></td>
<td>String</td>
<td>all</td>
<td>MASKABLE</td>
</tr>
<tr>
<td>query.batch.enabled</td>
<td>Whether traversal queries should be batched when executed against the storage backend. This can lead to significant performance improvement if there is a non-trivial latency to the backend. If <code>false</code> then all other configuration options under <code>query.batch</code> namespace are ignored.</td>
<td>Boolean</td>
Expand Down
7 changes: 7 additions & 0 deletions master/configs/janusgraph-cfg/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -3798,6 +3798,13 @@ <h3 id="querybatch">query.batch</h3>
</thead>
<tbody>
<tr>
<td>query.batch.drop-step-mode</td>
<td>Batching mode for <code>drop()</code> step. Used only when <code>query.batch.enabled</code> is <code>true</code>.<br>Supported modes:<br>- <code>all</code> - Drops all vertices in a batch.<br>- <code>none</code> - Skips drop batching optimization.<br></td>
<td>String</td>
<td>all</td>
<td>MASKABLE</td>
</tr>
<tr>
<td>query.batch.enabled</td>
<td>Whether traversal queries should be batched when executed against the storage backend. This can lead to significant performance improvement if there is a non-trivial latency to the backend. If <code>false</code> then all other configuration options under <code>query.batch</code> namespace are ignored.</td>
<td>Boolean</td>
Expand Down
5 changes: 3 additions & 2 deletions master/operations/batch-processing/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -2503,7 +2503,7 @@ <h2 id="batched-query-processing-flow">Batched Query Processing Flow</h2>
<ol>
<li>Batch compatible step. This is the step which will execute batch requests. Currently, the list of such steps
is the next: <code>out()</code>, <code>in()</code>, <code>both()</code>, <code>inE()</code>, <code>outE()</code>, <code>bothE()</code>, <code>has()</code>, <code>values()</code>, <code>properties()</code>, <code>valueMap()</code>,
<code>propertyMap()</code>, <code>elementMap()</code>, <code>label()</code>.</li>
<code>propertyMap()</code>, <code>elementMap()</code>, <code>label()</code>, <code>drop()</code>.</li>
<li>Parent step. This is a parent step which has local traversals with the same start. Such parent steps also implement the
interface <code>TraversalParent</code>. There are many such steps, but as for an example those could be: <code>and(...)</code>, <code>or(...)</code>,
<code>not(...)</code>, <code>order().by(...)</code>, <code>project("valueA", "valueB", "valueC").by(...).by(...).by(...)</code>, <code>union(..., ..., ...)</code>,
Expand Down Expand Up @@ -2653,7 +2653,8 @@ <h4 id="batch-processing-for-properties">Batch processing for properties</h4>
See configuration option <code>query.batch.has-step-mode</code> to control properties pre-fetching behaviour for <code>has</code> step.<br />
See configuration option <code>query.batch.properties-mode</code> to control properties pre-fetching behaviour for <code>values</code>,
<code>properties</code>, <code>valueMap</code>, <code>propertyMap</code>, and <code>elementMap</code> steps.<br />
See configuration option <code>query.batch.label-step-mode</code> to control labels pre-fetching behaviour for <code>label</code> step. </p>
See configuration option <code>query.batch.label-step-mode</code> to control labels pre-fetching behaviour for <code>label</code> step.<br />
See configuration option <code>query.batch.drop-step-mode</code> to control drop batching behaviour for <code>drop</code> step. </p>



Expand Down
2 changes: 1 addition & 1 deletion master/search/search_index.json

Large diffs are not rendered by default.

Binary file modified master/sitemap.xml.gz
Binary file not shown.
Binary file modified sitemap.xml.gz
Binary file not shown.
Binary file modified v0.2/sitemap.xml.gz
Binary file not shown.
Binary file modified v0.3/sitemap.xml.gz
Binary file not shown.
Binary file modified v0.4/sitemap.xml.gz
Binary file not shown.
Binary file modified v0.5/sitemap.xml.gz
Binary file not shown.
Binary file modified v0.6/sitemap.xml.gz
Binary file not shown.
Binary file modified v1.0/sitemap.xml.gz
Binary file not shown.

0 comments on commit 8866556

Please sign in to comment.