作者:算法&健兮,阿里巴巴数据技术及产品部技术专家
生意参谋介绍
生意参谋是阿里官方打造的全渠道、全链路、一站式数据平台,致力于为用户提供经营分析、市场洞察、客群洞察等多样化数据服务,帮助用户全面提升商业决策效率。自2011年诞生以来,生意参谋服务过的用户已逾3000万,覆盖了线上线下零售商(淘宝天猫)、品牌商(零售通)、智慧门店、内贸批发商(1688)、内容创作者(微淘等)、东南亚国际商家(LAZADA)等多个业态商业用户。 目前,淘宝天猫商家中,月有交易的商家,99%以上都在使用生意参谋。
生意参谋经过将近十年的发展,已经支撑了99%淘宝天猫商家的决策运营,在如此庞大的商家群体下,每个商家对于数据的诉求都不一样
• 对于中大型商家,有自己的数据分析师团队,更希望自己对原始数据进行加工与展示,
• 对于中小型商家希望可以提供更加方便的一键式服务
• 对于一些品牌商,希望看到长达数年的历史数据分析
多种多样的分析需求对生意参谋的架构提出了巨大的挑战,借助于云原生数据仓库AnalyticDB MySQL的强大能力,生意参谋与QuickBI团队强强联合,打造了“商家自助分析”产品,帮助商家定制自己的数据报表,满足商家对自身各维度数据进行随心所欲的分析需求,帮助千万商家实现“数据价值在线化”。
商家分析的业务挑战
1)海量数据高并发复杂查询
生意参谋服务几百万商家,数据量是非常庞大的,如果存储3年数据,仅一个商品维度数据表,就能到千亿条记录。但是我们要满足商家对这些数据表,进行任意维度的数据查询、筛选、关联、聚合、计算、排序等操作,并且要求毫秒级返回。例双十一期间我们的复杂查询QPS超过300,在这种高并发低延时场景下对数据库带来巨大的挑战。
2)在线查询和批处理混合负载
为了降低成本,生意参谋“商家自助分析”产品不能将所有的商家数据全部写入分析库,需要对订购的商家需要在商家当天回补所有的历史数据,要求单商家6000W数据分钟级完成商家历史数据回补。在数据回补时,高并发查询与写入要求同时运行,相互不影响,对分析库的混合负载要求很高。
3)任意维度的灵活报表能力
生意参谋“商家自助分析”产品的根本需求是满足商家各式各样的分析需求,需要为商家可以提供灵活配置报表的能力,这时候一个成熟的BI解决方案必不可少。
4)商家数据安全性要求高
商家对于自身的数据安全要求非常高,生意参谋“商家自助分析”产品既要让商家能够随心所欲的进行数据分析,又要避免数据的泄露,也要防止数据被爬取、防止水平越权泄露。
全套成熟BI方案 - AnalyticDB + QuickBI
生意参谋选择了 AnalyticDB(以下简称ADB) + QuickBI 一整套成熟的BI解决方案。
QuickBI介绍
Quick BI是阿里云成熟的自助分析报表平台,是国内首个且唯一入选Gartner魔力象限的BI产品。产品经过几年的沉淀已无缝对接各类云上数据库和自建数据库,0代码鼠标拖拽式操作,让业务用户也能一键轻松实现海量数据可视化分析。并且QuickBI提供弹内部署能力,可以通过生意参谋为入口,对商家提供统一的服务。让商家在产品心智上感受到,一个数据分析平台,没有考虑系统间切换的问题。真正实现一个平台,满足用户数据分析需求。
AnalyticDB云原生数据仓库
AnalyticDB是阿里云自研的云原生数仓库,全面兼容MySQL语法,为分析而生,拥有出色的分析性能。
1)MySQL兼容,好用是数据库价值真正的体现,AnalyticDB高度兼容MySQL,基本无需修改代码即可像使用MySQL一样使用AnalyticDB,迁移使用成本极低。对于MySQL社区周边工具也可以无缝接入,因此和QuickBI的配合就像使用MySQL一样简单。
2)高性能高并发,AnalyticDB为分析而生,拥有业界最快的查询性能,通过行列混存、自适应索引,结合向量化的分布式执行引擎实现大部分查询复杂可以在毫秒级完成;同时通过在线化的调度和云原生的弹性扩展能力,可以支持大量商家的在线并发访问。
3)混合负载,在存储计算分离的架构下,AnalyticDB可以混合计算负载能力,在经典的在线(online)/交互式(interactive)查询执行模式之外,也支持了离线/批处理(batch)查询执行模式。因此针对在大量商家高并发在线查询的同时,同时可以进行并发的数据写入、加载和回补,实现业务一套系统的混合负载处理。
4)安全可靠,AnalyticDB基于云原生的VPC网络构建,同时对数据有库、表、列等多级权限保护,同时还支持通过内容数据的加解密,可以满足商家数据的安全性要求。
总结下,AnalyticDB可以从任意维度进行查询、筛选、聚合、计算、排序等操作,性能支持亚秒返回,并且支持实时写入,支持大型ETL与高并发查询混合负载等特性非常契合商家自助分析业务。并且,QuickBI 完美支持AnalyticDB作为数据源头,与商家自助分析业务完美契合。
生意参谋业务架构
生意参谋自助服务的本质是一套安全可靠,稳定灵活的BI方案。在底层,生意参谋将订购商家数据存放在AnalyticDB中,依托于AnalyticDB + QuickBI的生态,建立商家项目空间,同时打通生意参谋与QuickBI权限体系,支撑起商家自助分析需求。
数据同步
生意参谋自助分析,借助AnalyticDB支持高吞吐实时写入的特性,通过订购当天回补历史数据的方式, 解决了客户对于长周期数据的分析诉求。对于新订阅用户,需要将历史数据按天级别增量同步至AnalyticDB中,这个是系统设计的一个难点。借助AnalyticDB实时数据写入的能力,我们设计了自助分析-数据增量同步方案,有效解决了历史数据的增量同步。
业务价值
所有自助分析自定义配置的报表,都可以选择配置到生意参谋首页,这样商家的所有子账号,都能在生意参谋首页看到,真正达到了用户定制生意参谋页面能力的效果。其中我们通过店铺经营分析,店铺流量分析,单品深度洞察报告等BI模板,吸引了大量商家自助配置自己的BI报表。
未来展望
未来我们希望可以继续在数据价值上的探索,希望持续与AnalyticDB + QuickBI保持共建,推动数据价值在线化,让商家数据分析更加简单高效。
业务资源隔离
在 AnalyticDB MySQL版新推出的弹性形态下实现了资源组功能,通过新建资源组可以从现有实例划分出部分计算节点,这些计算节点资源只归属该资源组。用户可将数据库账号绑定到不同的资源组,SQL查询时根据绑定关系自动路由至对应的资源组执行,满足用户实现内部多租户隔离需求。我们对于不同的大商家,可以进行隔离,确保大商家业务的稳定性,提供更好的业务体验。
查询负载管理
在自助BI的系统中一直存在一个痛点,单个用户配置了不合理的报表,读取超大量的数据,进行超出预期的计算,影响其他商家的报表展示,为此我们在系统中需要做诸多限制,比如用户报表只能基于单表,不可以做多表联合分析,这样大大限制了商家报表的灵活性。为此我们期望AnalyticDB提负载管理的能力,通过我们指定查询资源消耗,读取数据消耗等维度限制,来对查询进行 KILL,切换资源组等行为,保障数据库稳定性。
智能化诊断
需要做好监控和边界问题的发现机制,在出现问题时能够快速定位。期望能够充分利用AnalyticDB的监控能力,在出现问题前第一时间预警,规避问题的发生。为此,AnalyticDB将提供全方位、多维度以及准实时的实例运行状况洞察能力,通过对实例内部的各类运行日志和时序指标进行算法建模,提供出问题前准确预测、出问题时及时告警、处理问题时精准定位的能力,确保不影响用户上层业务。
随时欢迎技术圈的小伙伴们过来交流^_^:
AnalyticDB详情见:产品详情
AnalyticDB知乎公众号:云原生数据仓库
AnalyticDB开发者社区公众号:云原生数据仓库
AnalyticDB开发者钉钉群:23128105