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 &#8220;star queries&#8221; or &#8220;star joins&#8221;, 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 &#8220;mapped&#8221; 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 &#8220;mapped&#8221; with
                             a user-supplied <code class="docutils literal"><span class="pre">KeyValueMapper</span></code> into the table&#8217;s keyspace prior to the table lookup.</p>
                     </div>
                 </div>