17Media资料迁移:从MongoDB社群版到MongoD
本文章内容由「 MongoDB 」提供,经关键评论网媒体集团广编企划编审。
随着网路技术的提升,视讯直播已经成为网路社交娱乐的一种常态。因为视讯直播是最接近人类沟通的方式,易于使用、互动能力强、体验最好,所以拥有庞大的用户群。巨大的用户需求加剧了直播平台之间的竞争,为了增强竞争力,吸引更多的用户,各大直播平台想方设法提升自身服务品质,不仅要不断推出新的业务形式,还要大力借助 IT 技术的力量。
17 Media 是一家成立于 2015 年的台湾直播平台,其创始人是知名的歌手黄立成,因此在平台上入驻了很多明星主播,吸引不少用户,这让 17 Media 在直播这一热门领域具有较强的竞争力。截止目前,17 Media 平台全球注册用户已超过 4,000 万。
网路直播具有鲜明的特点,除了需要有强大的影音串流技术支撑外, 还要具备管理用户、朋友、留言、评论、通路、付款、关係、排名、活动等社交媒体内容的能力,可以说直播是互联网行业发展至今携带资讯量最大的沟通平台。为了应对巨量资讯的储存问题,17 Media 选择了不同的资料库,来处理视讯和社交两种不同特性的资料。同时,考虑到自身平台高频率的明星效应,对资料库的巨大吞吐量也必须有较高的要求,因此 17 Media 一开始就选择了具有高扩展性、低延迟性的 MongoDB,作为其影音串流之外的资料储存方案。

17 Media 的主要市场是台湾和已开发亚洲国家,而他们基于云端资料中心主要在美国俄勒冈州,当前的资料中心在资料传输过程中存在着一定延迟,对 17 Media 的直播业务造成了影响。你可以想像,当粉丝满心欢喜地为喜爱的主播发送礼物后,几秒钟都没能得到回应,这对直播平台的用户来说,是多幺难以接受的一件事,平台有可能因此流失大量用户。
为改善这种情况,17 Media 决定将其资料运行环境,迁移到更能满足业务需求的另一个云端运算平台上。但是资料迁移并不是一件简单的事,需要做好全面準备才能确保迁移成功。因此,17 Media 面临着许多问题:
● 首先,从一个云平台迁移另一个云平台,不同品牌的云迁移,其基础架构大相径庭,如何确保资料的一致性、确保平台的兼容性?
● 其次,TB 级别的资料迁移工作,如何确保资料的完整性,在传输过程中不会丢失?
● 第三,迁移过程中如何避免宕机事件的发生?如何将迁移时间控制在 3 小时之内?如何确保应用无缝迁移,不会对业务造成影响,并且让用户无感知?
● 最后,当前 MongoDB 社群版, 由 17 Media 自己非资料专业的运维人员管理,难免造成疏漏;这给运维人员造成不小的压力,迁移后的方案必需要有自动管理的能力。
综合考虑迁移所面临众多挑战, 以及用户分布于全球的情况,17 Media 选择了 MongoDB Atlas 作为其数据库服务资料迁移的解决方案。
为何选择 MongoDB Atlas: 完全託管、支持全球部署MongoDB 是可以应用于各种规模企业、各类行业以及多种应用程序的开源资料库,是专为高扩展性、高性能和高可用性的业务要求而设计的资料库。MongoDB Atlas 是 MongoDB 提供的云端资料库服务,自 2016 年推出后,Atlas 以其自助服务按需付费、支持 50 多个全球区域、轻鬆自动配置的特性、支持多个公共云、资安最佳实践、自动备份和回复,受到众多客户所青睐。
此次,17 Media 选择将 MongoDB 社群版 迁移到云端的 MongoDB Atlas 上,一方面是基于在迁移过程中保证资料的一致性;另一方面,Atlas 可同时支援多个主流云平台,再结合 MongoDB 专家团队协助17 Media 业务架构的规划,让 17 Media 可以忽略平台差异化的问题, 使迁移工作得以顺利进行。
在迁移过程中,针对历史资料,即封闭的资料集群,客户可以利用 MongoDB 工具,以秒级的速度从源资料集群迁移到目标的 Atlas 集群中。
此外,为了保证 Atlas 集群能实时同步到最新资料,以确保资料的完整性,MongoDB 在源资料集群与 Atlas 集群之间建立一个通道,可以捕捉在资料备份与回复期间产生的新资料, 并实时传输到 Atlas 中,前后相差只有一、两秒钟,避免丢失资料。
最终,利用 MongoDB 的迁移方案,实现了跨平台资料的无缝迁移。
迁移后的成效:从开源 MongoDB 到 Atlas, 用户体验与工作效率双提升MongoDB 具备大规模表单的资料处理能力,当资料超过一定的量时,MongoDB 可以轻鬆实现资料库的分片和分割,提高资料处理速度;其基于位置的资料查询,可以快速、精确地从指定位置获取资料、缩短查询时间,足以满足 17 Media 在维护与追蹤人与人的关係时,对速度的要求。
同时,基于云端的 MongoDB Atlas在业务高峰期可以自动扩展,非常适合 17 Media ,在因明星主播而引起的瞬时高峰流量期间,可以给用户提供更好的体验;而且,从 AWS 的MongoDB 社群版迁移到 MongoDB Atlas 之后,原来对资料库的部署、灾备、备份、监控等运维工作,就全部交由 MongoDB 的专业团队维护,不但确保了资料库的稳定性之外,还释出了 17 Media 运维人员的时间,让其可以更注于关键业务的发展。
未来,为了方便用户将资料从 MongoDB 社群版顺利迁移到 MongoDB Atlas 上,MongoDB 将会增加 Mongomirror 对分片集群的支持;17 Media 也表示会时刻关注 MongoDB Atlas 的最新功能, 以便将最新的技术应用运用到未来业务中,为 17 Media 的长期发展提供强而有力的技术支持。
关于MongoDB作为全球领先的现代通用资料库平台,MongoDB 旨在帮助开发人员及其所构建的应用,充分发挥软体和资料的力量。MongoDB 总部设在纽约,在全球 100 多个国家拥有 13,000 余个客户。MongoDB 数据库平台已提供 6,000 多万次下载服务、100 多万个 MongoDB 大学注册。在 Forrest Wave 2019 年第二季度资料库即服务象限中,MongoDB 被评为领导者。更多资讯,请访问 www.mongodb.com。
* MongoDB已在台北设立分公司,可为广大客户提供更好的支持与服务。欢迎与我们联繫:
公司地址:台北市信义区信义路四段 460 号 18 楼
公司电话:02-8729-1148