中科院云平台架构师,专注于数字化、智能化,技术方向:云、Linux内核、AI、MES/ERP/CRM/OA、物联网、传感器、大数据、ML、微服务。
分类: 项目管理
2013-09-11 16:13:31
关于数据移行:
英文:transition,shift,switchover.没有找到资料那个词更加确切一些。中文就也叫移行吧。这是一个日本软件项目工程词汇。主要用于:
1:长期维护项目的系统分步改造,新商品的软件系统对应。
2:新旧系统切换时,旧系统导入新的系统。
主要适用于大项目(比如保险、通讯和其他金融、制造、CRM等)。定位于大公司、大系统。有一套独立的成型的理论。
从技术上来说:需要shell、DB、java或C++等方面的知识。新旧系统是分离的,数据库表是完全不同的,独立操作系统的,平台无关的,可靠性好、安全性高、大数据量、性能优化,可靠的。原因:新旧系统的时间间隔较长(10年以上),硬件技术更新、各类软件(OS、DB、develop language)经过数轮更新、软件工程理论的新成果、所实现业务的更新等。
主要包括三部分:
1:数据抽出
2:数据处理
3:数据加载
关于数据抽出:
达成目标:将旧数据原封不动不做任何转化的取得。
需要技术:原有数据用较低版本工具、最基础的DBSQL,最好从命令行开始。用DOS批处理或基本shell(兼容Bshell、kshell)。注意换行、回车、TAB、single quote、double quotes 等。不要用plsql development、osqledit、si object等会篡改数据的工具。
实现方式:shell调用(写好的shell程序)、spool或utl_file.putline,输出成纯文本文件。
注意事项:shell文件、sql文件必须FIX,每一步的数据输出必须留存。以作为error分析使用。特殊字符保留(很具有tiaozhan)。
IN:DB
OUT:旧表名.Txt
工具:shell,DB(如oracle的sqlplus)
关于数据处理:
达成目标:将数据抽出的数据转换成可以数据加载的数据。
需要技术:运用sql、procedure、存储过程和shell命令行等,Proc。
注意事项:运用的开发语言及工具没有什么限制。建议用SQL关联。
http://hiyachen.blog.chinaunix.net
IN:旧表名.Txt
OUT:新表名.Txt
工具:shell,DB(如oracle的sqlplus、plsql、存储过程及方法。)
关于数据加载:
达成目标:将可以加载的数据导入新库。
用数据库(如sqlloader)和shell(或DOS)(如内嵌SQL等)的命令,将上述数据简单导入新系统。
IN:新表名.Txt
OUT:DB
工具:shell,DB(如oracle的sqlplus、plsql、存储过程及方法。)
每一步必须robust,否则对于系统来说是灾难性的。