导入人群是将外部数据导入画像平台构建人群,主要有3种实现方式:文件导入、Hive表导入和SQL导入。文件导入是将TXT、CSV等格式的文件导入画像平台;Hive表导入是指定源Hive表及导入字段,将满足条件的源表数据导入画像平台;SQL导入是Hive表导入的延伸,用户可以自由编写SQL语句,其运行结果最终导入画像平台。图5-20展示了3种导入人群的可视化配置页面。
Hive表导入和SQL导入的实现逻辑比较简单,如图5-21所示,Hive表导入配置和SQL语句配置都会转换为SQL导入语句,经由大数据引擎执行后获取到人群数据。不同用户配置导入人群时涉及的数据表不同,要严格校验用户对数据表是否有读权限,防止发生数据安全事故。Hive导入和SQL导入方式创建的人群数据直接存储到Hive表中,后续需要通过HiveToBitmap将人群数据写入BitMap并存储在OSS中。
通过TXT或者CSV文件创建人群,其文件中只需要保存一列UserId数据。文件通过接口上传到服务端后可以解析其中的每一行数据,数据经处理后可以直接写入BitMap并存储到OSS中。与Hive导入人群方式不同,文件导入优先生成人群BitMap,之后再通过BitMapToHive过程写入到人群结果Hive表中。图5-22展示了通过上传文件创建人群的流程图,其中展示了DeviceId文件上传的处理流程,DeviceId需要做一次ID转换之后再写入人群BitMap。文件上传后同步创建人群耗时比较久,为了提高用户体验,创建过程可以实现异步处理,即通过接口上传的文件先保存到服务端,然后异步解析文件并创建人群。
导入人群是画像平台最常用的人群创建方式之一,其实现了将各类数据源沉淀为人群的功能,支持更灵活的人群创建方式,拓展了画像平台数据范围。比如运营人员将某次活动中表现良好的用户导入画像平台并构建成人群,后续可以进行广告投放或者人群分析;数据分析师离线统计出了一批高价值用户,导入平台构建人群后可以直接提供给业务使用。
本文节选自《用户画像:平台构建与业务实践》,转载请注明出处。