GitHub user HeartSaVioR opened a pull request:

    https://github.com/apache/storm/pull/1689

    STORM-2099 Introduce new sql external module: storm-sql-redis

    This patch is on top of 
[STORM-2089](https://issues.apache.org/jira/browse/STORM-2089) (#1682)
    
    I moved JsonScheme and JsonSerializer to storm-sql-runtime since it's used 
from storm-sql-kafka and storm-sql-redis. In result, additional dependency 
(jackson-databind) for storm-sql-runtime is introduced.
    
    Below is the example of defining Redis table:
    
    ```
    CREATE EXTERNAL TABLE LARGE_ORDERS (ID INT PRIMARY KEY, TOTAL INT) LOCATION 
'redis://localhost:7379' TBLPROPERTIES '{"data.type": "STRING", 
"data.additional.key": "addkey", "redis.timeout": "3000", "use.redis.cluster": 
"true"}'
    ```
    
    LOCATION can be set to `redis://:[password]@[host]:[port]/[dbIdx]`.
    Default mode is JedisPool (for single Redis). If you want to enable cluster 
mode you need to specify option "use.redis.cluster" to "true".
    
    In cluster mode password and dbIdx is ignored. DB index is not valid for 
Cluster mode, but recently password for Cluster mode of Redis becomes valid. 
    This will be addressed from storm-redis and addressed to storm-sql-redis 
later.
    
    Please note that Redis(Cluster)State only supports STRING and HASH since 
State stores key and value.
    
    Please review and comment. Thanks in advance!

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

    $ git pull https://github.com/HeartSaVioR/storm STORM-2099

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

    https://github.com/apache/storm/pull/1689.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 #1689
    
----
commit 3c29427ad9af26e2cb4519848ede96a1e2848669
Author: Jungtaek Lim <kabh...@gmail.com>
Date:   2016-09-13T02:40:13Z

    STORM-2089 Replace Consumer of ISqlTridentDataSource with SqlTridentConsumer
    
    * SqlTridentConsumer contains StateFactory and StateUpdater which is needed 
to store tuples to State via batch
    * Apply the change to storm-sql-kafka
    * add javadoc to ISqlTridentDataSource

commit 7f0fffc5a92d148d01318cf591e4916f153ea077
Author: Jungtaek Lim <kabh...@gmail.com>
Date:   2016-09-19T08:58:54Z

    STORM-2099 Introduce new sql external module: storm-sql-redis
    
    * implements RedisDataSourcesProvider
      * Redis data source only provides Consumer (State)
    * move out JsonScheme and JsonSerializer to runtime
      * it's both used for storm-sql-kafka and storm-sql-redis

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to