让餐厅放心的云服务
发布时间:2024-04-18   作者:必牛CRM
作为国内融资最为火爆的范畴之一,公司级SaaS商场招引了众多风投和创业者的重视。6月中旬,必牛正式对外宣告已获得数亿元人民币C轮融资,由支付宝母 公司蚂蚁金服领投,再次引爆了全部国内SaaS商场。现在,必牛累计为超越15000家餐饮门店供给精准营 销效劳,而依据用户买卖和花费行为的数据剖析是精准营 销的基地,怎么疾速处理海量数据,进行多维度、低延时的统计剖析、数据发掘,对体系功能和可伸缩性提出了更高的应战。这篇文章来自必牛CTO对其CRM技能的解密同享。

  以下为原文:

  一. CRM云效劳的体系瓶颈

  必牛CRM历经9年的生长,累计为超越15000家餐饮门店供给精准营 销效劳,管理超越5000万会员数据,日买卖流水超百万笔,年买卖额达200亿以上。

  必牛供给专业的公司级SaaS云效劳,对体系的安全性、稳定性、牢靠性恳求极高,这是公司的根本诉求。一起,依据用户买卖和花费行为的数据剖析,是精 准营 销的基地,怎么疾速处理海量数据,进行多维度、低延时的统计剖析、数据发掘,对体系功能和可伸缩性提出了更高的应战。CRM的方针是数据营 销,需要供给各种纬度的灵敏的查询剖析。举例来说,餐厅一个简略的需要,期望依据花费时刻、性别、花费金额筛选出方针客户,跟着数据量增大,仅靠关系数据库分库分表和索引优化现已难以满足公司的功率恳求。高弹性、易拓展的大数据处理才能,在CRM云效劳中日趋重要。

  二. 必牛CRM体系架构

  1. 方针客户金字塔模型 一个餐厅的辐射规模一般掩盖周围3公里,这个规模内的常客为餐厅贡献了80%以上的销售额。此外还有一些暂时集会,或手握超低价团购券的客人,这些客人并 不能为餐厅带来继续性花费,不断的打折、跳楼价乃至也许会危害餐厅的正常经营,餐厅外表看似人头攒动,但桌均花费大幅降低,效劳员前厅后厨百米折返跑,效 劳不断降低,终究导致把老顾客拒之门外。当餐厅阅历外表的昌盛,发现营业额并无添加,企图进步报价时,图廉价的客人一呼而散,餐厅则难以为继。

  因而,报价战永远不是一个好主意,管理好方针客户并带来继续性收入,才是一个健康的商业形式。必牛CRM经过用户花费行为剖析,将方针客户锁定在常客和忠实客户,降低公司营 销推 广本钱的一起,进步营 销活动的呼应率,为餐厅带来更高的赢利空间。一切这些用户集体的标签分类,依靠离线剖析 + 在线剖析引擎完结,为餐厅供给更精确、更及时的营 销决议计划支撑。

  2. 事务架构

  事务上,用户经过POS花费的数据,上传到CRM云端,一系列的数据处理剖析后,体系为不一样的餐厅供给特定的营 销活动,将微信、短信、APP做为营 销出口,和花费者发生互动,添加花费粘性,为餐厅带来更多价值。

  3. 技能架构

  1)数据搬迁

  跟着IaaS和PaaS技能老练,国内涌现出一批质量较高的云主机供给商。必牛挑选了其间的两家,将自有数据基地搬迁到了云主机上。搬迁前,必牛的数 据基地机柜紧张,原有机房扩容面临很大疑问,一方面事务添加很快,数据基地扩容的需要日益急迫;另一方面,在线事务7x24小时不间断,无法停机保护做体 系搬迁。运维部拟定了在线增量数据搬迁计划,把数据库、查找引擎的数据挂到pgq上,发动pgq生产者,将改动的数据写入行列。一起将数据仿制到云主机 上,仿制完结后,发动pgq花费者,从行列读取改动的数据增量更新。

  2)高可用性

  一个数据基地内,消除数据库和运用效劳的单点毛病对比简单,但跨数据基地的高可用性,要思考到网络拓扑、延时或中止、数据共同、处理功率等疑问,对比 繁琐。咱们树立双活数据基地,不一样数据基地分担不一样的事务。依照事务呼应的优先等级划分为两类:买卖有关的实时事务,不允许超越分钟级中止;CRM数据剖析有关的准实时事务,不允许超越小时级中止。主数据基地处理POS、微 信、安卓终端等在线买卖实时有关的事务,灾备数据基地处理CRM数 据剖析、守时使命、日志剖析、Storm等准实时事务,经过pgq 和流仿制各数据基地坚持两份完好的买卖数据。当数据基地或网络呈现异常时,每一个数据基地所需的事务数据根本完好,此刻有两个挑选:a) 由一个数据基地全面接管一切事务。 b) 数据不一样步,但各数据基地均可正常运用,异常处理后,继续同步数据。按事务呼应分级容灾,能够更合理的运用双活数据基地,依据不一样的异常情况,主动或 人工做出呼应。

  3)数据同步秒级延时

  必牛CRM的 技能特色是数据处理手法多元化,为了满足灵敏疾速检索、统计剖析、平常事务、读写分离等多种意图,买卖数据会被同步到只读库、ES、Storm、 GreenPlum数据仓库,现在正在发动Hadoop离线处理。衡量买卖体系功能的要害目标是TPS和吞吐量,当TPS不断提高时,每秒处理的数据量也 会大幅添加,数据同步的功率就尤为要害。经过压力测验和容量测验,能够核算出数据同步的功率是不是符合恳求。假设咱们为10000家餐饮门店供给效劳,单 店顶峰时段每小时100单,那么体系顶峰期的吞吐量目标设定在1000笔/秒。为了满足功率恳求,并思考容错机制和可拓展性,咱们规划了依据pgq的异步 行列。Skytools是skype公司开发的一款依据Postgres的音讯套件,在skype内部广泛运用,开发于2006年,2007年开源 Skytools Framework,至今一直在运用和保护,运用场景如下:

  l 异步数据传输

  l ? 数千行列和花费者

  l ? 监控基地

  Skytools包含三个组件:pgq、londiste、walmgr

  pgq供给Python API,由异步处理机制去灵敏调用。用于处理实时事务的异步批处理疑问。

  pgq由Producer、Ticker、Consumer构成,支撑高可用布置。Producer将Events推送到Queue中,Ticker担任对批量Queue拟定相应处理规矩,Consumer从Queue中获取Events。

  依据pgq,必牛CRM规 划和完结了协同花费者形式,当体系超负荷时,一键式注册新的花费者,就能够完结多花费者协同处理,提高数据同步的功率。一起,依据负载水平缓批巨细,数据 延时能够由Ticker动态调整。经过压力测验,咱们能够验证布置计划是不是满足需要,调整线上花费者节点数量。现在,必牛CRM能够做到多数据源同步秒级延时、水平拓展。

  4)实时剖析

  现在必牛CRM基地数据量到达10亿等级,做为CRM云效劳,灵敏、高效的数据检索必不可少。一般来说,依据事务时刻选用分库分表、历史数据搬迁的计划降低活跃数据量,提高查询功率。但CRM体系跨年、连锁跨门店查询的需要对比遍及,分库分表会在完结计划上添加较高的杂乱度,一起无法满足多种纬度的灵敏查询,难以拓展。当分库分表后的数据量仍在一个较高的水平常,无法运用索引的全表扫描查询功率会大幅降低。

  必牛CRM选 用了Elasticsearch做为处理计划。Elasticsearch是一个依据Lucene的开源、分布式查找结构,根本包含一切所需的特性:分布 式查找、分布式索引、零装备、主动分片、索引主动负载、主动发现、多索引查询,restful个性接口。它支撑插件机制,有丰厚的插件。比方和 mongoDB、couchDB同步的river插件,分词插件,hadoop插件,脚本支撑插件等。一起ES仍是个准实时的查找引擎,索引后的数据能够 实时查找到。在ES的运用场景中,更多的是将其做为非结构化数据的存储,经过功能测验和试验,ES相同适用于结构化数据的存储和查询。结合ES的分布式、 分片、多索引联合查询的特性,必牛CRM将大数据量的随机查询功率提高了数十倍,到达秒级呼应。

  CRM的另一个技能特色是统计剖析事务多,经过引进Storm流核算结构,将体系日志和pgq做为Storm数据源,结合事务特色,完结分级汇总的topology,咱们将原有的T+1数据剖析事务提高为实时核算,为公司供给更精确、及时的数据决议计划支撑。

  5)离线处理

  离线处理主要是依据GreenPlum + 守时使命完结。Greenplum是依据postgresql的分布式数据库。其选用shared nothing架构(MPP),主机,操作体系,内存,存储都是自我控制的,不存在同享。主要由master host,segment host,interconnect三大多数构成。合作合理的分片战略和布置计划,GP的功率能够提高十倍以上。必牛CRM将杂乱、难以拆分的SQL操作移植到GP上,大数据量的统计剖析功率得到了显着提高。

  6)SOA效劳化

  体系越杂乱,耦合越严密,可保护性和水平拓展越艰难。必牛CRM事务掩盖短信、微信、买卖、数据剖析、智能终端等多个子体系,对吞吐量、并发、稳定性的恳求很高。原有体系中,各事务体系严密耦合是一个整体,现已很难满足水平拓展的恳求。依据事务拆分体系,SOA效劳化演变成体系晋级的阶段性方针。在SOA的完结上,必牛CRM挑选了Dubbo,Dubbo是一个分布式效劳结构,致力于供给高功能和通明化的RPC长途效劳调用计划,以及SOA效劳管理计划。其间心有些包含:

  长途通讯: 供给对依据长衔接的NIO结构笼统封装,包含多种线程模型,序列化,以及“恳求-呼应”形式的信息交流办法,比惯例HTTP等短衔接协议更快。

  集群容错: 供给依据接口办法的通明长途过程调用,包含多协议支撑,以及软负载均衡,失利容错,地址路由,动态装备等集群支撑。

  主动发现: 依据注册基地目录效劳,使效劳花费方能动态的查找效劳供给方,使地址通明,使效劳供给方能够滑润添加或减少机器。

  根底事务上,必牛CRM在Dubbo效劳结构上做了分布式缓存同步机制,保证用户和权限及时改写,为一切运用供给一致的用户效劳;运维布置上,完结了跨机房就近调用、高可用、监控的意图,也为体系继续集成打下了非常好的根底。

  7)监控和预警

  SaaS云效劳对运维提出了更高的恳求,由于必牛CRM体 系效劳的不仅是一个客户,而是不计其数的餐饮公司,体系每一次毛病中止,都也许导致餐厅的直接经济损失,进而危害必牛的品牌形象。在必牛,体系稳定性被定 义为最高优先级,是公司事务的柱石,要在疑问潜伏期提前发现,尽早处理。在运维环节,必牛自主开发和结合开源监控东西,7x24小时监控体系的各项功能目 标,当功能目标超出伐值时,体系主动报警,经过短信、邮件及时告诉运维基地,并做相应处理。

  三. SaaS云效劳的感悟

  SaaS的呈现,改动的不仅是软件体系架构,更多是公司效劳的思想办法。传统软件的商业形式中,咱们供给的仅仅是运用程序,用户去做运维、运用和学 习,本钱高、运维难、晋级难、无效劳、和用户无交流是一切公司软件很难改动的现状。在传统软件形式下,软件开发商体系不断晋级换代,但老用户却无法从中获 益。当用户呈现体系疑问或运用疑问时,软件公司无法疾速定位疑问、处理疑问。软件公司不敢面临客户,由于客户始终不满足,对体系不满足,对效劳不满足,用 户在不断的诉苦中忍受软件体系带来的各种“灾祸”。SaaS-软件即效劳,为咱们带来了新的思路,公司级商场中软件+效劳缺一不可。软件的改动在云端,跟 着疾速迭代的开发形式,用户不断享用无感知的体系晋级带来的盈利,经过产品运营和效劳体系,必牛将疾速帮助餐饮公司处理各种疑问,让公司用户用的定心、满 足。