You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kafka.apache.org by gu...@apache.org on 2018/12/05 00:22:20 UTC
[kafka] branch 2.1 updated: MINOR: Improve GlobalKTable docs (#5996)
This is an automated email from the ASF dual-hosted git repository.
guozhang pushed a commit to branch 2.1
in repository https://gitbox.apache.org/repos/asf/kafka.git
The following commit(s) were added to refs/heads/2.1 by this push:
new f9baaef MINOR: Improve GlobalKTable docs (#5996)
f9baaef is described below
commit f9baaef6cb5362a99822f5511fbdebbab5f43c79
Author: Matthias J. Sax <mj...@apache.org>
AuthorDate: Tue Dec 4 16:21:18 2018 -0800
MINOR: Improve GlobalKTable docs (#5996)
Reviewers: Jim Galasyn, Michael G. Noll, John Roesler, Bill Bejeck, Guozhang Wang
---
docs/streams/developer-guide/dsl-api.html | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/docs/streams/developer-guide/dsl-api.html b/docs/streams/developer-guide/dsl-api.html
index 4b91eaa..0f5344a 100644
--- a/docs/streams/developer-guide/dsl-api.html
+++ b/docs/streams/developer-guide/dsl-api.html
@@ -194,6 +194,7 @@
<p>
GlobalKTable provides the ability to look up <em>current</em> values of data records by keys. This table-lookup functionality is available through <code class="interpreted-text">join operations</code>.
+ Note that a GlobalKTable has <strong>no</strong> notion of time in contrast to a KTable.
</p>
<p>Benefits of global tables:</p>
@@ -2635,7 +2636,7 @@
<a class="reference internal" href="#streams_concepts_globalktable"><span class="std std-ref">GlobalKTable</span></a> (entire changelog stream) upon receiving a new record from the
KStream (record stream). An example use case would be “star queries” or “star joins”, where you would enrich a stream
of user activities (KStream) with the latest user profile information (GlobalKTable) and further context information
- (further GlobalKTables).</p>
+ (further GlobalKTables). However, because GlobalKTables have no notion of time, a KStream-GlobalKTable join is not a temporal join, and there is no event-time synchronization between updates to a GlobalKTable and processing of KStream records.</p>
<p>At a high-level, KStream-GlobalKTable joins are very similar to
<a class="reference internal" href="#streams-developer-guide-dsl-joins-kstream-ktable"><span class="std std-ref">KStream-KTable joins</span></a>. However, global tables provide you
with much more flexibility at the <a class="reference internal" href="#streams_concepts_globalktable"><span class="std std-ref">some expense</span></a> when compared to partitioned
@@ -2783,9 +2784,9 @@
</tr>
</tbody>
</table>
- <p><strong>Semantics of stream-table joins:</strong>
- The join semantics are identical to <a class="reference internal" href="#streams-developer-guide-dsl-joins-kstream-ktable"><span class="std std-ref">KStream-KTable joins</span></a>.
- The only difference is that, for KStream-GlobalKTable joins, the left input record is first “mapped” with
+ <p><strong>Semantics of stream-global-table joins:</strong>
+ The join semantics are different to <a class="reference internal" href="#streams-developer-guide-dsl-joins-kstream-ktable"><span class="std std-ref">KStream-KTable joins</span></a> because it's not a temporal join.
+ Another difference is that, for KStream-GlobalKTable joins, the left input record is first “mapped” with
a user-supplied <code class="docutils literal"><span class="pre">KeyValueMapper</span></code> into the table’s keyspace prior to the table lookup.</p>
</div>
</div>