如何 0 成本启动全员 AI 技能提升?戳> 了解详情
写点什么

AWS Schema Conversion Tool 是怎样帮助 Trimble 成功进行数据库迁移

  • 2019-10-23
  • 本文字数:2158 字

    阅读完需:约 7 分钟

AWS Schema Conversion Tool 是怎样帮助 Trimble 成功进行数据库迁移

情况介绍


最近,Trimble 现场服务管理部门的基础设施运营组开始采取积极措施,将其私人托管的 SaaS 产品迁移至 Amazon Web Services (AWS)。该部门面临硬件更新需求、持续降低成本的压力,同时还希望旧版产品与公司在 AWS 上的下一代平台协调一致。为了应对上述问题,Trimble 基础设施团队制定了从数据仓库解决方案着手的全面迁移计划。


降低成本、提高可用性和可扩展性是采用 AWS 方案的主要原因。Trimble 决定从 Oracle 迁移到开源数据库平台,来优化当前的授权费用。Trimble 还通过使用 Amazon RDS 运行数据库来帮助保证可靠性和降低运营支持开销。


选择数据库


Trimble 运营与数据库开发团队邀请了 AWS 团队协助评估从 Oracle 迁出数据库平台的复杂性。本次评估的中心是 AWS Schema Conversion Tool (AWS SCT) 评估报告。


我们的 Trimble 团队使用了 AWS SCT 来检查源 Oracle 数据库和 Amazon Relational Database Service (Amazon RDS) 开源数据库引擎之间的替代目标之间的“距离”。Trimble 还有第二个标准,即与现有 ETL 工具 (Informatica) 和报告产品 (Microstrategy) 协同工作的能力。我们认为采用这种方法能够使项目按时保质完成,同时避免范围蔓延。


我们发现,两种数据库都允许 Trimble 继续使用现有的前端解决方案。但是,AWS SCT 评估表明,RDS for PostgreSQL 与 Oracle 源数据库的差距更小,这也是我们选择它作为目标数据库的原因。Schema Conversion Tool 评估报告清晰展示:为了应对当前的数据库平台与 RDS for PostgreSQL 之间的功能性差距,需要对哪些地方进行改进。我们可以据此做出资源规划。


评估报告为 Trimble 提供了基础和框架,从而可以根据 RFP 进行招标,让第三方完成大量的迁移工作。这一基础使 Trimble 能够专注于其他迁移活动。因此,Trimble 与 Amazon 的合作伙伴 OpenSCG 建立了宝贵的合作伙伴关系,以推动数据库迁移活动顺利进行。如今,Trimble 仍与 OpenSCG 保持着良好的支持服务和培训计划合作关系。


Schema Conversion Tool 评估报告是了解此次迁移活动工作量的关键。我们原以为这会是一项需要投入大量人力的乏味工作,但事实证明这个过程非常简单。这项评估为该项目节省了几个月的时间。


迁移


Trimble 面向四家有相关能力的供应商进行了招标。在对标书进行审核后,Trimble 根据专业能力和知识深度对参与招标的供应商进行了筛选,最终与 OpenSCG 签订了合作协议。Trimble 委托 OpenSCG 解决已确定的功能性差距。OpenSCG 还编写了迁移脚本来搭建 PostgreSQL 数据库 schema,并将数据从源数据库移到了目标数据库。Trimble 的员工对这些工作提供了支持,并承担了与前端应用程序配置和验证相关的所有任务。


该项目分成了两个子项目。首先,团队集中进行了北美洲托管式迁移,然后进行了欧洲托管式迁移。北美数据库大小为 6.5 TB,平均每月增加 22 GB 左右。欧洲数据库为 4.6 TB,平均每月增加 33 GB。


团队使用现有私人托管的灾难恢复站点上的数据库副本作为迁移的源数据库。团队还在数据库旁边部署了 PostgreSQL 数据库虚拟机和数据迁移虚拟机。这些虚拟机使用 OpenSCG 提供的 schema 和脚本,将生产数据库迁移到目标 PostgreSQL 数据库中。成功完成迁移后,我们使用 AWS Snowball 将导出的 PostgreSQL 数据库运送到 AWS。在 AWS 上,导出的数据库导入了目标 RDS for PostgreSQL 实例。该流程在每个地理位置执行了两次。第一次迭代填充了测试数据;第二次迭代在验证后创建了生产数据集。


转换


现有的 ETL 流程在目前使用的私人托管数据仓库解决方案和生产前 RDS for PostgreSQL 解决方案之间保持同步。通过全面的 QA、功能和性能测试,以及数据完整性验证,发现了一些问题。团队在计划的上线日期之前妥善解决了这些问题。最大的挑战与 ETL 流程的性能有关,也与一些报告的性能问题有关。


实施团队的尽职调查使得转换工作顺利进行。ETL 运行和报告运行之间的这种转换是依照逻辑安排的;因此,对最终用户完全透明。


结果


Trimble FSM 由此完全淘汰了他们的传统数据仓库堆栈。Trimble 即将完全摆脱托管提供商。


本次数据仓库迁移代表了将所有托管解决方案迁移到 AWS 的大型项目的前三个阶段。迄今为止,Trimble 已经完成了两个生产数据仓库堆栈、其各自开发环境,以及北美和欧洲旧版生产应用程序堆栈的迁移。Trimble 目前正处于应用程序开发环境迁移的最后阶段,预计将在年底前完成。


据推测,这些项目可将 Trimble 基础设施的直接成本降至不到其原先私人托管基础设施的四分之一。公司还打算在未来使用其他 AWS 服务。Trimble 希望这些举措能够进一步降低运营开销。


总结


这个项目的要点如下:


使用所有可用资源进行彻底的尽职调查,以确定项目路线图。Trimble 使用了 AWS Schema Conversion Tool 并采纳了 AWS 客户团队的建议。事实证明这是项目成功的关键因素。


要毫不犹豫地利用外部资源和专业知识,为项目提供更多支持。通过与外部供应商进行合作来协助内部团队,能够将项目的完成时间缩短数月。


如果有必要,可以先思考理想的最终状态,然后倒推出可行方案。许多人认为从 Oracle 进行平台迁移是一项宏大到不可能实现的任务。事实证明,这种担忧是没有根据的。


本文转载自 AWS 技术博客。


原文链接:


https://amazonaws-china.com/cn/blogs/china/how-the-aws-schema-conversion-tool-drove-trimbles-database-migration-successes/


2019-10-23 08:00948

评论

发布
暂无评论
发现更多内容

2021Android面经:算法题+JVM+自定义View

欢喜学安卓

android 程序员 面试 移动开发

pha挖矿/phala挖矿APP系统开发内容

WorkPlus房地产行业数字化解决方案—富力地产

BeeWorks

开源 远程办公 即时通讯 IM

一名老党员,申请入驻~

正儿八经的仙儿

面向编程式多云管理服务时代的华为云MCP多云跨云的容器治理与实践

华为云开发者联盟

容器 云原生 华为云 多云 跨云

用中国话学this指向(旧知识新讲)

加百利

JavaScript 大前端 this 7月日更

10年阿里开发架构师经验分享:掌握这个提升路径

欢喜学安卓

android 程序员 面试 移动开发

2021 - iOS开发面试 【字节·百度】 上海区面经与侧重点分享

iOSer

ios 百度 面试 字节 iOS 知识体系

毕业季offer怎么拿?收下这份非典型求职面试指南

华为云开发者联盟

面试 职业规划 求职 毕业季 大学生

多项目同时进行如何做好项目管理?

万事ONES

FIL矿机多少钱一台 ?FIL挖矿成本是多少?

Fil和BTC有什么区别?Filecoin挖矿的行情如何?

IPFS BTC fil fil币

永续合约交易所搭建,合约平台开发

2021 WAIC | EMQ 映云科技:面向云原生的云边协同物联网解决方案

EMQ映云科技

云原生 云端 端边云协同架构 边云协同

一个完整的项目管理流程包括什么?

万事ONES

项目管理 ONES

GIS可视化框架:更便捷的地图数据可视化工具

鲸品堂

GIS 可视化 应用场景

Redisson 分布式锁源码 07:公平锁释放

程序员小航

Java redis 源码 分布式锁 redisson

如何对开发团队的人员进行绩效管理?

万事ONES

研发效能 ONES 绩效管理

用户体验

Ryan Zheng

小白也能看懂的Java内存模型

程序猿阿星

JMM Java内存模型 原子性 有序性 可见性;

WorkPlus高端制造行业数字化解决方案—华晨宝马

BeeWorks

开源 即时通讯 IM 案例分享 汽车

Go 学习笔记之 Slice

架构精进之路

7月日更

互斥锁Mutex:鸿蒙轻内核中处理临界资源独占的“法官”

华为云开发者联盟

鸿蒙 OpenHarmony 鸿蒙轻内核 互斥锁Mutex 临界资源

Camtasia实用技巧之时间轴

淋雨

视频剪辑 录屏软件 Camtaisa

WICC 2021召开在即 清华大学教授将分享AI+网络音视频服务研究

融云 RongCloud

手写链表之LinkedList源码分析

Ayue、

数据结构

CODING 带你看腾讯新闻 7 日 DevOps 实践

CODING DevOps

DevOps CODING 腾讯新闻

如何利用云原生技术构建现代化应用

阿里巴巴中间件

云计算 阿里云 云原生 中间件

pha分币APP系统开发资料

原来这就是Java IO啊····

华为云开发者联盟

Java 操作系统 进程 IO流 Java IO

智汇华云|华云数据ArSDN:自主可控的SDN

华云数据

AWS Schema Conversion Tool 是怎样帮助 Trimble 成功进行数据库迁移_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章