事实数据批量导入

优质
小牛编辑
120浏览
2023-12-01

1. 简介

您可使用数据导入功能将离线数据导入分析云系统,方便后期分析及应用。该功能仅开放给定制版客户,如您需要使用,请联系您的服务人员或发邮件到 ext_analytics@baidu.com 购买。建议在如下场景中可使用该功能:

  • 埋点数据缺失需要补录
  • 服务端收集的数据需要入库
  • 其它离线数据需完善补充

2. 使用说明

您可从 管理-分析云设置-数据导入 进入页面,在数据导入页面可查看 数据导入指南数据导入记录,数据导入方式有 在线批量导入工具导入两种,在线批量导入适用部分数据需补录的场景,工具导入方便有数据例行化导入需求的客户上传历史数据。

2.1 在线批量导入

如果您使用在线批量导入方式,可点击 上传文件,在界面选择指定格式的文件。在线批量上传只接受指定格式的文件,文件需为.txt或.json格式。具体数据格式要求如下:

log文件的每行为一条json,格式如下(分为多行为展示方便,实际为一行):

{
  "client_id_":"90342894832043", # 用户唯一匿名id
  "action_time_":1571716339, # 秒级时间戳
  "action_type_":"purchase", # Value与分析云事件管理对应
  "unique_key_":"order_1234560243", # 上传数据唯一去重key
  "uid_":"00175638257", # 用户账户系统的id
  "order_id":"1234560243", # 自定义属性与分析云属性管理对应
  "order_subtotal":3000.00, # 自定义属性与分析云属性管理对应
  "order_discount":300.00, # 自定义属性与分析云属性管理对应
  "order_total":2700.00, # 自定义属性与分析云属性管理对应
  "paid_discount":200.00, # 自定义属性与分析云属性管理对应
  "paid_amount":2500.00, # 自定义属性与分析云属性管理对应
  "items_":[{  # 嵌套项目
    "item_type_":"product", # Value与分析云事件管理对应
    "product_id":"77491", # 自定义属性与分析云属性管理对应
    "product_name":"advanced-night-repair", # 自定义属性与分析云属性管理对应
    "product_category1":"护肤", # 自定义属性与分析云属性管理对应
    "product_price":900.0 # 自定义属性与分析云属性管理对应
  },
  {
    "item_type_":"product", # Value与分析云事件管理对应
    "product_id":"3894", # 自定义属性与分析云属性管理对应
    "product_name":"spf10pa", # 自定义属性与分析云属性管理对应
    "product_category1":"彩妆", # 自定义属性与分析云属性管理对应
    "product_price":410.0 # 自定义属性与分析云属性管理对应
  }]
}

注意client_id_action_time_action_type_uid_为必填字段。

  • client_id_:用户唯一id,由于是必选的,即使未注册的用户也需要提供。可以将设备的唯一标识如cookie、imei、mac作为client_id。由于client_id决定了用户行为的主体,因此同一个用户应该固定不变。
  • action_time_:事件发生时刻的秒级事件戳。
  • action_type_:用户行为事件类型,与分析云事件管理中事件的标识对应。若导入的事件类型未在分析云中注册,那么将无法在界面上进行查询。
  • unique_key_:上传数据唯一去重key。如果该key存在,那么数据在入库前会与历史上上传的数据进行去重,只有通过去重的数据才会导入分析云,删除该批次的时候也仅删除通过去重逻辑的部分。建议使用业务方定义的行为+id拼出,比如业务有一张表叫order,某条记录主键id=1234560243,那么可以将unque_key_设置为order_1234560243。
  • uid_:用户账户系统的id。用于与客户自有的业务数据打通,例如与用户自定义上传的用户属性等维度表相关联进行用户分群或交叉分析,以用户账户系统的id导出分群结果,打通多个设备的用户行为等。
  • items_:嵌套项目固定标识。对应的value为一个数组,数组的每个元素为一个对象。
  • item_type_:嵌套项目事件类型,与分析云事件管理中事件的标识对应。若导入的事件类型未在分析云中注册,那么将无法在界面上进行查询。
  • 其他不以下划线结尾的字段为用户自定义属性,需要与分析云数据管理中的自定义属性标识一致,若没有注册导入时字段会被抛弃。格式举例中的order_idorder_total等都是自定义属性。

数据上传后效果如下:

以上述例子为例,分析云中会展开为

  • 1条purchase数据行,携带orderid/ordersubtotal等事件属性,携带fromtype等会话的属性(若关联成功)
  • 2条product数据行,携带productid/productname等项目属性,携带orderid/ordersubtotal等事件属性,携带fromtype等会话的属性(若关联成功)

purchase和product数据的关联是被保留的,但产品上暂时无法直接体现,间接的体现为关联事件的事件属性和会话属性相同。

2.2 工具导入

您也可使用 工具导入 方式上传数据,相关PYTHON接入工具文档您可联系您的服务人员获取。

2.3 数据导入记录

您上传数据后,可在该界面查看文件名称、导入时间、导入类型、入库情况及导入状态。导入状态有五种:已创建、等待中,处理中、已完成及失败。当导入状态为已完成及失败时,您可下载相应的错误文件,查看您导入数据中的错误,目前对以下七种错误进行较验,您可参照错误描述、错误原因提示、错误类型及错误分类对照表进行更改。

错误描述错误原因提示命令行提示错误类型(英文)错误分类
上报数据中属性和事件中的已有的属性类型不一致上报数据中存在属性类型与现存类型不一致,目前属性类型仅支持文本、数值、时间及是非,请仔细核对message:{Error Type: UNDEFINED_TYPE,Reason: The attribute type is invalid and only text,number,timestamp and bool type are supported.Please check:Sample1, Sample2UNDEFINED_TYPE类型错误
上报数据属性长度超过限制上报数据属性长度超过限制message:{Error Type: EXCESSED_LENGTH,Reason: The length of some attributes exceeds the max length.Please check:Sample1, Sample2 (注:无效属性标红)EXCESSED_LENGTH长度错误
上报数据缺失必要属性请补充上报数据缺失的必要属性message:{Error Type: MISSING_ATTRIBUTE,Reason: "One or more necessary attributes ID are missing"}.Please check:Sample1, Sample2MISSING_ATTRIBUTE属性缺失
数据格式异常该文件数据格式异常,请上传正确格式数据message:{Error Type: INVALID_FORMAT,Reason: "The file format is invalid"}.Please check:Sample1, Sample2INVALID_FORMAT格式无效
上报数据中存在重复的unique_key_上报数据中存在重复的unique_key_,请保证上传数据中unique_key_唯一不重复message:{Error Type:DUPLICATED_KEY,Reason:"The unique key is duplicated"}.Please check:Sample1, Sample2DUPLICATED_KEY重复键