ADF V2 - MongoDB到ADLS

时间:2018-01-29 08:00:37

标签: mongodb azure azure-data-factory

我正在以JSon格式将MongoDB中的数据加载到Azure Data Lake Storage中,我面临两个问题:

  • 字符串字段被截断,如果我在Mongo中有4000个字符的值,它在我的json输出文件中变为250个字符的值。 这是一种已知行为吗?有什么方法可以避免这种数据丢失?
  • 生成的Json文件是我的MongoDb文档的扁平版本。 在mongo:

Mongo structure

ADS中的Json:

{
             "_id": "NonConformityLine_492",
             "Id":492,
             "Code": "",
             "Label": "",
             "Type": "",
             "Comments": "",
             "DateRecorded": "",
             "Details_DeliveryAccepted": true,
             "Details_TemperatureIssueOnAllDelivery": false,
             "Details_TemperatureType": "",
             "Details_TemperatureValue": "",
             "Details_TemperatureTolerance": "",
             "IsSetOnEasyVista": false,
             "Level": 2,
             "ManufacturerCode": "n/a",
             "NonConformityReportCode": "
             "NonConformityTypeCode": "",
             "NonConformityTypeTitle": "",
             "OrderCode": "",
             "RawMaterialCode": "",
             "RecorderName": "",
             "Response_ResponseFullText": "
             "Response_ResponseDate": "”
             "Response_ResponseAuthor": "",
             "SiteOrPosCode": "",
             "Status": "",
             "SupplierCode": "",
             "WarehouseCode": ""
}

任何保持数据结构的方法?

此致

1 个答案:

答案 0 :(得分:0)

这是ADF MongoDB连接器实现的两个限制。

  • 如果字符串字段长度超过255,则会被截断。默认字符串列长度为255,作为对MongoDB中字符串数据的折衷,它将相对较短(名称,地址,标题等),较大的值将影响性能和内存大小。本月晚些时候,ADF将公开此问题的配置。
  • 由于我们使用表格中间数据结构在M * N数据存储中进行正交数据传输,因此Mongo文档变得扁平化是一种副设计。我们确实意识到这种方法对NoSql数据存储不起作用,我们正在改进这个领域。 MongoDB位于积压列表中。