2016-04-23 44 views
0

我想從mysql導入elasticsearch使用elasticsearch-jdbc jprante。問題是table-x中的某些字段包含json數據,但是當jdbc導出到elasticsearch時,它會使其嵌套屬性。我只是想它出口,這是字符串。elasticsearch jdbc導入數據包含json

例如

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

出口後的結果(基於/索引/ _mapping):

{ 
    "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" 
      } 
     } 
     } 
    } 
    } 
} 

相反,我想要的結果就像這樣:

{ 
    "tbl_perseroan": { 
    "mappings": { 
     "tbl_perseroan": { 
     "properties": { 
      "field_contain_json": { 
      "type":"string" 
      }, 
      "name": { 
      "type": "string" 
      } 
     } 
     } 
    } 
    } 
} 

有什麼辦法可以達到這個目的嗎?

+0

你可以用'detect_json:false'獲得的錯誤更新你的問題嗎? – Val

回答

0

我用detect_json爲false做了false。但現在問題是utf編碼超過最大長度32766