为什么NoSQL反对移动应用程序的关系数据库

作者: Judy Howell
创建日期: 1 七月 2021
更新日期: 1 七月 2024
Anonim
Web Programming - Computer Science for Business Leaders 2016
视频: Web Programming - Computer Science for Business Leaders 2016

内容


带走:

移动应用行业是NoSQL可以带来多大好处的又一个迹象。

近年来,移动应用程序的开发开始腾飞。向智能手机和平板电脑的转变极大地推动了全球移动设备用户数量的增长。由于移动用户群体的不断增长,对移动应用程序的需求和期望也显着增长。为了使开发人员能够满足对移动应用程序的需求,简化开发过程以提高效率和减轻压力已变得越来越重要。在移动应用程序中使用NoSQL就可以做到这一点。 (在NoSQL 101中获得有关NoSQL的背景知识。)

为什么关系数据库不够好

关系数据库模型根本不能满足移动应用程序的动态需求。首先,传统的SQL数据库使用固定模式。这就产生了问题,因为对于移动应用程序,有许多情况要求。随着开发人员为他们的应用程序提出新的想法和功能,进行更改成为一项耗时的任务,因为必须对数据库架构进行不断的更改。

例如,假设开发人员正在创建类似于“愤怒的小鸟”的应用,其中不同类型的角色执行不同的操作。使用关系数据库时,除了要添加它们可以执行的字符或动作的类型外,还可能需要完全更改模式以适应更改。根据更改的大小,开发人员可能需要花费大量时间和精力。

关系数据库与移动应用程序有关的另一个问题是,它们不是为处理移动应用程序需要的所有不同用例而构建的。这些用例可以按照移动设备类型,操作系统,操作系统固件和位置进行细分。当您考虑由于用户运行过时的操作系统,旅行和许多其他情况而产生的不同组合时,这将变得更加复杂。即使是顽固的SQL支持者,也不得不承认关系数据库模型不太适合移动应用程序。

为什么NoSQL有效

NoSQL数据库旨在满足移动应用程序的动态需求。 NoSQL数据库不使用固定模式。因此,在上面使用的示例中,添加新字符不需要开发人员对数据库进行大幅更改。开发人员只是将其添加到数据库中,而不是更改现有模式。

我提到了移动应用程序必须解决的不同用例。这是使用NoSQL数据库时已解决的另一个问题。 NoSQL数据库处理移动用户的复杂用例的最好的例子之一是Foursquare。由于Foursquare是基于位置的,因此用户从查询中获得的结果甚至是他们可用的选项都将根据位置而有所不同。开源NoSQL数据库(例如MongoDB)的地理空间功能使开发人员可以轻松添加位置感知功能。


NoSQL解决的移动应用程序的另一个问题是需要不断更新。发布应用程序后,维护将成为主要考虑的问题。由于NoSQL是基于文档的,因此修复某些类型的错误和其他问题并不需要对数据库进行彻底的检查,因为开发人员所做的更改不一定会影响应用程序的所有其他方面。

最后,NoSQL以其可伸缩性而闻名。与关系数据库不同,NoSQL数据库向外扩展而不是垂直扩展。这很重要,因为随着应用程序用户群的增加,存储在数据库中的数据量也会随之增加。在开发应用程序之前制定增长策略很重要,因为担心应用程序发布后的数据约束会导致维护人员停机和用户烦恼。

没有错误,没有压力-在不破坏生活的情况下创建可改变生活的软件的分步指南

当没有人关心软件质量时,您就无法提高编程技能。

NoSQL的底线

移动应用行业是NoSQL可以带来多大好处的又一个迹象。考虑为未来的移动应用程序开发项目使用非关系数据库模型。 (有关其他内容,请查看《深入了解NoSQL概念》。)