Chuyển đổi bộ định tuyến trong Informatica: Ví dụ về nhiều điều kiện
⚡ Tóm tắt thông minh
Trong Informatica, quá trình chuyển đổi Router là một đối tượng hoạt động, được kết nối, kiểm tra các hàng dữ liệu đến dựa trên nhiều điều kiện lọc nhóm cùng một lúc và gửi mỗi hàng đến nhóm đầu ra phù hợp hoặc đến nhóm mặc định.

Chuyển đổi bộ định tuyến là gì?
Biến đổi Router là một biến đổi chủ động và có kết nối, tương tự như biến đổi Filter, được sử dụng để lọc dữ liệu nguồn.
Ngoài chức năng lọc, tính năng bổ sung được cung cấp là dữ liệu bị loại bỏ (dữ liệu đã lọc) cũng có thể được thu thập trên bản đồ.pingNgoài ra, có thể áp dụng nhiều điều kiện lọc khác nhau để thu được nhiều bộ dữ liệu.
Ví dụ, khi lọc dữ liệu theo deptno = 10, ta cũng có thể nhận được những bản ghi có deptno khác 10. Như vậy, phép biến đổi Router tạo ra nhiều nhóm đầu ra, và mỗi nhóm đầu ra có thể có điều kiện lọc riêng.
Ngoài ra còn có một nhóm mặc định. Nhóm mặc định này chứa các tập bản ghi không thỏa mãn bất kỳ điều kiện nhóm nào. Ví dụ, nếu bạn đã tạo hai nhóm cho các điều kiện lọc deptno=10 và deptno=20 tương ứng, thì những bản ghi không có deptno 10 và 20 sẽ được đưa vào nhóm mặc định này.
Tóm lại, dữ liệu bị các nhóm lọc loại bỏ sẽ được nhóm mặc định này thu thập, và đôi khi có yêu cầu lưu trữ dữ liệu bị loại bỏ này. Trong những trường hợp như vậy, nhóm đầu ra mặc định có thể hữu ích.
Để cho phép nhiều điều kiện lọc, phép biến đổi Router cung cấp tùy chọn nhóm.
- Có một nhóm đầu vào mặc định dùng để nhận dữ liệu đầu vào.
- Ngoài ra còn có một nhóm đầu ra mặc định cung cấp tất cả các dữ liệu không được lọc theo bất kỳ điều kiện nào.
- Với mỗi điều kiện lọc, một nhóm đầu ra được tạo trong quá trình chuyển đổi Router. Bạn có thể kết nối các đích khác nhau với các nhóm khác nhau này.
Các thành phần của quá trình chuyển đổi bộ định tuyến
Trước khi xây dựng bản đồpingViệc hiểu rõ bốn phần mà Trình thiết kế tạo ra cho bạn sẽ rất hữu ích. Một phép biến đổi Router bao gồm một nhóm đầu vào, một tập hợp các nhóm đầu ra, các cổng bên trong chúng và các điều kiện quyết định vị trí của mỗi hàng.
| Thành phần | Những gì nó |
|---|---|
| Nhóm đầu vào | Điểm vào duy nhất cho quá trình chuyển đổi. Mỗi hàng dữ liệu đầu vào đều đi qua đây một lần, bất kể có bao nhiêu nhóm đầu ra. |
| Nhóm đầu ra do người dùng định nghĩa | Một nhóm do bạn tự tạo và đặt tên, ví dụ như deptno_20. Mỗi nhóm đều có điều kiện lọc riêng. |
| Nhóm đầu ra mặc định | Được tạo tự động ngay khi nhóm do người dùng định nghĩa đầu tiên tồn tại. Nhóm này không có điều kiện lọc và không thể chỉnh sửa hoặc xóa. |
| Điều kiện lọc nhóm | Một biểu thức boolean được viết trong Trình soạn thảo biểu thức. Các hàng mà biểu thức đó đánh giá là TRUE sẽ được giữ nguyên thông qua nhóm đó. |
Trình thiết kế sao chép các định nghĩa cổng từ nhóm đầu vào vào mọi nhóm đầu ra, do đó không cần phải tạo lại các cổng theo từng nhóm. Từ thiết kế này có hai nguyên tắc sau:
- Các hàng có thể được sao chép. Nếu một hàng thỏa mãn nhiều hơn một điều kiện lọc nhóm, nó sẽ được chuyển một lần đến mỗi nhóm phù hợp. Đây thường là lý do tại sao đích đến lại có nhiều hàng hơn nguồn.
- Có thể xóa các hàng. Nếu nhóm mặc định không được kết nối, các hàng dữ liệu đến nhóm đó sẽ biến mất khỏi quy trình xử lý, đây là cách nhanh nhất để loại bỏ dữ liệu không mong muốn.
So sánh phép biến đổi bộ định tuyến và phép biến đổi bộ lọc
Cả hai đối tượng đều kiểm tra dữ liệu dựa trên một điều kiện, và cả hai đều là các phép biến đổi chủ động, vì vậy việc lựa chọn giữa chúng phụ thuộc vào số lượng điều kiện liên quan và liệu các hàng bị loại bỏ có quan trọng hay không.
| Điểm so sánh | Biến đổi bộ lọc | Biến đổi bộ định tuyến |
|---|---|---|
| Điều kiện cho mỗi đối tượng | Một | Một hoặc nhiều, mỗi nhóm riêng biệt. |
| Hàng bị từ chối | Đã bị hủy và không còn khả dụng | Được thu thập trong nhóm mặc định |
| Nhóm đầu ra | Một đường ống đầu ra duy nhất | Một pipeline cho mỗi nhóm, cộng thêm nhóm mặc định. |
| Nguồn tin cho biết | Một lần đọc cho mỗi bộ lọc khi các điều kiện được liên kết với nhau. | Một cuốn sách phù hợp cho mọi hoàn cảnh |
| Sử dụng điển hình | Xóa các hàng không bao giờ cần thiết | Chia một nguồn thành nhiều mục tiêu |
Kiểm tra ba điều kiện bằng phép biến đổi Filter có nghĩa là ba đối tượng, và trong thiết kế chuỗi, các hàng nguồn giống nhau được đánh giá lặp đi lặp lại. Một Router thực hiện cùng một công việc trong một lần chạy duy nhất, đó là lý do tại sao nó thường là lựa chọn hiệu quả hơn khi điều kiện thứ hai xuất hiện. Đối với một điều kiện đơn lẻ không cần thiết, cách đơn giản hơn là... Biến đổi bộ lọc vẫn là lựa chọn phù hợp hơn.
Hướng dẫn cách tạo chuyển đổi bộ định tuyến trong Informatica
Hướng dẫn dưới đây xây dựng một Router gửi thông tin nhân viên của phòng ban 20 đến một bảng đích. Hãy làm theo chín bước theo đúng thứ tự trong Sơ đồ.ping Nhà thiết kế.
Bước 1) Tạo ra một bản đồping Có nguồn là “EMP” và đích là “EMP_TARGET”. Bản đồping Khung thiết kế sau đó sẽ chứa định nghĩa nguồn, bộ lọc nguồn và định nghĩa đích, như minh họa bên dưới.
Bước 2) Sau đó trên bản đồping
- Chọn menu Chuyển đổi
- Chọn tùy chọn tạo
Đường dẫn menu được sử dụng để khởi động trình hướng dẫn được đánh dấu nổi bật trong ảnh chụp màn hình tiếp theo.
Bước 3) Trong cửa sổ tạo chuyển đổi
- Chọn chuyển đổi bộ định tuyến
- Nhập tên cho phép chuyển đổi “rtr_deptno_10”
- Chọn tùy chọn Tạo
Bước 4) Quá trình chuyển đổi Router sẽ được tạo trong bản đồ.pingChọn tùy chọn "Xong" trong cửa sổ. Cửa sổ "Tạo phép biến đổi" được sử dụng trong cả hai bước được hiển thị bên dưới.
Bước 5) Kéo và thả tất cả các cột từ Vòng loại nguồn Chuyển đổi sang Router. Mỗi cổng hiện được liên kết vào đối tượng mới, như ảnh chụp màn hình cho thấy.
Bước 6) Double Nhấp chuột vào phép biến đổi Router, sau đó trong thuộc tính biến đổi của nó.
- Chọn tab nhóm
- Nhập tên nhóm “deptno_20”
- Bấm vào điều kiện lọc nhóm
Tiếp theo, tab Nhóm với nhóm mới được thêm vào sẽ hiển thị.
Bước 7) Trong Trình chỉnh sửa biểu thức, nhập điều kiện lọc deptno=20 và chọn nút OK. Trình chỉnh sửa chứa điều kiện này được hiển thị bên dưới.
Bước 8) Chọn nút OK trong cửa sổ nhóm. Điều kiện giờ sẽ hiển thị bên cạnh nhóm, như ảnh chụp màn hình tiếp theo cho thấy.
Bước 9) Kết nối các cổng từ nhóm deptno_20 của phép biến đổi Router với các cổng trong bảng đích. Bản đồ hoàn chỉnhping Chạy từ nguồn thông qua nhóm đến EMP_TARGET.
Bây giờ, khi bạn thực thi bản đồ nàyping, các bản ghi đã lọc sẽ được tải vào bảng mục tiêu.
Các phương pháp hay nhất và lỗi thường gặp khi chuyển đổi bộ định tuyến
Bản đôping Phần trên sử dụng một nhóm duy nhất, giúp che giấu hầu hết các hành vi gây ra yêu cầu hỗ trợ sau này. Các điểm dưới đây sẽ đề cập đến những thay đổi khi nhóm thứ hai xuất hiện.
- Hãy chú ý đến các hàng trùng lặp. Các điều kiện nhóm không loại trừ lẫn nhau. Việc ghi sal>1000 trong một nhóm và deptno=20 trong nhóm khác có nghĩa là một nhân viên đáp ứng cả hai điều kiện sẽ được ghi nhận hai lần. Hãy làm cho các điều kiện loại trừ lẫn nhau, hoặc chấp nhận sự trùng lặp một cách có chủ ý.
- Hãy kết nối nhóm mặc định khi vấn đề từ chối phát sinh. Các hàng không thỏa mãn bất kỳ điều kiện nào sẽ bị mất trừ khi nhóm mặc định được kết nối với tệp đích hoặc tệp bị loại bỏ. Các tải có thể kiểm toán thường giữ lại chúng.
- Đặt tên nhóm theo quy tắc, chứ không phải theo mục tiêu. Ví dụ nhóm deptno_20 đọc rất rõ ràng; một nhóm có tên group1 thì không. Lưu ý rằng bản thân phép biến đổi được đặt tên là rtr_deptno_10 trong hướng dẫn này trong khi nhóm lọc theo deptno 20, đây chính là kiểu không khớp mà một tiêu chuẩn đặt tên có thể ngăn chặn.
- Hãy lọc dữ liệu trước khi định tuyến nếu có thể. Việc loại bỏ những hàng mà không nhóm nào muốn sử dụng sẽ tiết kiệm chi phí hơn trong truy vấn Source Qualifier so với việc giữ chúng trong Router.
- Không nên coi Router như một điểm nối. Nó chia một đường dẫn dữ liệu thành nhiều đường dẫn khác nhau. Việc hợp nhất các nhánh lại với nhau cần đến phép biến đổi Union, và việc kết hợp hai nguồn dữ liệu khác nhau cần đến phép biến đổi Union. Chuyển đổi thợ mộc.
Một nhóm có điều kiện trả về NULL thay vì TRUE hoặc FALSE được coi là không khớp, do đó các hàng có giá trị null trong cột được kiểm tra sẽ được đưa vào nhóm mặc định. Việc xử lý các giá trị null một cách rõ ràng trong điều kiện sẽ tránh được sự bất ngờ đó. điều chỉnh hiệu suất và thử nghiệm.








