理财农场大数据初探之路

本文涉及的产品
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介:  概述 不以需求为目的的技术研究都是耍流氓     由于公司业务的快速发展,以及运营部门的需求,需要实现投资用户的月账单功能。 数据背景     目前平台投资用户57万多,投资流水数据已超过千万级,另外还需要统计用户的充值、提现、回款本金、利息、奖励、红包、区分各种产品的分类统计(定期、活期)、历史投资分布、收益趋势、打败多少用户、月度理财之星等等指标。
 

概述

不以需求为目的的技术研究都是耍流氓

    由于公司业务的快速发展,以及运营部门的需求,需要实现投资用户的月账单功能。


数据背景

    目前平台投资用户57万多,投资流水数据已超过千万级,另外还需要统计用户的充值、提现、回款本金、利息、奖励、红包、区分各种产品的分类统计(定期、活期)、历史投资分布、收益趋势、打败多少用户、月度理财之星等等指标。


技术选型背景

       在此之前就有类似需求,统计2016年投资用户的年度账单。当时部门几个核心的人员也针对年度账单做了分析及技术选型,有考虑定时任务多线程跑批、存储过程、读写库分离等,甚至为了不影响平台应用的资源,单独购买数据库跑批。最终的方案是多线程(10个线程)通过java调用、数据库读写分离、单独服务器、单独数据库,进行跑批实现;当然最终的结果也是顺利实现了,但过程不尽人意,记得应该是两个研发工程师,用了近两个星期的时间实现,包括梳理数据、测试数据、核对数据、需求变更、重跑等等,跑批的时间将近花了三天的时间,这不管是效率上、时效性上、人力成本、服务器成本上都是不划算的。

       因为有了这次经历,再加上2017年规划,各部门提出了各种报表、智能营销、精准营销、实时结果反馈等各种需求,所以就有了预研阿里云大数据平台——数加的开始(这里不是打广告,有关数加平台,有兴趣的可自行从阿里云了解)。目前我们利用数加平台主要实现了两大功能:月账单(各种统计需求)、大屏流量墙。

      预研数加平台这里要特别感谢柯里(百香果)提供了不少的帮助。

 

月账单

月账单:

借助数加平台的大数据开发套件实现。


什么是大数据开发套件?

“大数据开发套件”是阿里云推出的大数据领域平台级产品,提供一站式大数据开发、数据权限管理、任务离线调度等功能。其底层依赖阿里云自主研发的大数据计算服务 MaxCompute(原 ODPS),提供海量任务的离线加工、分析、云数仓搭建、大数据挖掘等应用于多种场景的功能。‘开箱即用’的使用方式,让用户不必担心底层集群的搭建和运维所带来的成本和繁琐。


产品架构图


    如上图那么我们利用大数据开发套件,具体用来做了什么处理呢?

    1、数据同步和存储,支持从阿里云数据库同步源数据到大数据开发套件;前提是根据需要提取的数据进行建表,可以根据业务模型创建宽表,在此表的基础上进行数据清洗和处理,得到结果数据再进行存储;

    2、利用MaxCompute支持的SQL语句处理;

    3、配置工作流,支持复杂的业务按流程逐步执行;

    4、支持ETL调度,可配制高度周期,以及日志的输出和跟踪;

    5、支持任务监控,出错及时报警和处理;

    6、结果输出回导至现网数据库,以供业务系统调用显示;


    开发过程中,也很好的支持了开发、调试、测试、上线的一体系的支持,所以运用到业务系统中的可行性是很大的,据了解目前已很多公司已商用;当然大数据开发套件还有很多功能暂时没有用到,比如机器学习、支持自定义函数、java调用、BI报表输出、SDK获取结果等等,有兴趣的同学可以从阿里云更深入的了解;

https://help.aliyun.com/product/30254.html

 

月账单功能的整体流程如下图:


        目前月账单功能顺利上线,那么大家肯定想知道的通过阿里云的大数据开发套件,体现了哪些好处呢?


后面再说~


 

大屏流量墙

    借助数加平台的流计算实现。主要体现出数据的实时情况,用户实时注册及显示其所在市、用户投资时连线到借款人所在地(取经纬进行飞线)、实时的借款数据、投资数据等等

 

什么是流计算?

    顾名思义,流计算通俗的讲,就是对产生的一条条事件流、数据流进行实时计算和处理;

    通常而言,流计算具备三大类特点:

    实时(realtime)且无界(unbounded)的数据流

    流计算面对计算的,是实时且流式的,流数据是按照时间发生顺序地被流计算订阅和消费。且由于数据发生的持续性,数据流将长久且持续地集成进入流计算系统。例如,对于网站的访问点击日志流,只要网站不关闭其点击日志流将一直不停产生并进入流计算系统。因此,对于流系统而言,数据是实时且不终止(无界)的。

    持续(continuos)且高效的计算

    流计算是一种”事件触发”的计算模式,触发源就是上述的无界流式数据。一旦有新的流数据进入流计算,流计算立刻发起并进行一次计算任务,因此整个流计算是持续进行的计算

    流式(streaming)且实时的数据集成    ·

    流数据触发一次流计算的计算结果,可以被直接写入目的数据存储,例如将计算后的报表数据直接写入RDS进行报表展示。因此流数据的计算结果可以类似流式数据一样持续写入目的数据存储。

全链路流计算示意


大屏流量墙的整体流程如下图:


StreamCompute的代码示例:

-- 1. 创建源表 (以下实例是产生随机字符串的源头表)

CREATE STREAM TABLE my_source(word STRING);


-- 2. 创建结果表 (以下是不产生对外输出的结果表)

CREATE RESULT TABLE my_result(word STRING, cnt BIGINT);


-- 3. 计算逻辑

INSERT INTO my_result select

       t.word,

       COUNT(1)

    FROM my_source t

    GROUP BY t.word;


-- 4. 代码完成后,请点击 "调试任务",进行任务调试。任务调试可以mock输入/输出数据,方便用户进行数据调试。


-- 5. 调试完成后,请点击"上线任务",任务发布到"数据运维"页面进行生产运行。


想学的也可以看数加体验馆的大屏教程:https://data.aliyun.com/experience/case8

    

最终大屏显示的效果图:


总结

使用数加平台后,给我们带来了什么

优点:

    1、人力成本方面,相比较年度账单,人力成本大幅减少,一个开发人员一周内可以完全实现(还是初次接触)

    2、业务执行效率大幅提高,阿里云其Maxcompute适用于100GB以上规模的存储及计算需求,最大可达EB级别。目前我们的数据大小只能算是沧海一粟吧~!~   MaxCompute产品地址:https://www.aliyun.com/product/odps  大数据开发套件地址:https://data.aliyun.com/product/ide

    3、运算能力也大幅提升,还是以年度账单为例比较,目前上线初次全量数据跑,基本是在30分钟以内完成。

    4、大数据的开发门槛降低,所谓专业的事交给专业的人来做,我们不需要关心细节,做的只是梳理业务、建模、配置、提取即可;

    5、隔离性好,基本不需要渗入到业务系统实现;

说了优点,再说点缺点:

    1、Maxcompute的SQL支持方面有较多限制,当然有关系型数据库SQL经验的同鞋上手应该是很快的。

    2、在跑批过程当中,有出现过一次数据回写数据库失败的问题。

    3、开发环境与测试环境隔离不是很好,只能通过权限来控制。

    4、有些产品还在公测阶段,有一定的小BUG,比如数据有重复,需要自行去重。

本文作者:  Tonson(农金圈研发团队),热爱技术的java攻城狮。

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
大数据
互联网时代,一份投资理财大数据报告能改变什么?
互联网时代,一份投资理财大数据报告能改变什么?
139 0
互联网时代,一份投资理财大数据报告能改变什么?
|
30天前
|
存储 机器学习/深度学习 分布式计算
大数据技术——解锁数据的力量,引领未来趋势
【10月更文挑战第5天】大数据技术——解锁数据的力量,引领未来趋势
|
9天前
|
数据采集 监控 数据管理
数据治理之道:大数据平台的搭建与数据质量管理
【10月更文挑战第26天】随着信息技术的发展,数据成为企业核心资源。本文探讨大数据平台的搭建与数据质量管理,包括选择合适架构、数据处理与分析能力、数据质量标准与监控机制、数据清洗与校验及元数据管理,为企业数据治理提供参考。
42 1
|
1月前
|
分布式计算 关系型数据库 MySQL
大数据-88 Spark 集群 案例学习 Spark Scala 案例 SuperWordCount 计算结果数据写入MySQL
大数据-88 Spark 集群 案例学习 Spark Scala 案例 SuperWordCount 计算结果数据写入MySQL
47 3
|
3天前
|
存储 大数据 定位技术
大数据 数据索引技术
【10月更文挑战第26天】
13 3
|
3天前
|
存储 大数据 OLAP
大数据数据分区技术
【10月更文挑战第26天】
17 2
|
6天前
|
消息中间件 分布式计算 大数据
数据为王:大数据处理与分析技术在企业决策中的力量
【10月更文挑战第29天】在信息爆炸的时代,大数据处理与分析技术为企业提供了前所未有的洞察力和决策支持。本文探讨了大数据技术在企业决策中的重要性和实际应用,包括数据的力量、实时分析、数据驱动的决策以及数据安全与隐私保护。通过这些技术,企业能够从海量数据中提取有价值的信息,预测市场趋势,优化业务流程,从而在竞争中占据优势。
31 1
|
8天前
|
数据采集 分布式计算 大数据
数据治理之道:大数据平台的搭建与数据质量管理
【10月更文挑战第27天】在数字化时代,数据治理对于确保数据资产的保值增值至关重要。本文探讨了大数据平台的搭建和数据质量管理的重要性及实践方法。大数据平台应包括数据存储、处理、分析和展示等功能,常用工具如Hadoop、Apache Spark和Flink。数据质量管理则涉及数据的准确性、一致性和完整性,通过建立数据质量评估和监控体系,确保数据分析结果的可靠性。企业应设立数据治理委员会,投资相关工具和技术,提升数据治理的效率和效果。
35 2
|
10天前
|
存储 安全 大数据
大数据隐私保护:用户数据的安全之道
【10月更文挑战第31天】在大数据时代,数据的价值日益凸显,但用户隐私保护问题也愈发严峻。本文探讨了大数据隐私保护的重要性、面临的挑战及有效解决方案,旨在为企业和社会提供用户数据安全的指导。通过加强透明度、采用加密技术、实施数据最小化原则、加强访问控制、采用隐私保护技术和提升用户意识,共同推动大数据隐私保护的发展。
|
14天前
|
SQL 存储 大数据
大数据中数据提取
【10月更文挑战第19天】
37 2

相关产品

  • 云原生大数据计算服务 MaxCompute