ElasticSearch没有提取整个SQL表

时间:2015-01-07 17:45:40

标签: sql-server elasticsearch windows-7-x64

我正在测试在instruction之后使用现有SQL表(来自SQL Server)设置ElasticSearch。一切都很好,我已经在一些小桌子上进行了测试,事情就像一个魅力。

现在,当我在一个略大的桌子上测试时,它有2,825,077行。当我使用Sense Chrome插件使用此语句将其加载到ElasticSearch并单击运行:

PUT _river/scorecards_river/_meta
{
    "type":"jdbc",
    "jdbc": {
        "driver":"com.microsoft.sqlserver.jdbc.SQLServerDriver",
        "url":"jdbc:sqlserver://SQLSERVERNAME;databaseName=Test",
        "user":"username",
        "password":"password",
        "sql":"select ID as _id, IP as ip from testtable",
        "strategy":"simple",
        "index": "test",
        "type":"product",
        "bulk_size":100,
        "max_retries":5,
        "max_retries_wait":"30s",
        "max_bulk_requests":5,
        "bulk_flush_interval":"5s"
    }
}

在控制台中,它会显示所有BULK插入信息,似乎它会完全加载所有数据。

enter image description here

但是当我在Sense中快速计算时:

GET jdbc/jdbc/_count

它给了我:

{
   "count": 1488226,
   "_shards": {
      "total": 5,
      "successful": 5,
      "failed": 0
   }
}

我无法找到任何有关解释的相关信息,任何人都知道为什么会这样?

一些背景:我在Windows 7上,ES版本是elasticsearch 1.4.2,alsp使用sqljdbc4,elasticsearch-river-jdbc-2.2.3

谢谢,

1 个答案:

答案 0 :(得分:1)

事实证明,在删除旧驱动程序并使用最新版本1.4.0.8从here安装新驱动程序后,elasticsearch-river-jdbc版本就出现了问题。它现在成功加载数据。