针对云原生转型的6个关键数据策略

简介:
如今,许多组织正在将采用云原生平台作为其数字转型战略。云原生允许企业以更灵活的方式提供快速响应、用户友好的应用程序。但是,支持云原生转换的数据体系结构常常被忽略,希望它会自行处理。随着数据成为每个组织的信息货币,企业如何在云计算转型过程中避免常见的数据错误?在构建云原生应用程序时,应该知道哪些数据问题?如何从数据中获得有价值的见解?

以下将阐述企业在向云原生转型过渡时必须考虑的六个关键因素:

(1)放弃面向服务体系结构(SOA),采用微服务

尽管仍有许多遗留应用程序仍然是基于面向服务体系结构(SOA)的,但架构思维已经发生了变化,并且微服务获得了广泛的普及。开发人员可以通过创建许多协同工作的独立服务来获得许多益处,而不是构建单一应用程序。微服务架构在应用程序开发和简单的代码库中提供更高的灵活性。可以独立地实现更新和扩展服务,其服务可以采用不同的语言编写,并连接到不同的数据层和选择的平台。这种策略允许开发人员和运营人员以更加和谐的方式一起工作。这种组件化架构需要一个数据库平台,可以轻松支持不同的数据类型、结构和编程语言。

(2)12-Factor App和云原生微服务

“十二要素应用程序”(12-Factor App)是一套帮助组织构建云原生应用程序的规则和准则。它是一个很好的起点,但是在数据平台方面,有几个因素(第4个和第5个)需要进一步检查。

第4个因素:将支持服务视为附加资源:这里的“支持服务”大部分是指数据库和数据存储。这意味着微服务需要模式和底层数据存储的专用单一所有权。

第5个因素:严格分离构建和运行阶段,单独的构建和运行阶段意味着应用程序应该作为一个更多的无状态进程执行,并且状态通常被加载到后台服务上。这进一步意味着数据库和数据存储应该是有状态的服务。

(3)持续集成/持续交付

服务流程的扩散(每个服务可独立部署)需要自动部署和回滚机制,这称之为持续集成或持续交付(CI/CD)。实际上,如果没有成熟的CI/CD功能,微服务的价值就无法完全实现。请注意,这种瞬态架构意味着数据库实例也将是短暂的,并且它们还必须能够根据需要轻松启动。借助正确的云原生平台和支持数据平台,微服务变得易于部署。云原生平台应处理对其运行的服务的管理,并且数据库应处理数据扩展和监视,在必要事件中添加碎片,重新平衡、重定位或故障转移。组合的数据库和云原生解决方案减轻了监控数据库和平台的运营负担,使企业可以花更多时间来开发和部署优质软件。

(4)多云部署模型的重要性

如今的企业采用多云策略是出于多种原因:准备灾难恢复情况,利用不同云计算基础设施中托管应用程序之间的财务差异,增强安全性,或简单地避免供应商锁定。企业的应用程序代码应该独立于预期运行的平台。

(5)整体与非整体

数据访问和数据移动的传统方法是令人望而却步的。传统方法涉及在其他运营数据存储和数据仓库/数据湖中的主数据存储中创建数据的副本,其中数据在数小时或数天后更新,通常是批量更新。由于组织采用微服务和设计模式,数据在不同类型的数据存储中传输的延迟阻碍了敏捷性,并阻止组织推进其业务计划。

随着采用扼杀模式逐渐将单一应用程序迁移到微服务架构,逐渐用新的应用程序和服务取代特定的功能。这意味着关联的数据存储也需要进行分区和组件化,这意味着每个微服务都可以拥有自己的关联数据存储/数据库。

从数据角度来看,这意味着:

•随着每个微服务的增加,数据库实例的数量也随之增加,而再次指向需求上升或下降。

•为了使这些微服务彼此进行通信,需要调用额外的HTTP,比如便于使用的REST API,这些都需要在任何平台和语言中灵活扩展。在许多情况下,微服务只是发布指示更改的事件,而监听器/订阅者更新关联的应用程序。

(6)云原生数据库的基本要求

亚毫秒级响应时间仅供少数特殊应用使用。但是,在当今微服务架构的世界中,这是所有应用程序的必备条件。这个延迟要求需要最高性能、最具可扩展性的数据库解决方案。

Active-Active数据复制

批处理模式下的数据复制曾经是一种流行的方法。但对于实时应用程序来说,事件存储和事件采购的复制变得更具吸引力。在松散耦合且需要共享数据的微服务应用程序中,需要具有可调一致性的Active-Active数据复制。许多客户使用Active-Active部署模型的原因很多,例如:

•正在不断更新的微服务中的共享数据集。

•跨数据中心无缝迁移数据,以便用户体验不受影响。

•减少故障情况并把故障切换到第二个数据中心,以最大限度地减少停机时间。

•处理大量传入流量并通过无缝同步在多台服务器上分配负载。

•地理位置分散的应用程序(如多人游戏或实时竞价/轮询应用),数据需要在多个地理位置之间同步。

数据的高可用性

当企业将一个巨大的应用程序分解成微服务,并且每个微服务都有自己的生命周期时,如何确保数据可用性?云原生应用程序开发人员应该根据恢复点目标(将丢失多少数据?)选择数据存储恢复时间目标(当事件发生时,需要多长时间才能恢复服务?)、高可用性特性、安装拓扑结构和故障转移策略。单节点数据库实例不仅影响故障情况,还会影响客户端宕机事件(如版本升级)影响可用性。

高可用性要求通常取决于应用程序的关键程度,但正确的数据库和云原生让解决方案的组合支持各种高可用性安装策略,适用于从内部部署到关键任务应用程序的各种用例。


原文发布时间为:2018-05-22

本文作者:Priya Balakrishnan

本文来自云栖社区合作伙伴“企业网D1Net”,了解相关信息可以关注“企业网D1Net”。

相关文章
|
4月前
|
运维 监控 Cloud Native
从“守机器”到“写策略”——云原生架构把运维逼成了架构师
从“守机器”到“写策略”——云原生架构把运维逼成了架构师
88 1
|
存储 人工智能 Cloud Native
云栖重磅|从数据到智能:Data+AI驱动的云原生数据库
在9月20日2024云栖大会上,阿里云智能集团副总裁,数据库产品事业部负责人,ACM、CCF、IEEE会士(Fellow)李飞飞发表《从数据到智能:Data+AI驱动的云原生数据库》主题演讲。他表示,数据是生成式AI的核心资产,大模型时代的数据管理系统需具备多模处理和实时分析能力。阿里云瑶池将数据+AI全面融合,构建一站式多模数据管理平台,以数据驱动决策与创新,为用户提供像“搭积木”一样易用、好用、高可用的使用体验。
云栖重磅|从数据到智能:Data+AI驱动的云原生数据库
|
5月前
|
人工智能 负载均衡 Cloud Native
云原生之负载均衡策略
ai必学之负载均衡 @[TOC]轮询处理;weight权重;ip_hash
|
12月前
|
消息中间件 存储 Cloud Native
云原生架构下的数据一致性挑战与应对策略####
本文探讨了在云原生环境中,面对微服务架构的广泛应用,数据一致性问题成为系统设计的核心挑战之一。通过分析云原生环境的特点,阐述了数据不一致性的常见场景及其对业务的影响,并深入讨论了解决这些问题的策略,包括采用分布式事务、事件驱动架构、补偿机制以及利用云平台提供的托管服务等。文章旨在为开发者提供一套系统性的解决方案框架,以应对在动态、分布式的云原生应用中保持数据一致性的复杂性。 ####
|
9月前
|
人工智能 关系型数据库 分布式数据库
阿里云PolarDB重磅发布云原生与Data+AI新特性,打造智能时代数据引擎
阿里云PolarDB重磅发布云原生与Data+AI新特性,打造智能时代数据引擎
504 0
|
12月前
|
Cloud Native 持续交付 云计算
云计算的转型之路:探索云原生架构的崛起与实践####
随着企业数字化转型加速,云原生架构以其高效性、灵活性和可扩展性成为现代IT基础设施的核心。本文深入探讨了云原生技术的关键要素,包括容器化、微服务、持续集成/持续部署(CI/CD)及无服务器架构等,并通过案例分析展示了这些技术如何助力企业实现敏捷开发、快速迭代和资源优化。通过剖析典型企业的转型经历,揭示云原生架构在应对市场变化、提升业务竞争力方面的巨大潜力。 ####
267 27
|
12月前
|
Cloud Native 持续交付 云计算
云原生技术在现代IT架构中的转型力量####
本文深入剖析了云原生技术的精髓,探讨其在现代IT架构转型中的关键作用与实践路径。通过具体案例分析,展示了云原生如何赋能企业实现更高效的资源利用、更快的迭代速度以及更强的系统稳定性,为读者提供了一套可借鉴的实施框架与策略。 ####
140 20
|
12月前
|
消息中间件 运维 Cloud Native
云原生架构下的微服务优化策略####
本文深入探讨了云原生环境下微服务架构的优化路径,针对服务拆分、通信效率、资源管理及自动化运维等核心环节提出了具体的优化策略。通过案例分析与最佳实践分享,旨在为开发者提供一套系统性的解决方案,以应对日益复杂的业务需求和快速变化的技术挑战,助力企业在云端实现更高效、更稳定的服务部署与运营。 ####
|
12月前
|
Cloud Native 安全 API
云原生架构下的微服务治理策略与实践####
—透过云原生的棱镜,探索微服务架构下的挑战与应对之道 本文旨在探讨云原生环境下,微服务架构所面临的关键挑战及有效的治理策略。随着云计算技术的深入发展,越来越多的企业选择采用云原生架构来构建和部署其应用程序,以期获得更高的灵活性、可扩展性和效率。然而,微服务架构的复杂性也带来了服务发现、负载均衡、故障恢复等一系列治理难题。本文将深入分析这些问题,并提出一套基于云原生技术栈的微服务治理框架,包括服务网格的应用、API网关的集成、以及动态配置管理等关键方面,旨在为企业实现高效、稳定的微服务架构提供参考路径。 ####
198 5
|
12月前
|
Kubernetes 负载均衡 Cloud Native
云原生架构下的微服务治理策略
随着云原生技术的不断成熟,微服务架构已成为现代应用开发的主流选择。本文探讨了在云原生环境下实施微服务治理的策略和方法,重点分析了服务发现、负载均衡、故障恢复和配置管理等关键技术点,以及如何利用Kubernetes等容器编排工具来优化微服务的部署和管理。文章旨在为开发者提供一套实用的微服务治理框架,帮助其在复杂的云环境中构建高效、可靠的分布式系统。
139 5

热门文章

最新文章