elasticsearch jdbc导入数据包含json

时间:2016-04-23 15:53:58

标签: mysql json elasticsearch

我想通过jprante使用elasticsearch-jdbc从mysql导入到elasticsearch。问题是table-x中的某些字段包含json数据,但是当jdbc导出到elasticsearch时,它会使它成为嵌套属性。我只想按原样导出,这是字符串。

例如

strcpy(packet.crc,crc);
导出后

结果是(基于/ index / _mapping):

table x
id|name       |field_contain_json
pk|varchar(20)|varchar(1000)

相反,我希望结果如下:

{
  "tbl_perseroan": {
    "mappings": {
      "tbl_perseroan": {
        "properties": {
          "field_contain_json": {
            "properties": {
              "sub_field_1": {
                "type": "string"
              },
              "sub_field_2": {
                "type": "string"
              },
              "sub_field_3": {
                "type": "string"
              },
              "sub_field_4": {
                "type": "string"
              }
            }
          },
          "name": {
            "type": "string"
          }
        }
      }
    }
  }
}

有没有办法实现这个目标?

1 个答案:

答案 0 :(得分:0)

我用detect_json false做了。但现在问题是utf编码长于最大长度32766