Media数据迁移:从自管理MongoDB到MongoDB Atlas,用户体验与工作效率双提
随着网络技术的提升,视频直播已经成为了 互联网 的一种常态。因为视频直播最接近人类沟通方式,易于使用、交互能力强、体验最好,所以拥有庞大的用户群。巨大的用户需求加剧了直播平台之间的竞争,为了增强竞争力,吸引更多的用户,各大直播平台想方设法提升自身服务质量,不仅要不断推出新的业务形式,还要大力借助IT技术的力量。
17 Media是成立于 2015 年的一家台湾直播平台。由于其创始人是著名的音乐明星黄立成,也注定了其平台之上将会入驻更多明星主播,吸引更多用户,这让17 Media在直播这一热门领域具有较强的竞争力。截止目前,17 Media平台全球注册用户已经超过 4000 万。
视频直播类业务具有鲜明的特点,企业除了需要有强大的视频流技术支撑外,还要具备管理用户、朋友、留言、评论、渠道、付款、关系、排名、活动等 社交 媒体 内容的能力,可以说直播是互联网行业发展至今携带信息量最大的沟通平台。为了应对巨量信息的存储问题, 17 Media选择了不同的数据库,来处理视频和社交两种不同特性的数据。同时,考虑到自身平台高频的明星效应,对数据库的巨大吞吐量提出了较高的要求,因此17 Media一开始就选择了具有高扩展性、低延迟性的MongoDB作为其视频流之外内容的主要存储方案。
17 Media为何需要迁移:用户体验需要进一步提升
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以其按需付费、自动备份和恢复、轻松扩缩容的特性,受到众多客户所青睐。
此次,17 Media选择将自管理的MongoDB迁移到云端的MongoDB Atlas上,一方面,同一品牌的数据库迁移,可以保证数据的一致性;另一方面,Atlas可以同时支持多个主流云平台,再结合MongoDB专家团队协助17 Media对业务架构进行规划,让17 Media可以忽略平台的差异化问题,使迁移工作得以顺利进行。
在迁移过程中,针对历史积累的存量数据,即封闭的数据集群,客户可以利用MongoDB的备份与恢复工具,以秒级的速度从源数据集群迁移到目标的Atlas集群中。
此外,为了确保Atlas集群能实时同步到最新数据,MongoDB在源数据集群与Atlas集群之间建立了一个通道,可以捕捉在数据备份与恢复期间产生的新数据,实时传输到Atlas中,前后相差只有一、两秒钟,避免了数据的丢失。
最终,利用MongoDB的迁移方案,17 Media 的TB级别的数据,在 2 小时之内就完成了传输;而且迁移过程中只在执行DNS交换机时,进行了极短时间的停机,实现了跨平台数据的无缝迁移。
迁移后的成效:从开源MongoDB到MongoDB Atlas,用户体验与工作效率双提升
“整个业务应用和数据的迁移,用户完全无感知,对17 Media的业务完全无影响。通过将数据迁移到云端的Atlas,繁琐的数据库管理工作完全交由MongoDB进行,减轻了运维人员的负担,提高了工作效率。Atlas的资源自动调度功能,提高了 17 Media的资源利用率,再加上云端按需付费模式,双重作用下,帮助17 Media节省了大量的成本开支,” 17 Media 资深产品 科技 副总裁李昀樵表示。
MongoDB具备大规模表单数据处理能力,当数据超过一定量时,MongoDB可以轻松实现数据库的分片和分割,提高数据处理速度;其基于位置的数据查询,可以快速、精确的从指定位置获取数据,缩短查询时间,足以满足17 Media在维护、追踪平台上人与人之间的关系时,对速度的要求。
同时,基于云端的MongoDB Atlas,在业务高峰期可以自动扩展,非常适合17 Media,在因明星主播而引起的瞬时高峰流量期间,可以给用户提供更好的体验;而且,从自管理MongoDB迁移到MongoDB Atlas之后,原来对数据库的部署、容灾、备份、监控等运维工作,可以由MongoDB的专业团队维护,不但确保了数据库的稳定,还释放了17 Media运维人员的时间,让其可以更注于关键业务的发展。
未来,为了方便用户将数据从自管理的MongoDB顺利迁移到MongoDB Atlas上,MongoDB将会增加Mongomirror对分片集群的支持;17 Media也表示会时刻关注MongoDB Atlas的最新功能,以便将最新的技术应用到未来业务中,为17 Media的长期发展提供强有力的技术支持。