Tải bản đầy đủ (.doc) (87 trang)

Đố án Tin học ứng dụng Tìm hiểu Talend

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.73 MB, 87 trang )

Đố án Tin học ứng dụng: Tìm hiểu Talend

PHẦN 1: TÌM HIỂU TALEND.
CHƯƠNG 1. NHÀ CUNG CẤP PHẦN MỀM TALEND.
1.1. Giới thiệu Talend.
1.1.1. Giới thiệu chung về Talend.










Talend là một nhà cung cấp phần mềm mã nguồn mở. Talend cung cấp khả
năng tích hợp dữ liệu (data integration), quản lý dữ liệu (data management),
tích hợp ứng dụng doanh nghiệp (enterprise application integration), các phần
mềm và các dịch vụ dữ liệu lớn (big data).
Talend Open Studio là một tập hợp mạnh mẽ và linh hoạt của các sản phẩm
mã nguồn mở để phát triển, thử nghiệm, triển khai, quản trị các dự án quản lý
dữ liệu và các dự án ứng dụng tích hợp. Talend cung cấp các nền tảng thống
nhất làm cho quản lý dữ liệu và tích hợp ứng dụng dễ dàng hơn bằng cách
cung cấp một môi trường thống nhất quản lý toàn bộ vòng đời của doanh
nghiệp qua các ranh giới hoạt động của doanh nghiệp.
Talend - nhà lãnh đạo toàn cầu trong hội nhập mã nguồn mở, cung cấp giải
pháp tích hợp mà thực sự mở rộng cho bất kỳ loại thách thức tích hợp, bất kỳ
khối lượng dữ liệu và bất kỳ phạm vi dự án dù đơn giản hay phức tạp. Chỉ có
số liệu đánh giá cao khả năng mở rộng của Talend, ứng dụng và quy trình kinh
doanh nền tảng tích hợp khả năng mở rộng của Talend. Talend kết hợp các dự


án và các công nghệ để tăng tốc đáng kể thời gian đưa ra giá trị cho các hoạt
động kinh doanh.
Sẵn sàng cho môi trường dữ liệu lớn, kiến trúc linh hoạt của Talend dễ dàng
thích nghi với các nền tảng công nghệ thông tin trong tương lai. Sản phẩm của
Talend giảm đáng kể rào cản áp dụng cho các doanh nghiệp muốn đóng gói
các giải pháp mạnh mẽ để thách thức hoạt động như tích hợp dữ liệu (Data
Integration), chất lượng dữ liệu (Data Quality), quản lý dữ liệu tổng thể
(Master Data Management - MDM), xe buýt phục vụ doanh nghiệp
(Enterprise Service Bus - ESB), quản lý qui trình kinh doanh (Business
Process Management - BPM) và kho dữ liệu lớn (Big Data). Talend thúc đẩy
và mở rộng công nghệ hàng đầu Apache. Mã nguồn mở Talend cho ESB và
các giải pháp nguồn mở SOA giúp các tổ chức xây dựng linh hoạt kiến trúc
doanh nghiệp hiệu suất cao đó là tích hợp và cho phép các dịch vụ ứng dụng
phân tán.
Không giống như các nhà cung cấp truyền thống cung cấp các giải pháp đóng
cửa và rời rạc, Talend cung cấp một nền tảng mở và linh hoạt, được hỗ trợ bởi
một mô hình thuê bao dựa trên giá trị dự đoán và khả năng mở rộng .

1.1.2. Lịch sử ra đời của Talend.

Chuyên ngành Tin Học Ứng Dụng

1

Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend



Talend được thành lập vào năm 2005 bởi Bertrand Diard và Fabrice Bonan và
được phát triển không ngừng đến ngày nay.

Hình 1: Lịch sử hình thành và phát triển của Talend.




Talend là nhà cung cấp mã nguồn mở thương mại đầu tiên của các phần mềm
tích hợp dữ liệu. Các nhà cung cấp khác có thể gia nhập thị trường này bao
gồm Apatar, Jitterbit, Pentaho, và SnapLogic. Các nhà cung cấp tích hợp
dữ liệu mã nguồn mở không bao gồm phần mềm AG, Ab Initio, SAS
Institute, Pervasive Software, IBM, Informatica và SAP.

Hình 2: Một số đối tác của Talend.
Talend có trụ sở chính đặt tại thành phố Redwood, California, Talend có văn
phòng tại Bắc Mỹ, châu Âu và châu Á và một mạng lưới quốc tế của các đối
tác kỹ thuật và dịch vụ. Talend có hơn 400 nhân viên tại 14 văn phòng trên 7
quốc gia.

Chuyên ngành Tin Học Ứng Dụng

2

Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend



Sản phẩm đầu tiên của công ty, Talend Open Studio for Data Integration, đã
được đưa ra trong tháng 10 năm 2006, dưới tên trước đây của nó: Talend Open
Studio. Vào tháng Giêng năm 2008, nó đã được tải về hơn 1 triệu lần. Vào
tháng Giêng năm 2012, sản phẩm đạt 20 triệu tải và công ty đã có hơn 3500
khách hàng trên toàn thế giới. Ngày nay, Talend có hơn 4000 khách hàng.
Khách hàng bao gồm eBay, Virgin Mobile, Sony Online Entertainment,
Deutsche Post và Allianz……

Hình 3: Những khách hàng đã lựa chọn sử dụng Talend.


Ngoài ra, Talend còn có những đối tác là các nhà sản xuất thiết bị (những nhà
chế tạo, sửa chữa, đóng gói và bán ra thiết bị phần cứng) và các đối tác công
nghệ.

Hình 4: Các đối tác là các nhà sản xuất thiết bị.

Chuyên ngành Tin Học Ứng Dụng

3

Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend

Hình 5: Các đối tác là các nhà công nghệ của Talend.
1.1.3. Các sản phẩm của Talend.
Talend hiện có 3 dòng sản phẩm:
a. Dòng sản phẩm quản lý dữ liệu.

 Talend Open Studio for Big Data: kết hợp công nghệ dữ liệu lớn vào một môi
trường mã nguồn mở thống nhất đơn giản hóa việc tải dữ liệu, khai thác,
chuyển đổi, xử lý dữ liệu lớn và đa dạng.
 Talend Enterprise Big Data: một giải pháp tích hợp dữ liệu lớn mở rộng của
Talend Open Studio cho dữ liệu lớn với khả năng làm việc nhóm và quản lý.
 Talend Platform for Big Data: mạnh mẽ, linh hoạt tích hợp dữ liệu lớn là giải
pháp chất lượng dữ liệu mà đơn giản hoá việc tải, khai thác, xử lý dữ liệu lớn
và đa dạng để bạn có thể đưa ra nhiều quyết định kịp thời hơn.
 Talend Open Studio for Data Integration: một ứng dụng mã nguồn mở cho
công việc thiết kế tích hợp dữ liệu với một môi trường phát triển đồ họa, được
thiết kế để kết hợp, chuyển đổi và cập nhật dữ liệu tại các địa điểm khác nhau
trên toàn doanh nghiệp. Nó là một sản phẩm tích hợp dữ liệu của Talend cung
cấp các tích hợp mạnh mẽ, linh hoạt nên các doanh nghiệp có thể ngừng lo
lắng về cơ sở dữ liệu và các ứng dụng đang nói chuyện với nhau và thay vì tối
đa hóa giá trị của việc sử dụng dữ liệu.
 Talend Enterprise Data Integration: là một sản phẩm mở rộng của Talend
Open Studio for Data Integration với việc bổ sung phân phối, hợp tác phát
triển các tính năng cũng như khả năng nắm bắt sự thay đổi dữ liệu. Trong khi
các sản phẩm Talend Open Studio được thiết kế chủ yếu cho một nhà phát
triển duy nhất làm việc trên một máy tính duy nhất, Enterprise cung cấp một
kiến trúc phân tán cho phép nhiều nhà phát triển để chia sẽ tài nguyên và kết
hợp các nỗ lực vào một dự án duy nhất.
 Talend Platform for Data Management: Giải pháp quản lý dữ liệu của Talend
biến nguồn khác nhau, không thống nhất và bản sao của dữ liệu vào nguồn
đáng tin cậy của thông tin hợp nhất, vì vậy doanh nghiệp của bạn có thể đáp
ứng tốt hơn và tự tin hơn trong các quyết định hàng ngày.

Chuyên ngành Tin Học Ứng Dụng

4


Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend


Talend Platform for Data Services: Tạo thành một dữ liệu thống nhất toàn
diện, ứng dụng và giải pháp tích hợp dịch vụ giảm tác động của việc thay đổi
cấu trúc dữ liệu trong khi thực hiện việc quản lý dữ liệu trên các lĩnh vực dễ
dàng hơn.
 Talend Open Studio for MDM: MDM với một cách tiếp cận linh hoạt và mã
nguồn mở để làm chủ các dự án dữ liệu. Nó cung cấp một nền tảng các chức
năng quản lý dữ liệu tổng thể về tích hợp, chất lượng và làm chủ bất kỳ dữ liệu
nào.
 Talend Platform for Master Data Management: Giải pháp quản lý dữ liệu tổng
thể của Talend của biến các nguồn khác nhau, thông tin không phù hợp trên
toàn doanh nghiệp của bạn thành một duy nhất, đáng tin cậy “phiên bản của
sự thật”, gia tăng sự tự tin trong quyết định thực hiện của bạn.
 Talend Open Studio for Data Quality: một công cụ hồ sơ dữ liệu mã nguồn mở
xem xét các nội dung, cấu trúc và chất lượng của các dữ liệu có cấu trúc phức
tạp. Với giải pháp này, các tổ chức hiểu và cải thiện tính đầy đủ, chính xác và
toàn vẹn của dữ liệu, vì vậy bạn phải tự tin hơn trong các thông tin bạn nhận
được và quyết định thực hiện.
b. Dòng sản phẩm tích hợp ứng dụng.
 Talend ESB Standard Edition: là một mã nguồn mở Apache dựa trên nguồn
ESB.
 Talend Open Studio for ESB: là một xe buýt phục vụ doanh nghiệp và một lớp
kết nối dựa trên tiêu chuẩn được sử dụng để tích hợp thêm hệ thống phân phối
trên chức năng, doanh nghiệp và ranh giới địa lý. Nó được hổ trợ bởi các dự

án tích hợp mã nguồn mở Apache CXF, Apache Camel và Apache ActiveMQ.
 Talend Enterprise ESB: là sản phẩm mở rộng của Talend Open Studio for ESB
với việc triển khai và quản lý các chức năng tiên tiến hơn.
 Talend Platform for Enterprise Integration: quản lý thống nhất quy trình kinh
doanh, tích hợp ứng dụng và dữ liệu để các doanh nghiệp tăng năng suất kinh
doanh, cung cấp các dự án nhanh hơn, và chi phí vận hành thấp hơn.
c. Dòng sản phẩm tích hợp ứng dụng dựa trên nền điện toán đám mây.
 Talend Platform for Hybrid Cloud: Talend Cloud là một tập hợp toàn diện,
thống nhất các ứng dụng tích hợp và các công cụ quản lý dữ liệu cho phép kết
nối nhanh chóng, điều chỉnh và quản lý, ứng dụng dựa trên đám mây và SAAS
trong một doanh nghiệp trả về kết quả nhanh hơn.
1.2. Bắt đầu với một dự án Talend.
1.2.1. Cài đặt Talend.


Tải phần mềm Talend là một công việc đơn giản, Talend được tải về từ website
www.talend.com. Tại đây bạn có thể tải về phiên bản bạn cần hoặc tải về phiên
bản hoàn thiện nhất của Talend là version 5.5.1, tuy nhiên đã có bản dùng thử
5.6.0. Talend có thể chạy được trên các hệ điều hành khác nhau như:
Windows, OSX, Unix and Linux.

Chuyên ngành Tin Học Ứng Dụng

5

Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend
 Người dùng có hai cách lựa chọn cài đặt Talend: cài đặt vào windows hoặc sử

dụng phiên bản nén không cài đặt. Chúng ta có thể sử dụng bản nén sẽ dễ dàng
và nhanh chóng hơn, chỉ cần việc giải nén và chạy phiên bản phù hợp với cấu
hình máy tính của bạn.
 Hơn thế nữa, tại trang web của Talend bạn có thể tải về các phiên bản phù hợp
cho việc phát triển ứng dụng của bạn, nhưng cho dù bạn đang sử dụng Talend
Open Studio for Big Data hoặc Talend Open Studio for Data Integration… thì
tất cả các phát triển của bạn sẽ diễn ra trong môi trường Talend Studio.
1.2.2. Xây dựng một dự án ban đầu.
Như hình ảnh bạn nhìn thấy phía dưới, sau khi khởi động Talend chúng ta có thể
Create, Open, Delete, Import một dự án hoặc xem Demo Project một dự án (điều
này thích hợp cho các bạn mới học Talend).

Nếu bạn muốn thay đổi không gian làm việc của dự án, bạn ấn vào button Change
và lựa chọn không gian làm việc mới. Để áp dụng thay đổi này Talend yêu cầu cần
phải được Restart lại, nhấn Restart để đặt lại nơi lưu trữ dự án của bạn.

Chuyên ngành Tin Học Ứng Dụng

6

Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend

Tạo một dự án mới: Nhấn nút Create, hộp thoại tạo mới dự án được mở ra, bạn
nhập tên dự án mới vào ô Project Name (phải là tên duy nhất trong không gian làm
việc của bạn). Talend sẽ tự động sinh ra một tên chuyên môn dựa vào tên dự án mà
bạn đang xây dựng, có thể bỏ qua phần mô tả dự án của bạn ở khung Project
description.


Open một dự án: sau khi tạo mới một dự án, click Open để mở dự án vừa tạo.
Talend yêu cầu bạn kết nối với TalendFore, tuy nhiên bạn có thể click Skip để bỏ
quả bước này.

Chuyên ngành Tin Học Ứng Dụng

7

Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend

Xóa một dự án: Ấn vào button Delete để xóa một dự án hiện có, một hộp thoại
được mở ra cho phép chúng ta lựa chọn xóa đồng thời một hoặc nhiều dự án.

Import một dự án: Nhấn button Import, hộp thoại Import xuất hiện.

Chuyên ngành Tin Học Ứng Dụng

8

Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend

Talend cung cấp cho bạn hai lựa chọn Import: Import project as và Import
several projects.

Import project as: để sử dụng tùy chọn này bạn phải nhập tên một dự án mới và
lựa chọn một dự án có sẵn trong không gian làm việc của bạn để Import.
Import several projects: Tùy chọn này giống như Select root directory nhưng
tại đây bạn có thể lựa chọn Import đồng thời nhiều dự án.
Select root directory: Tùy chọn này cho phép bạn lựa chọn thư mục làm việc của
dự án được Import.
Select archive file: Tùy chọn này cho phép bạn lựa chọn một file Job có sẵn được
export ra từ Talend.
Dưới đây là màn hình làm việc của Talend.

Chuyên ngành Tin Học Ứng Dụng

9

Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend

Màn hình làm việc của Talend có 4 menu cửa sổ cho chúng ta thao tác dữ liệu:
Cửa sổ 1: tại đây ta có thể thiết kế một Job hoặc thực hiện các thao tác với
Database, Hadoop, XML…
Cửa sổ 2: đây là cửa sổ biểu thị các thao tác trích lọc, cập nhật, tải, chỉnh sửa, dữ
liệu…
Cửa sở 3: cửa sổ này chứa các thuộc tính để thực hiện các thao tác trên cửa sổ 2.
Cửa sổ 4: cửa sổ này dùng để thiết lập các thông số theo yêu cầu bài toán cần thực
hiện, chạy và kiểm lỗi cho các thao tác đang thực hiện….
1.2.3. Xây dựng một Job.
Sau khi xây dựng một dự án. Chúng ta bắt đầu xây dựng một Job - đơn vị thực thi
bất cứ những gì mà bạn đang xây dựng trong Talend đó là Job. Về bản chất,

Talend Job là một Class Java đơn. Job ghi nhớ các giá trị điều này giúp cho việc
hiểu công việc của bạn như thế nào, phạm vi thông tin có sẵn cho bạn cũng như
phát triển thông tin đó.
Job bao gồm một hoặc nhiều Job (SubJobs). Một SubJob là một thành phần hoặc
một số thành phần được kết hợp bởi dòng dữ liệu (dataflow). Một Job sẽ có ít nhất
một SubJob.
Tạo mới một Talend Job: Để tạo ra một Talend Job mới, right-click Job
Designs trong khung Talend Repository Browser và lựa chọn Create Job từ
Context Menu.

Chuyên ngành Tin Học Ứng Dụng

10

Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend

Sau khi click Create Job, một hộp thoại tạo Job mới xuất hiện. Chúng ta thực hiện
đặt tên Job mới tương tự hộp thoại Create Project.

Chú ý: khi tạo tên Job mới phải đảm bảo rằng tên này không tồn tại trong Project
của bạn ngay cả khi chúng đã bị xóa vào trong Recycle bin.
Deleting and Restore: để xóa một Job, right-click vào Job cần xóa và chọn hành
động Delete. Tất cả các Job đã xóa đều được lưu trữ vào Repository Recycle bin,
tại thùng rác của Talend ta có thể thực hiện phục hồi lại Job vừa xóa bằng cách
Restore hoặc thực hiện các thao tác khác.

Chuyên ngành Tin Học Ứng Dụng


11

Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend

Duplicating, Copying and Pasting một Talend Job: Điều thuận lợi của bất kì
môi trường phát triển phần mềm nào là khả năng tái sử dụng code có sẵn, có nghĩa
là Job giúp bạn thực hành tốt trên những Job đã tồn tại hoặc là tạo ra những Job có
chung nhiệm vụ. Điều này có nghĩa là Jobs của bạn trở nên thống nhất, dễ bảo trì
và những nổ lực mã hóa sẽ giảm đáng kể thời gian, chi phí của bạn.
Để làm điều này, chọn Job trong cửa sổ Talend Repository Browser, right- click
lên Job và chọn hành động cần thực hiện.

1.21.4. Enabling tHashtInput and tHashOutput.
Từ verson 5.2.3 Talend không tự động kết nối tHashtInput và tHashOutput
cho Job của các bạn, để kích hoạt chúng các bạn làm như sau:
 Trên menu bar chọn File -> Edit Project Properties, một hộp thoại
Project Settings được mở ra.
 Lựa chọn Designer -> Palette Settings.

Chuyên ngành Tin Học Ứng Dụng

12

Bộ môn Tin Học Ứng Dụng



Đố án Tin học ứng dụng: Tìm hiểu Talend
 Click chọn Folder Technical (click button show nếu bạn muốn xem chi tiết
Folder Technical). Click button
.

 Chọn Ok để thoát khỏi hộp thoại Project Settings.

Chuyên ngành Tin Học Ứng Dụng

13

Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend

CHƯƠNG 2 . METADATA VÀ SCHEMAS.

Trong phần này chứa một cuộc thảo luận chi tiết về Metadata, Talend Schemas
và công thức để làm nổi bật một số ít các tính năng được sử dụng hoặc ít được biết
đến có liên quan với Schemas, cùng với các tính năng thường được sử dụng,
chẳng hạn như:
 Hand-cranking a built-in schema.
 Propagating schema changes.
 Creating a generic schema from existing metadata.
 Cutting and pasting schema information.
Chuyên ngành Tin Học Ứng Dụng

14


Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend
 Dropping schemas to empty components.
Quản lý metadata là một trong những khía cạnh quan trọng nhất của phát triển
Talend Jobs, và các hình thức phổ biến nhất của metadata được sử dụng trong
Talend Jobs là schemas.
Để phát triển thành công một Jobs, điều quan trọng là các metadata định nghĩa
cho một nguồn dữ liệu mô tả chính xác định dạng cơ bản dữ liệu của nó. Nếu
không xác định một cách chính xác các dữ liệu sẽ dẫn đến nhiều sai sót và lãng phí
thời gian theo dõi các vấn đề định dạng dữ liệu mà không thể tránh được.
Talend cung cấp một loạt các trình thuật sĩ để giúp metadata có thể lấy dữ liệu từ
nhiều nguồn dữ liệu khác nhau như database tables, delimited files, and Excel
worksheets ….
Schemas được định nghĩa trong metadata, có thể được xây dựng trong các
components hoặc trong metadata repository, như thể hiện trong hình dưới đây:

Nói chung, đó là cách tốt nhất để xác định nguồn và mục tiêu của matadata bằng
cách sử dụng một repository schema.
Trường hợp ngoại lệ cho quy tắc này chính là khi làm việc với một lần nguồn dữ
liệu được tạo ra chẳng hạn như một truy vấn cơ sở dữ liệu (database query). Mặc
dù là một nguồn dữ liệu, nó dễ dàng hơn để lưu trữ các schemas cho các truy vấn
hơn là làm lộn xộn các kho lưu trữ (repository) như các single schemas.
Những lợi ích của việc sử dụng Repository schemas:
 Talend sẽ đảm bảo cho các thay đổi được thực hiện trong Repository schema là
mô hình thác nước cho tất cả các Jobs sử dụng Schema, như vậy tránh được sự
cần thiết phải quét các Jobs thủ công để tìm các schema đã được xây dựng cần
được thay đổi.
 Bạn có thể được tái sử dụng trên nhiều Jobs, do đó làm giảm số lượng các key.

 Báo cáo phân tích ảnh hưởng có thể được tạo ra cho thấy nơi Repository
schema đang được sử dụng trong dự án của bạn. Điều này cho thấy tác động

Chuyên ngành Tin Học Ứng Dụng

15

Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend
của thay đổi nhiều đánh giá chính xác hơn khi lập kế hoạch thay đổi bất kỳ
nguồn dữ liệu cơ bản nào.
Tóm lại, schema không gắn với một nguồn cụ thể, để bạn có thể được sử dụng như
một nguồn tài nguyên chia sẽ trên nhiều loại nguồn dữ liệu hoặc họ có thể sử dụng
để định nghĩa nguồn dữ liệu được tạo ra, chẳng hạn như đầu ra từ các truy vấn
SQL.
2.1 . Hand-cranking a built-in schema.
Trong phương pháp này, tôi đều có một tập tin CSV mà không có một dòng tiêu đề
và yêu cầu để tạo ra một schema cho dữ liệu. Đây là một công thức cơ bản mà hầu
hết độc giả đều quen thuộc: tuy nhiên, nó cung cấp một khuôn khổ cho các cuộc
thảo luận về một số nguyên tắc quan trọng của Talend schema.
Ví dụ như tôi định nghĩa mẫu tin dưới đây:
John Smith,27/11/1990,2012-01-10 10:24:54.953
Như bạn có thể thấy định nghĩa mẫu tin bao gồm: name, Date of birth, timestamp
và age. Trong đó age có gái trị null.
Để tạo được nó như thế nào? Để tạo được mẫu tin đó các bạn làm như sau:
 Tạo
một
Job

jo_cook_ch02_0000_handCrankedSchema

kéo
tFileInputDelimited component từ palette và mở nó bằng cách double-click vào
nó.
 Click Edit Schema button (…) như hình bên dưới:

 Click + button để thêm các trường và định nghĩa các kiểu dữ liệu theo hình
sau:

Chuyên ngành Tin Học Ứng Dụng

16

Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend

 Click Ok để trở lại cửa sổ component.
2.2 . Propagating schema changes.
Thông thường trong quá trình phát triển, nó là cần thiết để thay đổi schema
bằng cách thêm, loại bỏ, hoặc cột lại đặt hàng. Điều này thường là một nhiệm
vụ rất nặng nề, đặc biệt là nếu một schema được sử dụng trong nhiều công việc.
Như đã đề cập trong chương này, lưu trữ schema trong metadata cho phép các
schema được sử dụng lại. Nếu một schema chia sẽ được thay đổi, sau đó
Talend sẽ nhắc nhở để tìm hiểu xem những thay đổi sẽ được áp dụng cho tất cả
các Jobs.
Nếu sự thay đổi này được thực hiện, sau lần đó sau khi công việc được mở ra,
các components sử dụng schema thông thường sẽ được đánh dấu như là lỗi, vì

schema không còn phù hợp.
Talend cung cấp cơ chế đối thoại bên trong schema có một số xử lý từ việc
đảm bảo rằng những thay đổi được đồng hóa vào tất cả các Jobs.
Để thấy được sự thay đổi ta thực hiện ví dụ sau:
 Mở Talend Jobs jo_cook_ch02_0010_propagateSchema có cấu trúc như
hình dưới.

Chuyên ngành Tin Học Ứng Dụng

17

Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend
 Sau đó từ metadata palette, bạn mở Generic schema
sc_cook_0010_genericCustomer. Thêm một trường mới emailAddress như
hình dưới đây:

 Click Finish để lưu schema, sau đó click Yes để áp dụng những thay đổi.

 Click Ok để hoàn tất, bạn sẽ nhìn thấy lỗi như hình dưới.

 Mở tFileOutputDelimited và click chọn Edit schema (…) button.
 Như bạn thấy bảng bên trái khác với bảng bên phải. chọn emailAddress và
click
button để đưa về bảng bên trái.

Chuyên ngành Tin Học Ứng Dụng


18

Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend
 Click Ok để lưu những thay đổi.
Khi Talend cập nhật Job schema cho một thành phần Output, nó không tuyên
truyền thay đổi các thành phần Input. Sử dụng tùy chọn << cho phép các nhà phát
triển để sao chép tất cả các thay đổi từ schema kết quả trở lại vào thành phần trước,
sẵn sàng cho một quy tắc được áp dụng.
2.3 . Creating a generic schema from the existing metadata.
Bất kỳ schema nào cũng có thể dễ dàng chuyển đổi thành một generic schema
để cho phép nó được tái sử dụng. Các công thức sau đây cho thấy hai phương
pháp của việc tạo ra generic schema; thứ nhất là từ một schema tồn tại trước
đó metadata repository và thứ hai từ một schema được xây dựng.
Từ repository schema:
 Mở repository schema fd_cook_0020_customerDelimited như hình sau:

 Right-click vào metadata và lựa chọn copy to Generic schema.
 Di chuyển đến schema trong Folder chapter02, double-click và sửa tên
thành sc_cook_0020_genericCustomer1.
Từ một schema được xây dựng.
 Mở Talend Job jo_cook_ch02_0020_builtInSchema và mở
tFileOutputDelimitted.
 Click chọn
button trong hình dưới đây:

Chuyên ngành Tin Học Ứng Dụng


19

Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend

 Một hộp thoại Save As xuất hiện, lưu với tên sau
sc_cook_0020_genericCustomer.xml.
 Tiếp theo, chúng ta tạo mới một generic schema bằng cách right-click vào
generic schema và lựa chọn Create generic schema from xml.
 Sau đó lựa chọn file xml đã lưu, đặt tên cho generic schema mới là
sc_cook_0020_genericCustomer2.
Talend lưu trữ schema trong các tập tin định dạng XML, không phụ thuộc vào
loại schema. Điều này có nghĩa schema có thể dễ dàng chuyển đổi giữa các
loại, giữa xây schema tự xây dựng hoặc schema repository.
2.4 . Cutting and pasting schema information.
Kỹ thuật này tiết kiệm thời gian thực hiện, nhưng không phải lúc nào cũng rõ
ràng và ngay lập tức, bởi vì schema không có một lựa chọn right-click.
Ví dụ: copy Job jo_cook_ch02_0020_builtInSchema và đổi tên thành jo_cook_
ch02_0030_copySchema.
 Kéo thả tFileOutputExcel component từ cửa sổ palette bên phải vào.
 Mở tFileOutputDelimited và mở Edit schema.
 Click chọn và nhấn Ctrl + A để lựa chọn tất cả các cột.
 Nhấn Ctrl+ C để copy tất các các cột được chọn.
 Mở tFileOutputExcel component và chọn Edit schema
(tFileOutputExcelcomponent đang rỗng).
 Nhấn Ctrl + V để dán các cột.
Talend cho phép bạn sử dụng các phím tắt để copy hoặc dán thông tin của các
cột trong schema.

2.5 . Dropping schemas to empty components.
Viêc này đơn giản là tiết kiệm thời gian hữu ích, đặc biệt là khi sử dụng
generic schema và các Hash component.
 Trong cửa sổ Repository, mở generic schema
sc_cook_0040_genericCustomer bạn sẽ nhìn thấy metadata.

Chuyên ngành Tin Học Ứng Dụng

20

Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend

 Để droping schema ta chỉ kéo metadata bỏ vào tHashOutput. Khi bạn kéo
một schema metadata vào một component, component tự động phân chia
với các schema mới.

Chuyên ngành Tin Học Ứng Dụng

21

Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend
 CHƯƠNG 3. MAPPING DATA.

Chương này chủ yếu là thao tác với các tMap component mà thường là xử lý

chính là thành phần trung tâm của bất kỳ việc chuyển đổi nào của Talend Job.
Các tMap component có khả năng chuyển đổi rộng lớn và do đó trở thành công
cụ tích hợp dữ liệu cho nhiều nhà phát triển lựa chọn. Trong đó tMap
component có khả năng:
 Thêm và xoá các cột.
 Áp dụng quy tắc chuyển đổi một hoặc nhiều cột.
 Lọc dữ liệu đầu vào và đầu ra.
 Kết hợp dữ liệu từ nhiều nguồn vào một hoặc nhiều kết quả đầu ra.
 Phân chia nguồn dữ liệu thành nhiều kết quả đầu ra.
Để thấy rỏ các chức năng chuyển đổi của tMap chúng ta thực hiện 2 ví dụ sau:
Ví dụ 1: Trong ví dụ này ta sẽ tạo một Job để đọc dữ liệu từ một file và ghi kết quả
vào một file mới.
Bước 1: Tạo file Employee.csv có cấu trúc như sau:
Id;Name;Department;StartDate;Salary
1;John Smith;Sales;01-Mar-2012;20000
2;Jane Roberts;Sales;05-Jun-2010;22500
3;Paul Jones;Marketing;22-Jun-2010;30000
4;Mark Jacobs;Sales;05-Apr-2010;22000
5;Mary Stephenson;IT;13-Sep-2009;22500
6;Steve Roberts;IT;14-Dec-2011;18000
7;Margaret Johnson;CEO;30-Feb-2011;41000
8;Paul Harrison;Sales;07-Nov-2009;19500
9;Peter Pedlar;Admin;22-Dec-2012;21000
10;Douglas Peterson;Admin;28-May-2011;21500

Bước 2: Tiếp theo, chúng ta tạo một Talend Job mới với tên MyFristTalendJob.
Một cửa sổ làm việc trống với Job của bạn được tạo ra.
Bước 3: Sau đó, ta thêm các Components vào cửa sổ thiết kế của bạn bằng cách
lựa chọn chúng từ Components Palette. Trong cửa sổ Palette tìm đến 3
components tFileInputDelimited, tMap và tFileOutputDelimited.


Sau khi tìm được các components, ta lần lượt kéo thả chúng vào cửa sổ thiết kế của
bạn, kết quả được như hình dưới đây.

Chuyên ngành Tin Học Ứng Dụng

22

Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend

Tiếp theo, chúng ta sẽ thay đổi nhãn của các components. Như các bạn thấy Talend
sẽ tự động sinh ra các nhãn cho các components giống với giá trị của các
components theo sau là một dấu gạch dưới và một giá trị số phía sau nhãn các
components, nếu chúng xuất hiện nhiều lần trong cửa sổ thiết kế của bạn thì giá trị
số này sẽ được tăng dần. Tôi khuyên bạn nên thay đổi tên các nhãn này.
Chúng ta thay đổi nhãn của 3 components này bằng cách click vào nhãn dưới các
components, sau đó click một lần nữa để cập nhật nhãn mới cho components của
bạn (không phải double-click). Lần lượt thay đổi các nhãn như sau.

Bước 4: Cấu hình EmployeeInputFile (tFileInputDelimited_1). Lựa chọn
EmployeeInputFile và lựa chọn tab component trong cửa sổ bên dưới để cấu hình
lại FileInput như sau:

Chuyên ngành Tin Học Ứng Dụng

23


Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend

Chú ý: File name/Stream là đường dẫn tới file dữ liệu đầu vào cho việc xử lý dữ
liệu, ở đây file Input là file Employee.csv. Thay đổi giá trị Header bằng 1 tức là
giữ lại tiêu đề của file Input, ngược lại Header bằng 0 sẽ không lấy tiêu đề của file
Input cho quá trình xử lý dữ liệu.
Bước 5: Định nghĩa Schema cho EmployeeInputFile: chọn EmployeeInputFile
và chọn component setting trong cửa sổ bên dưới. Sau đó chọn
bên phải Edit
Schema. Talend mở ra cho bạn hộp thoại mới.
Tại hộp thoại này ta có thể: Thêm, xóa, định nghĩa khóa chính, kiểu dữ liệu… cho
các trường (các trường này là các cột dữ liệu trong file Input của chúng ta).
Ta thêm mới các trường và định nghĩa kiểu dữ liệu của các trường giống như sau:

Chuyên ngành Tin Học Ứng Dụng

24

Bộ môn Tin Học Ứng Dụng


Đố án Tin học ứng dụng: Tìm hiểu Talend

Bước 6: Kết nối EmployeeInputFile với MapEmployee: Bây giờ bạn thực hiện
kết nối 2 components. Right-click lên EmployeeInputFile và chọn Row -> Main.
Bạn sẽ nhìn thấy một đường thẳng kéo từ component được lựa xuất hiện theo con
trỏ chuột, di chuyển con trỏ đến MapEmployee và chọn nó.


Bây giờ bạn có thể nhìn thấy sự khác biệt trước và sau khi Map:
• Dấu “chấm than màu vàng” hoặc “dấu x màu đỏ” đã biến mất, điều này có
nghĩa là thành phần kết nối của bạn đã có đầu ra.
• Talend đã tạo ra cho bạn một row kết nối với tên là row1.
• Kết nối component thành công thì 2 components sẽ được gom lại cùng một
phần diện tích như hình bên dưới.

Bước 7: cấu hình và kết nối cho EmployeeOutputFile. Bây giờ chúng ta có thể
cấu hình các thành phần EmployeeOutputFile theo một cách tương tự như
EmployeeInputFile. Tuy nhiên Filename/Stream là nơi lưu trữ tập tin kết quả của
thao tác xử lý dữ liệu, nếu file này chưa tồn tại thì Talend sẽ tạo ra file này cho bạn
ngược lại file này sẽ được thay thế bằng dữ liệu mới vừa được thực thi (tôi khuyên
bạn nên đặt cùng không gian làm việc với file Input).

Chuyên ngành Tin Học Ứng Dụng

25

Bộ môn Tin Học Ứng Dụng


×