依赖云存储中数据的应用程序不必每天保持最新状态。想想社交媒体应用。这些是“实时”数据,例如新帖子或照片上传,但大多数数据(例如帐户信息,用户个人资料和您上学的地方)不需要不断更新。在游戏应用程序中,有大量的实时数据,例如您在地图上的当前位置(不断变化),但是您的信用卡号可能会保持不变。不断更新移动或Web应用程序的所有数据没有任何意义,而仅消耗不必要的资源。

AWS AppSync是一种同步Web或移动应用程序中使用的数据的方法,允许开发人员选择应实时同步哪些数据。

AppSync依赖于最初由Facebook开发的GraphQL进行数据同步。它旨在帮助可能需要从云中的不同来源提取数据,然后在应用程序内快速有效执行功能的开发人员。它也是高度安全的,因此即使一个应用程序正在从多个数据源进行同步,并且开发人员正在选择该应用程序的哪些部分可以使用或不使用实时数据,这些数据仍然受到保护。

如前所述,应用程序开发服务面向需要处理大量实时数据并将这些数据同步到应用程序的用户。然而,他们还需要能够决定哪些数据不需要实时同步。开发人员可以创建复杂的查询,这些查询使用云数据库并聚合数据,或者做出复杂的决定来从多个源进行分析,处理或操纵。

这样做的好处是,您可以轻松扩展应用程序并为您的应用程序使用多个Amazon服务,而不受IT基础架构或数据所处位置的限制(如果需要实时处理所有数据)。

另一个优点是,它可以处理一段时间内处于脱机状态的数据。例如,在游戏应用程序中,开发人员可以同步实时数据,还可以协调最终用户继续使用游戏时发生的情况,并在不再连接到Internet时获得很高的分数。一旦用户再次建立连接,AppSync便可以同步脱机数据,而不必同步整个数据集。这降低了带宽要求,并加快了Web或移动应用程序的数据同步。

使用AWS Appsync的示例

一个使用AWS AppSync的示例是一个大数据项目。通常,例如,在一所大型大学的研究项目中,数据源分布广泛。对于分析新道路建设的项目,可能会有与苏黎世材料研究相关的数据以及慕尼黑实验室的环境数据,但应用程序开发团队位于芝加哥。

过去,为应用程序同步所有这些数据,并确定哪些数据是关键任务且本质上必须是实时的,以及哪些数据可以长期存储而不同步,这是一项艰巨的任务。它通常需要多种云服务的组合以及一种手动同步所有数据源的方法。但是,AWS AppSync提供了一个控制台,以便开发人员可以了解他们的API以及数据发生的情况。

实际使用中的AWS AppSync的另一个示例是,当开发人员创建一个智能家居应用程序时,该应用程序可以监视家居安全性和安全性问题。

可能会安装传感器来检测漏水,寻找入侵者并监控深夜是否突然打开了窗户。该事(或物联网)的互联网是已经允许开发者创建统一丰富的应用程序和团结,这些差异的传感器呈现什么是在家里发生的事情一清二楚的概念。

您可以想象,拉取和监视此传感器数据是一项艰巨的任务。一个应用可能有成千上万的数据请求-例如,每次有人开门或传感器检测到移动的物体时。在已连接的家庭应用中,某些数据可以处于静止状态,不需要同步。借助AWS AppSync,开发人员可以决定如何在应用程序内实时同步数据以及数据的实时变化,不仅适用于可能安装在智能家居中的数十个传感器,还适用于成百上千的客户。

最后,这是提供的灵活性,这对于开发人员创建丰富的应用程序至关重要,该应用程序使用来自全球不同来源的多个数据集。