2017-02-15 36 views
0

我们使用Barebone CMS' SSO可以了Talend从MySQL序列化数据迁移到PostgreSQL

MYSQL数据库,我们有,包含下信息列在序列化格式用户的配置文件字段用户表。

E.g.信息的列值 a:41:{s:7:"aboutme";s:0:"";s:7:"address";s:4:"Pune";s:11:"agriculture";s:11:"Agriculture";s:13:"agri_business";s:0:"";s:22:"agri_finance_insurance";s:0:"";s:12:"agri_trading";s:0:"";s:14:"agro_chemicals";s:14:"Agro Chemicals";s:10:"alt_energy";s:0:"";s:13:"ani_husbandry";s:0:"";s:6:"avatar";s:0:"";s:13:"biotechnology";s:0:"";s:4:"city";s:4:"Pune";s:18:"contact_first_name";s:0:"";s:17:"contact_last_name";s:0:"";s:7:"country";s:5:"India";s:11:"designation";s:0:"";s:5:"email";s:24:"[email protected]";s:8:"farm_act";s:0:"";s:12:"farm_service";s:0:"";s:10:"first_name";s:4:"Amol";s:6:"Gender";s:4:"Male";s:12:"horticulture";s:0:"";s:14:"interest_other";s:8:"Software";s:10:"irrigation";s:0:"";s:17:"KISAN2015_barcode";s:6:"577535";s:16:"KISAN2015_status";s:5:"green";s:8:"landline";s:0:"";s:9:"last_name";s:7:"Chakane";s:9:"lattitude";s:6:"18.482";s:8:"location";s:90:"Tukai Darshan Tekdi Rd, Bijle Nagar, Kale Padal, Hadapsar, Pune, Maharashtra 412308, India";s:9:"longitude";s:6:"73.944";s:13:"machine_tools";s:0:"";s:6:"mobile";s:14:"+91-95XXXXX478";s:10:"occupation";s:27:"Farming,Certification,Other";s:16:"occupation_other";s:18:"Software Developer";s:11:"org_farming";s:0:"";s:12:"post_harvest";s:0:"";s:17:"registration_type";s:5:"email";s:5:"state";s:11:"Maharashtra";s:8:"username";s:24:"[email protected]";s:7:"website";s:0:"";}

我们希望将它们迁移到PostgreSQL的在不同的表。

E.g.我们有用户的兴趣,其中有价值商店“农业,乳制品,家禽”。它们以序列化格式存储在用户表的信息列中。

在PostgreSQL中,我们为利益而创建了主表,它存储了所有类型的利益,如农业,乳业,家禽。然后user_interest表将有interest_iduser_id说明列。

我们计划使用Talend将这些数据从MYSQL迁移到PostgreSQL。

使用Talend可以实现这种数据迁移吗?

我们应该继续使用传统的PHP脚本编写方式吗?

迁移此类数据的最佳方法是什么?

谢谢

+0

它是如何加密?您显示的示例至少未以任何方式加密。 –

+0

@SamiKuhmonen在Talend中是否有条款反序列化和迁移? –

+0

不幸的是,在此之前我从来没有听说过Talend,所以不能说它能做什么。 –

回答

0

您显示的示例没有以任何方式加密。它只是PHP数据结构的序列化版本。数据库不关心这一点,它只会存储给它的字符串。

如果您想要以不同的方式更改要存储的数据,则必须自己处理,因为它只关心将数据存储在数据库中的应用程序。因此,您可以让应用程序使用这些数据以分开的方式使用它,也取决于您将数据从序列化的字符串中分离出来。

0

Talend通过连接器直接连接到MySQL,它将以列表格式提取数据并将其存储在PostgreSQL中,如果您正确配置它是一个功能丰富的Java开发GUI,并坦率地说它会在早餐时吃这个问题,

我目前使用talend从5个不同的数据库/ a rest api中提取数据,并存储在基于PostgreSQL 8的amazon redshift中。3,我相信,

你总是可以使用分隔的文件组件以及和手工指定deliminators

最坏的情况下,

+0

在这种情况下,我们必须将tExtractJSON组件添加到组合中,并且您有数据流动。 –