13

从本地迁移到云的四个主要挑战

 3 years ago
source link: https://mp.weixin.qq.com/s?__biz=MzI5ODQ2MzI3NQ%3D%3D&%3Bmid=2247495312&%3Bidx=1&%3Bsn=6a0706de932337cd462308fc1fe9fb95
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

据统计,截至2020年,已有83%的企业将工作负载运行在云中

越来越多的企业认识到在云中部署工作负载的重要性,并将应用程序从本地迁移到云。云平台的动态性质,使得组织在适应不断变化的需求中要扩展基础架构以成为一个相对轻松的过程。

组织在将应用程序和数据从内部部署迁移到云时,会面临着许多挑战,包括控制成本,挑选正确的架构, 和平缓的学习曲线。因此,确保从规划、评估和迁移的每个步骤都由经过认证的云专家或服务提供商执行,是至关重要的。

以下是,从本地迁移到云的四个主要挑战:

挑战1 -重新设计数据模型

不同类型的数据存储支持不同类型的架构。当所有数据模型随时间变化时,保持连续数据同步至关重要。

AWS Redshift  支持PostgreSQL, 而Big Query使用 STRING 、 RECORD(半结构化对象)和REPE AT ED(数组)类型。Azure提供了SQL,MySQL,PostgreSQL和MariaDB。

除此之外,还有一组完全不支持的特定数据类型(BLOB,地理坐标等)。相比在分布式服务器上存储的表上运行  JOINS , 增加用于保持数据更新所需的存储空间并不昂贵, 并且可以提供更好的性能。

要解决这些差异,仅调整一次数据模型是不够的。当两个数据模型随时间变化时,保持连续同步至关重要 。

挑战2 –安全

分配所有需要访问云资源的组和角色,并相应地计划和实施安全策略。

如果正确配置和检查,这将是成功迁移的又一重大保障。

如果组织决定开始将应用程序和数据从内部部署迁移到云,当安全就变得至关重要。在这个阶段, 权限可能变得难以处理–分配所有需要访问云资源的组和角色,并相应地计划和实施安全策略。

诸如 Azure  云厂商,为了让客户信任他们的数据安全性,云服务提供商必须满足医疗保健,金融和政府机构等制定的行业最高安全标准。当在已经通过认证的IT基础架构上运行时,这会使获得SOC2,ISO27001,HIPAA和PCI等认证变得更加容易。

除此之外,身份验证,授权,日志记录和审核需要跨所有云平台集成。网络,应用程序防火墙,DDOS保护和身份管理等安全措施要具备标准化,要经过测试并可用于安装和配置。

挑战3:优化连接数据存储的接口

另一个障碍是:优化连接数据存储的接口,还要执行更严格的测试。

另一个障碍是:优化连接数据存储的接口。换句话说,尽管ODBC (Open Database Connectivity) / JDBC(Java Database Connectivity )驱动程序得到了积极的支持和维护,但是它们彼此之间却表现得很差。

但是,在首次使用云厂商提供的数据库时,一些更改将是必要得,例如-可能要更改应用程序的数据库驱动程序。

其他变化不太明显,因为不同的ODBC驱动程序可以执行小的数据转换,包括浮点数,时间戳的时区格式以及NULL值的处理。这些更改只会以数据差异( data gaps )的形式出现,并且需要进行更严格的测试才能检测到。

挑战4 –编写和使用存储过程

在将应用程序和数据从内部部署迁移到云时,最容易被忽视的挑战之一是云厂商是否具备提供数据库存储过程的能力。

在云迁移期间,最容易被忽视的挑战之一是编写和使用存储过程的能力。主要的云数据存储Snowflake,Redshift和 BigQuery支持用户定义的功能(用Python,SQL或JavaScript定义),但对于许多功能来说还不够。

存储过程是一组为了完成特定功能的 SQL 语句集合。使用存储过程的目的是将常用或复杂的工作预先用 SQL 语句写好并用一个指定名称存储起来,这个过程经编译和优化后存储在数据库服务器中,因此称为存储过程。

存储过程可节省大量工作,并有 有很强的灵活性,可以完成复杂的判断和较复杂的运算 。常见的替代方法是使用单独的平台来计划参数化的查询或编排任务。

Azure Cosmos DB 提供的功能使你可以编写存储过程,触发器( trigger)和用户定义的函数。在Azure Cosmos DB中使用SQL API,你可以使用JavaScript语言定义存储过程,触发器和UDF, 并在数据库引擎中执行它。

总结

每个企业在将其应用程序和数据迁移到云时都必须解决许多挑战。借助部署熟练的云工程师和高级工具,企业可以轻松避免云迁移主要的挑战。

他们甚至可以考虑利用托管的云服务来将其本地应用程序和数据高效,及时地转移到云中。

译者:王延飞

译文链接:

https://dzone.com/articles/on-premise-to-cloud-migration-4-key-challenges-in-becoming-cloud-native

END

Kubernetes CKA实战培训班推荐:

上海:11月27-29日

FZrmA3U.jpg!mobile

fA7FNjZ.jpg!mobile


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK