{
    "componentChunkName": "component---src-templates-blog-blog-detail-tsx",
    "path": "/blog/tidb-in-sypm",
    "result": {"pageContext":{"blog":{"id":"Blogs_508","title":"漱玉平民大药房：多元化药店变革的前夜","tags":["TiDB"],"category":{"name":"案例实践"},"summary":"本文介绍了漱玉平民大药房在药品零售领域的数字化转型和发展历程。通过技术创新，漱玉平民建设了覆盖医药全生命周期的大健康生态圈，采用混合云架构和国产分布式数据库 TiDB，应对庞大的会员数据处理需求，实现了精准营销、高并发处理等目标。","body":"> 以下文章来源于至顶头条，作者 | 王聪彬，编辑 | 舞春秋\n\n漱玉平民对于数字化建设非常重视，一步步通过技术创新，推动客户服务，构建起覆盖“医、药、康、养”全生命周期的大健康生态圈。\n\n20 多年来，我国的零售药店发展可谓迅猛，成为了社会基层提供药学服务、保障药品供应的终端。  \n\n2022 年是药品零售行业近年来增速最快的一年，据统计，2022 年中国零售药店市场销售额达到 5421 亿元，同比增长高达 10.2%。国家药品监督管理局信息中心数据显示，截至 2022 年底，我国药店总数为 62.33 万家，连锁门店数量为 36 万家，药店连锁化率为 57.76%。  \n\n其实在过去三年中，连锁门店在疫情防控药品供应保障中发挥了积极作用。同样是 2022 年，正值疫情的高发阶段，作为零售药店的一员漱玉平民大药房做了一个决定，向济南市民免费赠送 600 万片布洛芬，共渡难关。也正是这一举动很大程度缓解了当时市民购药、囤药的焦虑。  \n\n20 年前，2002 年 5 月 18 日，漱玉平民大药房第一家门店在山东济南西门店正式开业，正式进军中国医药零售领域。2021 年 7 月 5 日，漱玉平民大药房连锁股份有限公司在深圳证券交易所创业板成功上市。  \n\n21 年后的今天，截至 2023 年 3 月，漱玉平民拥有门店 6041 家，其中直营门店 3620 家，加盟门店 2421 家，营销网络覆盖山东省、辽宁省、福建省、河南省及甘肃省等地区。总会员人数已超过 2000 万人，2022 年度公司销售额已超过 83 亿元。  \n\n随着医药零售行业的不断发展与成熟，零售药房比的已不是价格，而是专业化和多元化。业内人士也称，未来的药店将不再是简单买卖药品的地方，而是以买卖药品为引流手段和增加黏性服务，提供轻诊疗、心理咨询等简单医疗服务，满足健康生态和消费者健康新需求，不断提升以顾客为中心的线上线下综合服务能力。  \n\n漱玉平民也在不断开发并完善基于全渠道、多元化、全家庭的商品体系，实现多元化商品布局。同时依据顾客需求，通过制订标准化的运营体系，加强不同商圈门店的商品精细化管理，提升门店商品效益和门店精细化运营。  \n\n漱玉平民大药房连锁股份有限公司副总裁兼 CIO 颜正耀深有体会，他提到漱玉平民在业务上面临两个非常大的挑战，连锁企业有着直营、并购、加盟、联盟“四驾马车”，这是规模化的挑战，另一大挑战就是泛会员化带来的挑战。  \n\n这里就不得不提漱玉平民对于数字化建设的重视，一步步通过技术创新，推动客户服务，构建起覆盖“医、药、康、养”全生命周期的大健康生态圈。  \n\n## 从 CRM 到混合云再到数据库\n\n漱玉平民一直坚定不移地推行数字化战略转型，利用数智化管理工具提升管理效率、优化业务布局，助力公司数字化基础建设。\n漱玉平民建设了 ERP（企业资源管理）、业财一体化、CRM（客户关系管理）三大核心系统，针对泛会员化问题，漱玉平民需要一个强大的 CRM，并且进一步和新零售结合。  \n\n新零售可以说重新定义了人货场，随着新零售业务的快速发展，漱玉平民将客户划分为公域、半公域、私域三类会员，公域会员通过 O2O、B2C 等途径接入，半公域会员通过企业微信、公众号等渠道接入，通过转化最终成为私域会员。  \n\n医药零售最近几年谈的最多的就是精准营销、千人千面、标签化运营。漱玉大药房 CRM 研发负责人吴绍辰开玩笑的说，有些行业是没法对顾客说欢迎下次光临的，所以就需要通过数字化的手段促进顾客的复购，像在“货”上增加运维服务，在“场”上接入直播等。  \n\n![漱玉大药房 CRM 研发负责人吴绍辰.jpeg](https://img1.www.pingcap.com/prod/CRM_6196b5b40e.jpeg)\n漱玉大药房 CRM 研发负责人吴绍辰  \n\n这个过程带来的是数据量的日渐庞大，并且增速飞快，这为当时漱玉平民的 CRM 带来了很大的冲击。  \n\n漱玉平民曾经也使用过几种商业版本的 CRM，但随着上市，业务不断向全国扩张，也带来了各种差异化需求，2021 年开始了自研的道路简化服务管理。漱玉平民选择的是谷歌的 Kubernetes 架构，Kubernetes 这种微服务架构需要大量的服务器，所以混合云也成了发展方向。  \n\n漱玉平民与中国移动共同建设了云上云下大二层打通的混合云架构，并在济南、上海、北京分别进行了移动云专有机房建设，确保核心数据本地化存储、应用及计算节点云上云下容器化混合编排，实现了故障恢复时间目标小于 5 分钟。  \n\n目前，公司数字化中心已具备 10 分钟内实现万台服务器集群资源拉起及弹性调整能力，在 2022 年很好的保障了“济南市孕妇网上预约赠药”、“漳州市发热药品预约”等大并发项目的实现。  \n\n有了 CRM 和混合云的基础，漱玉平民也开始进行架构重构，建设一个可以支撑 CRM 的数据库。吴绍辰描述了漱玉平民的服务流程，顾客进店通过表征描述，店员会推荐药物，以及联合用药进行补充；对于顾客针对性的购药需求，店员会针对其并发症给予推荐；在结账时通知店员会顾客活动方案；订单完成后通过企业微信或公号会推送用药提醒和跟踪；最后结合门店 SKU 和订单给会员打标签，多维度交叉分析。  \n\n“这一系列过程中的计算逻辑是非常庞大的，需要一个可伸缩、可持续的数据库做支撑，完成实时的数据分析，达到精准营销，智能推荐，实现复购。”  \n\n2022 年，漱玉平民与中国移动、PingCAP 合作，完成了 CRM 系统核心数据库的更换，从中小型数据库升级到跨移动云专有机房的分布式数据库，使漱玉平民拥有亚秒级处理亿级会员数据的能力，这也将为未来规模发展提供有力保障。\n\n## 财富式建设数据库\n\n在数据库切换时，漱玉平民提出了 4 个十字需求，第一是“账务不能错，数据不能丢”。会员积分可以抵扣现今，所以账务不能出错，之后就是数据一条不能差。  \n\n第二是“系统不能停，应用可逃生”。因为漱玉平民有 10%的门店是 24 小时营业，同时采用分布式数据库，如果有问题还要能切回 MySQL，所以在两者的切换上也经过了不下 20 次反复测试。  \n\n第三是“连机不能慢，实时可查询”。一个顾客从进药店到消费整结束，整个消费窗口期大约在 5 分钟，在这 5 分钟内，漱玉平民要分析顾客的需求，更合理更精准的推荐药品，通过自研收款加单系统，店员可以通过系统实时计算标签，精准定位顾客的需求，是否需要关联用药，增加顾客黏性。  \n\n第四是“数据易迁移，整体易运维”。必须是容易迁移，不能操作复杂，运维通过 Kubernetes 进行，实现自动扩缩容等。  \n\n其实最早漱玉平民对分布式数据库是抱有怀疑态度，2021 年也尝试过分库分表的方式，但是最后也面临瓶颈问题。在数据库的建设上漱玉平民希望是财富式建设，也就是一次建设之后可能为未来十年，甚至二十年持续服务。  \n\n为什么选择 TiDB？这其中移动云起到了很大作用，三年前移动云与 PinCAP 成立了联合实验室，并在移动云上线了 TiDB 数据库服务，顺理成章移动云也把 TiDB 推荐给了漱玉平民。中移（苏州）软件研发公司云原生数据库研发负责人薛港表示，移动云在内部打磨过 TiDB，拥有完备的解决方案，而且还有一支专业的 TiDB 数据库团队进行支撑。  \n\nTiDB 作为国产分布式数据库的代表，其可以支撑金融机构海量数据的在线交易和实时分析，满足金融级数据库的各项要求。2022 年漱玉平民也开始对 TiDB 进行考察，看了产品预演、调研、测试、系统调优等。  \n\n吴绍辰看到 TiDB 在数据量、高并发，以及 HTAP 上的支撑能力，这些都与漱玉平民的痛点相契合，认为 TiDB 是现在碰到问题的最好的解法，开始使用 TiDB 支撑 CRM 系统的改造。  \n\n经过前期所有环节的测试，整体切换定在今年 3 月 17 日，凌晨 2 点，通过更改配置，重启 Kubernetes 所有节点，整体切换用时不到半小时。  \n\n切换后，所有的运维都是可视化的，分布式数据库和混合云架构也更加契合，同时在也太复杂的情况下让成本核算更加容易。在 518 漱玉平民周年店庆活动，TiDB 完美的解决了高并发，高可用的情况。  \n\n漱玉平民在未来的规划上，第一，会考虑解决传统零售业态的多元化发展，真正达到数据库层级的多租户，而非通过软件控制；第二，三方讲一起打造实现一键部署；第三，在各类数据库里做到易迁移；第四，在数据分析领域得到提升，模型化建设。\n\n“实时、进化、开放、领先”是漱玉平民科技团队提出的四个关键词，现在很多传统行业还停留在报表时代，漱玉平民要结合更多行业的创新思维，通过数字化转型决策未来。","date":"2023-08-17","author":"王聪彬","fillInMethod":"writeDirectly","customUrl":"tidb-in-sypm","file":null,"relatedBlogs":[]}}},
    "staticQueryHashes": ["1327623483","1820662718","3081853212","3430003955","3649515864","4265596160","63159454"]}