更多云场景实践研究案例,点击这里:
【云场景实践研究合集】联合不是简单的加法,而是无限的生态,谁会是下一个独角兽
作为阿里云的深度用户,网聚宝的成长和阿里云的成长已经深深交织在了一起,在公开的5个产品技术上总投入资源大约是同类产品的1/5。作为一个中小规模的技术团队,客户已有3000多家品牌。本文将详细解读网聚宝在使用阿里云产品4年的过程中,基于云计算的架构心得。
作为阿里云的深度用户,网聚宝的成长和阿里云的成长已经深深交织在了一起,在公开的5个产品技术上总投入资源大约是同类产品的1/5。作为一个中小规模的技术团队,客户已有3000多家品牌。本文将详细解读网聚宝在使用阿里云产品4年的过程中,基于云计算的架构心得。
“对于创业公司来说,云服务已经比Hadoop这些开源软件成熟,这个时候就会发现,这些会应用阿里云的人,业务创造能力是那些Hadoop的许多倍,直接产生业务价值,而用户最需要的就是这些。从而拥有了竞争优势的成本,和业务拓展的速度,来给用户提供大数据处理的能力。”
“团队规模这么小,怎么去和别人竞争?在云计算时代,网聚宝的实际经验是:上云,至少在技术生产侧,可以提供10倍的生产力”
——刘立兼
上海云贝网络科技有限公司首席架构师
采用的阿里云产品
- 阿里云云数据库 Memcache 版 原名OCS
- 阿里云云数据库 Redis 版
- 阿里云云数据库 MongoDB 版
- 阿里云分析型数据库 AnalyticDB 简称ADS
- 阿里云表格存储 Table Store 原名 OTS
- 阿里云大数据计算服务 MaxCompute 原名 ODPS
- 阿里云云数据库 RDS
- 阿里云业务实时监控服务 ARMS
- 阿里云分布式关系型数据库服务DRDS
- 阿里云数据集成 Data Integration
- 阿里云推荐引擎 Recommendation Engine
- 阿里云企业级分布式应用服务 EDAS
- 阿里云云服务器 ECS
- 阿里云弹性伸缩 Auto Scaling
- 阿里云消息队列 MQ
- 阿里云日志服务 Log Service
- 阿里云DataV数据可视化
- 阿里云数据管理DMS
- 阿里云Web应用防火墙
- 阿里云安骑士
- 阿里云移动安全
- 阿里云数据风控
- 阿里云持续交付平台 CRP
为什么使用阿里云
云服务有一个非常明显的特性,即将底层能力与上层应用切割,同时将通用能力与具体业务逻辑分开,在未来开发中,很适合网聚宝创业团队根据业务的需求快速搭建系统。
关于 网聚宝
上海云贝网络科技有限公司正式成立于2011年,是业内领先的全域大数据解决方案服务商,已成功帮助上千家国内外品牌商,搭建以消费者为中心的一站式全域大数据平台,连接品牌在所有渠道中的每一个消费者,助力品牌实现全渠道大数据洞察消费者特征,挖掘人群个性喜好,实现消费者的全渠道互动和CRM精准营销。为品牌在互联网+大数据时代,提供专业的品牌全域大数据服务。
创业之艰难
2011年网聚宝刚开始创业,最初托管几台机器,老是断网。而Hadoop最早也有研究,但是创业公司人力资源有限;同时,如果只招一个两个肯定不够,搭建、运维、开发,至少也得五六个。限于这些原因,创业之初竞争很被动,有人说网聚宝有十五六个在搞Hadoop,数据只需要放在自己的机房中,这些对客户来说都有着很大的吸引力,网聚宝也为要不要从零开始完全上云而动摇过。
为什么选择阿里云?
网聚宝上云之路
在阿里云的强力配合和支持下,网聚宝还是坚持下来,从零开始完全上云,放弃了原有的Hadoop。网聚宝的架构如下图所示,整个架构大致有三个部分,
数据中心,
云基础设施和
上层应用服务。
数据来源:
最下面是底层可以收到的数据来源,大概有三种类型的数据源支撑我们现在的数据服务:第三方自有的平台,公共的电商平台和公开的信息平台。
数据采集:
我们通过十几个,几十个数据采集服务,把这些原始数据采集到数据中心。数据采集同时也承担了数据清洗和格式化的工作,这对于数据是否可以顺利进入数据中心非常重要。
数据中心:
包含了OLTP层,ETL层和OLAP层这三个数据加工层级。还包含了特定场景的数据分析引擎和特有生态的数据服务。这是最核心的一部分。
在OLTP层,我们将高结构化数据存入关系型数据库集群,这里得益于
阿里云的DRDS的支持,使得数据的水平Sharding变得特别容易。同时我们也会把低结构化数据存储在阿里云的Nosql产品中,我们是用了
OCS,
Redis,
OT,
MongoDB四款阿里云的Nosql产品来应对IO要求和结构化程度不同的各类数据。
在ETL层,我们将加工数据的逻辑写成一个个小的加工服务,配合数加IDE便捷的配置管理,与
ODPS几乎无底洞一般的大数据运算能力,将OLTP层的数据加工为可供上层业务系统使用的数据形式。
在OLAP层,我们分别面对在线分析和离线报表两种场景。对于在线分析,我们分别使用
ADS,
ODPS ,
RDS,
ARMS和部分Nosql产品来组和解决不同的在线分析场景。
数据分析引擎主要提供特定场景下的数据分析的服务。我们是用了公众趋势分析来对品牌的市场舆情做分析,提供给客户关于品牌的最新反馈和决策依据。
推荐引擎在我们的主要客户,零售企业来说非常有用,直接关系到是否提升销售额。
Daas API:
我们通过
阿里云的API服务,将数据中心的基础数据与加工数据,通过1.数据维度,2.业务维度,3.调用维度三个方向进行切分,然后通过API透传给我们的各类合作方。
微服务中间件套件:
这是我们基于云开发应用服务的核心。我们原来使用Dubbo作为我们服务化的框架,目前正在往
阿里云的Edas迁移。上图是基于Edas的架构图。
服务化对于需求高度变化/不确定的业务领域特别重要,云服务作为最底层的基础设施是一级火箭,基于服务化构建的大中台就是二级火箭。云服务推动大中台的快速产生,大中台就推动小前台快速试错、实践、实现各类市场的需求。
ECS配合
弹性伸缩可以非常好的应多系统强度的起伏与扩展。Docker的提供使得部署于调整变得更加方便。其他一些比如网络的弹性扩容,专网可接入等特性,使得给客户提供方案时特别灵活,也增加了我们获得市场机会的几率。
阿里云的消息队列产品使网聚宝基本上不怎么需要关心数据分发量的问题,更不需要去担心宕机的可能了。任务调度产品使网聚宝基本不用担心会不会任务没有定时启动的问题,这也是网聚宝原来使用定时任务最担心的事。
开发套件:
网聚宝使用了阿里云的三个产品来支持公司的开发工作。第一个是
阿里云持续交付平台(CRP)。网聚宝在CRP上开发了文档自动化、代码质量自动检查、异常数据扫描、提交人责任管理等,用于确保每一次代码提交都被监控,代码来源可追溯。
第二个是
阿里云的日志服务,阿里云目前提供的日志服务可以积累最原始的监控信息,网聚宝利用阿里云的
ARMS来加工部分原始信息,特别是性能统计类的信息,最后结合
数加的Datav来做到图形化。
最后一个就是
阿里云的DMS,DMS可以非常直观的表现出SQL的执行状态,会话的状态,最关键的是他可以根据需要生成诊断报告。
运维套件:
阿里云的ROS对于网聚宝的独立部署客户是最有用的。网聚宝针对不同体量和需要的客户,在阿里云的ROS上创建好模板,真正需要部署时只需要稍加调整,就可以自动部署完各种云资源以及配置。网聚宝基于
云监控的SDK结合日志服务,再自己写了一套监控系统。网聚宝把阿里云的日志服务中获取的部分性能数据在
ARMS中做实时的聚合,然后配合
Datav显示出来。
全链路安全套件:
网聚宝目前主要使用了
安骑士增强版、
web应用防火墙、
移动安全,
绿网和
数据风控这几个安全产品。
数据应用服务:
这部分服务主要对应OLTP的场景,强调交互简单、响应速度快、易于理解使用等与体验有关的指标。从图上可以看到,记录管理类的服务很多都是数据应用类的服务。这部分服务更多的会依赖于云服务基础设施的能力,对于数据中心的应用大都局限于OLTP数据库的那些产品,比较单纯。
Saas应用:
从图上看起来,许多的服务组成了最终的产品,没有阿里云的数据产品和服务基础设施,网聚宝就无法用比较低的代价,构建出一整套大中台小前台的灵活系统,也就无法灵活地争取市场的机会。
Paas API:
无论是客户本身还是领域的合作方,基于API可以实现数据与应用逻辑的互通,使得解决更深层问题也变得可能。
拥抱阿里云的成效
网聚宝现在公开的5个产品(参照:
http://www.wangjubao.com)。技术上总投入资源大约是同类产品的1/5。作为一个中小规模的技术团队,可以同时支撑5个产品,而且这仅仅是公开的市售的标准产品,还不包含定制开发、合作开发和独立拆卖的产品。而网聚宝的客户,已有3000多家品牌了。国际上包括:Nike、哥伦比亚、狼爪、Northface等。国内有佐丹奴、意尔康、丽音坊等。还有像顺丰海淘、美美箱这种纯电商。此外还有零售、快消、线下服务业、金融等各个维度的品牌。
关于网聚宝的更多实践详情:
十则围之,关于上云的实践与思考
原文发布日期:2017-02-23
云栖社区场景研究小组成员:丁匀泰,仲浩。