使用jdbc导入程序从sql到弹性搜索没有获得增量数据

时间:2015-10-21 11:40:43

标签: elasticsearch elasticsearch-plugin elasticsearch-jdbc-river

根据jdbc导入程序:

建议使用UTC中的时间戳进行同步。此示例使用毫秒分辨率列mytimestamp获取自上次运行以来添加的所有产品行:

{
    "type" : "jdbc",
    "jdbc" : {
        "url" : "jdbc:mysql://localhost:3306/test",
        "user" : "",
        "password" : "",
        "sql" : [
            {
                "statement" : "select * from \"products\" where \"mytimestamp\" > ?",
                "parameter" : [ "$metrics.lastexecutionstart" ]
            }
        ],
        "index" : "my_jdbc_index",
        "type" : "my_jdbc_type"
    }
}

我想根据列修改后的数据逐步输入数据,格式为2015-08-20 14:52:09我也使用每分钟运行一次的调度程序。我尝试使用sql key的值作为

"statement" : "select * from \"products\" where \"modifiedDate\" > ?",

但未加载数据。

我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

lastexecutionstart的格式如下“2016-03-27T06:37:09.165Z”。 它包含'T'和'Z'。这就是为什么你的数据没有被加载的原因。

如果你想了解更多。 这是链接 https://github.com/jprante/elasticsearch-jdbc