数据集成是企业应用集成中的主要工作内容之一,其主要难点在于:

1.数据源格式千差万别;

2.数据转换过程复杂;

3.要求非侵入性;

4.工作量庞大;

笔者结合自己在数据集成方面的开发和应用经验,参考市场上部分数据集成工具产品,推荐本数据集成解决方案,供同行探讨:

上述方案中:

1.DAO_output组件负责将源数据以xml文件的形式输出;

2.DAO_input组件负责将xml文件解析后存储到目标数据库中;

3.Compiler编译器负责将用户定义的xsl样式表文件载入,并将源xml文件转换成目标xml文件,实现数据转换过程与数据转换逻辑的解耦合;

自动化方面:

1.源数据以xml形式输出,可实现自动化和无人值守(多种高级开发语言支持);

2.xsl文件能够实现复杂的自定义转换及编程功能扩展(http://www.ibm.com/developerworks/cn/xml/x-xsltext/?S_TACT=105AGX52&S_CMP=tag-csdn);

3.目标xml完全可以定义为对象序列化格式,直接由DAO_output组件进行对象组装后实现批量存储操作.

采用Saxon.Api的C#编译器实现:(Saxon.Api下载地址:http://www.saxonica.com/index.html)

using System;
using System.Text;
using Saxon.Api;
namespace Design
{
    class Sample
    {
        public Sample()
        {
            try
            {
                // Create a Processor instance.
                Processor processor = new Processor();
                // Load the source document
                XdmNode input = processor.NewDocumentBuilder().Build(new Uri(@"D:/DAI/Project/bin/Debug/books.xml"));
                // Create a compiler
                XsltCompiler compiler = processor.NewXsltCompiler();
                // Compile all stylesheets
                XsltTransformer transformer = compiler.Compile(new Uri(@"D:/DAI/Project/bin/Debug/books-csv.xsl")).Load();
                // Now run them in series
                //XdmDestination results1 = new XdmDestination();
                transformer.InitialContextNode = input;
                XdmDestination results = new XdmDestination();
                transformer.Run(results);
                Console.WriteLine("After phase:");
                Console.WriteLine(results.XdmNode.OuterXml);
            }
            catch (DynamicError e)
            {
                Console.WriteLine(e.Message);
                //e.ErrorCode;
                //e.IsWarning;
                //e.LineNumber;
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
        static void Main()
        {
            Sample s = new Sample();
            Console.Read();
        }
    }
 }

数据集成解决方案探讨相关推荐

  1. Kafka ETL 之后,我们将如何定义新一代实时数据集成解决方案?

    上一个十年,以 Hadoop 为代表的大数据技术发展如火如荼,各种数据平台.数据湖.数据中台等产品和解决方案层出不穷,这些方案最常用的场景包括统一汇聚企业数据,并对这些离线数据进行分析洞察,来达到辅助 ...

  2. 企业如何数据集成?数据集成解决方案

    随着信息化时代的不断推进,企业对于数据集成解决问题的需求越发强烈,越来越多的应用场景对数据集成的诉求也越来越高.零售行业.传统销售企业.项目管理等,都离不开企业数据的共享和企业数据集成,但企业数据现状 ...

  3. fabric 启动peer_Hyperledger fabric peer数据膨胀解决方案探讨

    1. 问题场景 Fabric peer节点使用文件保存区块, 使用level db或couchdb数据库保存状态, 数据很多state db会膨胀, 我们探讨下一些解决方案. 2. couchdb集群 ...

  4. ChunJunOceanBase联合方案首次发布:构建一体化数据集成方案

    8月27日,ChunJun社区与OceanBase社区联合组织的开源线下Meetup成功举办,会上重磅发布了「OceanBase&ChunJun:构建一体化数据集成方案」. 这是OceanBa ...

  5. 谷云科技受邀出席2023华南CIO大会-应用与数据集成专家

    2023年6月10-11日,我们将于中国·珠海国际会展中心迎来第6届 S-CIO 2023华南CIO大会暨信息技术交易会 .大会将邀请近1000位来自广东.广西.福建.海南等地的企业IT高管及行业专家 ...

  6. Softing物联网(IoT)方案之OT/IT数据集成

    一 利用数据提高效率和绩效 多年以来数据集成和工业物联网一直在推动着市场的发展,目前我们已经可以集成并成功使用先进的技术.大量的传感器和复杂的数据格式等.而在工业物联网或工业4.0中,运营技术(OT) ...

  7. 阿里云DataWorks数据集成(DataX)架构实践分享

    阿里云DataWorks数据集成(DataX)架构&实践分享 分享嘉宾:罗海伟 阿里云 编辑整理:约理 中国科学院大学 目录 ▌为什么需要数据集成 数据集成的应用场景 数据集成的角色和地位 ▌ ...

  8. 常用的数据集成ETL工具有哪些?

    一.Informatica Informatica是全球领先的数据管理软件提供商.在如下 Gartner魔力象限位于领导者地位:数据集成工具魔力象限.数据质量工具魔力象限.元数据管理解决方案魔力象限. ...

  9. 工业物联网的数据集成

    随着网关技术的不断发展,创新.高效的软件解决方案及IT架构在工业物联网系统架构中将发挥着更为重要的作用.其中,工业物联网集成工业数据的一个关键问题在于如何利用软件.IT和创新算法来部署网络解决方案,从 ...

最新文章

  1. solr配置同义词,停止词,和扩展词库(IK分词器为例)
  2. 再谈变分自编码器VAE:从贝叶斯观点出发
  3. hdu1166 线段树
  4. SUSE团队已将重心偏向GCC 7
  5. 对寄存器ESP和EBP的一些理解
  6. python 录入数据不重复_pythonDjango批量导入不重复数据
  7. SQL:having和where的区别
  8. 京瓷打印机更换墨盒后显示缺粉_京瓷1800打印机更换墨盒后仍然提示添加墨粉,怎么解决啊?...
  9. timeout 和 deadline
  10. 关于《ASP.NET MVC企业级实战》
  11. python安装jupyter出现问题_有关jupyterhub安装的问题
  12. 打开模式时防止BODY滚动
  13. 串口发送图片VGA显示
  14. python and financial data_学会7个可视化图表增强技巧(Python),毫不费力抓住领导的眼球
  15. Out of resources when opening file './xxx.MYD' (Errcode: 24)
  16. Hazel引擎学习(二)
  17. 2021Java面试题及答案整理(最新汇总版)
  18. 如何采用类比法和类推法估算软件项目工作量
  19. Android 设备解锁
  20. 我喜欢两个男人。。。

热门文章

  1. Paper Reading Notes
  2. 无线蓝牙耳机什么牌子的好?好的无线蓝牙耳机推荐
  3. 举例:在从库上备份,到主库上恢复
  4. win10有一个隐藏的超级管理员帐户,拥有全部权限,如何启用它
  5. 软件设计师的证书有多少含金量?
  6. 频点换算计算器android,LTE频率频点计算器免费版
  7. Threejs-创建旋转正方体
  8. 高温定型窗帘值得我们选择吗?-江南爱窗帘十大品牌
  9. gxworks2使用指令手册_GX Works2操作手册(智能功能功能模块操作篇):三菱 GX 三菱 GX Works2操作手册(智能功能功能模块操作篇)...
  10. 主板点不亮 复位BIOS_【硬件篇】主板排线怎么插?确认过眼神,就是这么简单!...