Skip to content

使用阿里云数+平台进行数据统计 #26

Description

@fushang318

1、目标

目前有一些谈话记录数据,样例如下

USER_ID(人员id) ADDRESS_ID(所属社区) TALK_AT(谈话日期) TALKER_NAME(谈话人) CREATED_AT(创建日期)
9401 520001001006056 2015-06-08 00:00:00 王应 2016-05-05 17:49:29
6920 520001001001003 2015-12-10 00:00:00 唐莹 2016-04-23 16:31:57
3420 520001001027154 2015-09-12 00:00:00 张鹏,卢锋 2016-04-05 15:39:52
5854 520001001002013 2015-09-05 00:00:00 普桂兰 2016-04-20 12:48:05
6991 520001010006048 2016-02-25 00:00:00 张丽 2016-04-14 14:20:19
110080 520001003005042 2016-09-07 00:00:00 李荣昌 2017-07-03 16:31:06

特点是

  • 针对一个 USER_ID 有一到N条记录,分别记录了用户所有社区编号,谈话时间,谈话人,谈话记录创建时间
  • 数据保存在 mysql 数据库中
  • mysql 数据库中的数据是会不断持续增加的

需要使用阿里云数+平台来对数据进行ETL,来达到以下目的:

  • 自动化
  • mysql 中的数据需要先抽取到 mongdb 数据库中的一个集合中,集合结构见下面介绍
  • 因为 mysql 中的数据是不断持续增加的,所以需要定期增量抽取到 mongodb 数据库中
  • 对 mongodb 数据库中的数据进行统计分析,找出谈话次数最多的前10个 TALKER_NAME,统计详细情况,把统计结果数据保存到一个 mongdb 集合

mongodb 统计结果集合结构

{
    "talker_name": "xxx",  // 谈话人姓名
    "talk_count": 123,     // 谈话总数
    "info": {
        "$userid": $userid_talk_count,  // key 是 USER_ID 的值,value 是 这个 USER_ID 的谈话次数
        "$userid": $userid_talk_count
    }
}

mongodb 原始数据集合结构

{
    "data": {
        "USER_ID": "xx",
        "ADDRESS_ID": "xx",
        "TALK_AT": "xx",
        "TALKER_NAME": "xx",
        "CREATED_AT": "xx"
    }
}

1.1、选型/环境

  • 阿里云数+平台

1.2、文档

  • 通过沟通确认需求,提交需求理解文档
  • 确定需求理解后,完成设计,提交设计文档

1.3、开发

  • 完成阿里云数+开发和对应说明文档

2、时间

2.1、阶段和验收

周期:7 天(明确需求后,以开发者承诺为准)

2.2、调整和处罚(码市)

  • 可以进行一次时间调整申请,最长不超过 2 天。
  • 未申请或已经有过调整的,每延期一天按项目金额的 10% 进行罚款。
  • 超过 5 天,需求方有权取消项目。
  • 需求方原因造成的延误不包含在内。

3、要求

3.1、人员要求

  • 证明自己有能力胜任此项工作
  • 通过沟通与思考明确需求
  • 明确需求后,在承诺的时间完成提交
  • 熟悉 github, github 账号时间大于半年(在报名中给出 github 账号)
  • 熟悉 阿里云

报名人员可到:
github.com/social-innovation/tasks/issues/26
直接进行需求讨论

4、费用

2000 元(理解需求后按实际承诺工作量计算)

5、协作工具

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions