文件中大数据的数据转换

时间:2014-07-31 04:12:49

标签: intersystems-ensemble ensemble-learning

我不熟悉整体,并对数据转换做了澄清。

我有2个模式如下,

PatientID,
Patient Name,
Patient Address (combination of door number, Street, District, State)

和另一个架构,

PatientID,
Patient Name,
Door Number
Street
District
State

现在有一个传入的文本文件,其中包含1000条记录,符合第一个架构(' |'分隔),如下所示,

1001|John|220,W Maude Ave,Suisun City, CA
像这样在输入文件中有1000个recrods

我的要求是根据第二个模式转换它(即分隔地址)并存储在文件中,如

1001|John|220|W Maude Ave|Suisun City|CA

我实施的一个解决方案是遍历文件中的每一行,并在地址中用' |'替换。

我的问题是,我们是否可以通过DTL来实现。如果答案是肯定的,我们如何使用DTL循环遍历1000条记录。

DTL是否会耗费时间?因为我们需要加载模式然后进行转换。

请帮忙。

2 个答案:

答案 0 :(得分:0)

您可以将DTL与从Ens.VirtualDocument或%XML.Adaptor继承的任何类一起使用,虚拟Ensemble使用类字典来表示架构,因此对于基本类没有问题,您扩展%XML.Adaptor Ensemble可以代表它。如果是虚拟文档,则必须将对象设置为DocType。

为了进行循环,有一个DTL

答案 1 :(得分:0)

是的,DTL可以解析1000条记录。您可以执行以下操作: 1)创建记录映射以解析具有模式1的传入文件 2)定义将模式2字段映射到对象属性的中间对象 3)创建一个DTL,其源对象是上面1中的记录映射对象,target是上面2中的对象。