2017-02-15 39 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組件添加到組合中,並且您有數據流動。 –