GitHub user pdu-mn1 opened a pull request:

    https://github.com/apache/samza/pull/593

    SAMZA-1763: Add async methods to Table API

    Currently, Table API only has blocking/sync methods which limit the
    throughput of remote tables. This change adds async methods to the API
    to enable high throughput remote table accesses through usage of async
    IO. The new methods are added to ReadableTable and ReadWriteTable. A
    high level summary of the change is below:
    
    - added async methods to table ReadableTable and ReadWriteTable.
    - added async methods to TableRead/WriteFunction
    - CompletableFuture is used for the async abstraction
    - CachingTable are updated to support async methods
    - added default impls for sync methods backed by async in table functions
    - added helper class, Throttler/AsyncHelper to ease table development
    - fixed existing test cases with table implementations
    - added more thorough unit tests to RemoteTable CRUD methods
    
    Additionally remove explicit check of config entries for remote table in
    TestTableDescriptorsProvider since there is already a test case on
    RemoteTableDescriptor.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/pdu-mn1/samza async-table-api-futures

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/samza/pull/593.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #593
    
----
commit 0fdc9f7982a0b241a78528471c9baa09ff02ad8a
Author: Peng Du <pdu@...>
Date:   2018-06-27T23:32:02Z

    SAMZA-1763: Add async methods to Table API
    
    Currently, Table API only has blocking/sync methods which limit the
    throughput of remote tables. This change adds async methods to the API
    to enable high throughput remote table accesses through usage of async
    IO. The new methods are added to ReadableTable and ReadWriteTable. A
    high level summary of the change is below:
    
    - added async methods to table ReadableTable and ReadWriteTable.
    - added async methods to TableRead/WriteFunction
    - CompletableFuture is used for the async abstraction
    - CachingTable are updated to support async methods
    - added default impls for sync methods backed by async in table functions
    - added helper class, Throttler/AsyncHelper to ease table development
    - fixed existing test cases with table implementations
    - added more thorough unit tests to RemoteTable CRUD methods
    
    Additionally remove explicit check of config entries for remote table in
    TestTableDescriptorsProvider since there is already a test case on
    RemoteTableDescriptor.

----


---

Reply via email to