公告推出 MongoDB 8.0,史上最快的 MongoDB! 阅读更多 >>推出 MongoDB 8.0,史上最快的 MongoDB! >>

Shutterfly通过在AWS上使用MongoDB Atlas将可扩展性和用户体验作为重点

Shutterfly Hero
简介

让数十亿张照片生动起来

Shutterfly 让数百万用户能够存储、欣赏和分享数十亿张照片。它帮助客户将心爱的照片变成获奖的相册、有意义的贺卡、富有创意的相册礼物、家居装饰、个人网站等更多产品。Shutterfly及其其他品牌Lifetouch、Snapfish、Tiny Prints和BorrowLenses共同产生大量新内容,需要存储并全天候实时编辑。
Shutterfly Brand
挑战

关系数据库:操作不灵活且扩展成本高昂

使用传统的数据库会导致瓶颈,且扩展成本高昂。由于需要处理如此多的数据,Shutterfly需要一个更有效的方式存储和分析数据。这就是为什么公司决定采用文档数据库的方法。

Shutterfly的首席数据库工程师Oleg Joukov解释说:“当比较关系数据库和NoSQL数据库时,脑海中会想到很多事情。MongoDB的两个主要特性是其模式灵活性和横向扩展的能力。”

MongoDB的文档模型允许开发人员以数据在脑海中呈现的方式存储数据,而不是尝试将其规范化为表格。基于其数据模型,NoSQL数据库有多种类型。它们提供灵活的模式,并能够轻松地处理大量数据和用户负载。

Joukov补充说:“在文档数据库(如MongoDB)中,你首先构建数据,随着应用程序的成熟,你会在数据库上使用查询,因此你构建数据库以支持这些查询。而在关系数据库世界中,你构建模式,然后基于模式构建查询,但你受限于模式的设置,且没有快速、简单或成本效益的方式去改变它。”

“在关系数据库世界中,你构建模式,然后基于模式构建查询,但你受限于模式的设置,且没有快速、简单或成本效益的方式去改变它。”

Oleg Joukov,Shutterfly的首席数据库工程师

解决方案

在几分钟内将其多TB数据集迁移到MongoDB Atlas

Shutterfly选择了在AWS上运行的MongoDB Atlas作为其文档数据库开发平台。它目前运行多个Atlas集群,每个集群大小可达6TB,每分钟处理数千笔交易。
Shutterfly OLEG

Oleg Joukov,Shutterfly的首席数据库工程师

Joukov说:“我们有一个数据中心,有多个五节点数据集,从1GB到10TB(未压缩数据大小)。我们在Atlas中创建了一个类似的结构,并使用MongoDB迁移工具移动数据。”

Shutterfly使用MongoDB的Mongomirror工具快速、安全地迁移数据。Mongomirror连接到现有的数据库,并将其与在Atlas中运行的集群同步,同时Shutterfly的应用程序仍能正常运行。“我们在几分钟内切换到Atlas,以最少的停机时间迁移了多TB数据集,”他补充道。

“我们在几分钟内切换到Atlas,以最少的停机时间迁移了多TB数据集。”

Oleg Joukov,Shutterfly的首席数据库工程师

建立在MongoDB和AWS之上的Shutterfly新平台现在每分钟处理数千个请求,并且能够轻松扩展以满足圣诞节和情人节等重要日期的季节性需求高峰。
结果

可扩展性、灵活性以及成本降低20%

Shutterfly客户现在可以即时、安全地访问他们的照片和项目,而Shutterfly则享受可扩展且成本效益的开发数据平台解决方案。

Shutterfly 正在利用 MongoDB 的扩展灵活性,轻松地在旺季增加 Atlas 集群的容量,然后在使用放缓时将其减少。因此,Joukov 和他的团队不再需要担心应对季节性需求。这使得他们能够将资源集中在更具战略性的任务上,同时与之前的数据基础设施相比,节省了高达 20% 的成本。

Atlas 还帮助 Shutterfly 快速推出新服务。“如果有新的项目需要更多资源,我们能够快速启动新环境,”Joukov 说。“如果我们想要克隆我们的环境,过去都是手动流程。如今,有了 Atlas,这变得非常简单,节省了大量时间和精力。”

“如果有新的项目需要更多资源,我们能够快速启动新环境。如果我们想要克隆我们的环境,过去都是手动流程。如今,有了 Atlas,这变得非常简单,节省了大量时间和精力。”

Oleg Joukov,Shutterfly的首席数据库工程师

MongoDB 还通过支持使用不同提供商的多云策略,帮助企业实现未来业务的安全。

“我们的一个未来项目是使用多租户环境为不同的合作伙伴提供服务,”Joukov 总结道。“MongoDB Atlas 被设计成可以在多个云提供商上运行,因此我们可以轻松满足这一要求。”

“我们的一个未来项目是使用多租户环境为不同的合作伙伴提供服务。MongoDB Atlas 被设计成可以在多个云提供商上运行,因此我们可以轻松满足这一要求。”

Oleg Joukov,Shutterfly的首席数据库工程师

你的故事将是什么呢?

MongoDB 将帮助你找到最佳解决方案。