menu
Is this helpful?

# 元数据管理工具

# 一、简介

元数据管理工具主要用于对 TE 系统中的事件属性、用户属性进行类型修改或删除操作。由于元数据的调整会暂停数据的 ETL 流转,因此我们建议只在确定类型导入错误与数据异常时使用本工具,不建议进行频繁操作。

# 二、使用说明

元数据管理工具只支持私有化服务的用户使用。root 用户登录私有化集群的任意一台服务器,执行 su - ta

然后执行 ta-tool modify_meta,即可进入源数据管理工具界面。


# 2.1 填写需处理项目的 appid

首先需要输入待修改项目的 appid ,可进入 TE 系统的「项目管理」页面查看项目的 appid 。

# 2.2 确认项目名称

输入 appid 后,会提示待修改项目的项目名,输入"y"进行确认,输入"n"取消操作


# 2.3 选择元数据操作类型

接下来可以开始添加需要执行的操作类型,此处支持循环添加操作动作,在配置完成一个操作设置后,可以添加另一个操作,直到选择「添加完成」为止。建议把所有修改或删除的操作一次性集中完成。

# 2.4 修改事件属性类型

# 2.4.1 常规事件属性修改

  • 例:修改事件属性 argNum,将其类型从 number 改为 string:
    • 操作类型选择:1
    • 事件属性名输入:argNum
    • 修改类型输入:string

# 2.4.2 对象、对象组子属性修改

TIP

在元数据管理工具中,可以使用「父属性.子属性」的表达方式在修改/删除时指向对象(组)的子属性

  • 例:修改对象(组)属性 argrow 的子属性 channel_id,将其类型从 number 改为 string:
    • 操作类型选择:1
    • 事件属性名输入:argrow.channel_id
    • 修改类型输入:string

# 2.5 修改用户属性类型

# 2.5.1 常规用户属性修改

  • 例:修改用户属性 user_argNum,将其类型从 number 改为 string:
    • 操作类型选择:2
    • 用户属性名输入:user_argNum
    • 修改类型输入:string

# 2.5.2 对象、对象组子属性修改

  • 例:修改对象(组)属性 user_argrow 的子属性 channel_id,将其类型从 number 改为 string:
    • 操作类型选择:2
    • 事件属性名输入:user_argrow.channel_id
    • 修改类型输入:string

# 2.6 删除事件属性

  • 例:删除常规事件属性 argbool 和对象(组)属性 argrow 的子属性 level:
    • 操作类型选择:3
    • 事件属性名输入:argbool, argrow.level

# 2.7 删除用户属性情况下的操作

  • 例:删除常规用户属性 user_argbool 和对象(组)属性 user_argrow 的子属性 level:
    • 操作类型选择:4
    • 用户属性名输入:user_argbool, user_argrow.level

# 2.8 修改和删除操作添加完成

  • 在完成所有配置后,输入「5」进行确认

# 2.9 确认操作

  • 在执行前会进行最终确认,输入"y"进行确认,输入"n"取消操作

# 2.10 执行相关操作

完成确认后,管理工具会先暂停 TE 系统的数据 ETL 服务。之后会执行本次设置中的所有操作,在完成所有操作后,会重新启动数据 ETL 服务。在此期间上报的数据将会延迟入库,但不会丢失。

# 2.11 最终结果显示

# 2.12 对数据的影响

# 2.12.1 普通属性

在修改普通属性时,修改后会导致该属性之前导入的数据置为 null。

# 2.12.2 父属性

在修改父属性时,修改后会导致该父属性之前导入的数据置为 null,包括该父属性所有子属性的值。

# 2.12.3 子属性

在修改子属性时,修改后会导致该子属性之前导入的数据置为 null,不影响同父属性下其他子属性。

# 三、注意事项

  1. 在执行修改和删除过程中,尽量避免会话断开,或者使用 Ctrl + C 来中断操作。
  2. 修改和删除属性会停止 ETL 流转,避免频繁操作影响数据的实时流入。
  3. 子级属性不允许修改为复杂结构类型。