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.

  • 🔀 Nhiều điều kiện: Một bộ định tuyến duy nhất thay thế chuỗi các phép biến đổi bộ lọc bằng cách kiểm tra nhiều điều kiện trong một lần xử lý.
  • 📦 Cấu trúc nhóm: Một nhóm đầu vào duy nhất cung cấp dữ liệu cho các nhóm đầu ra do người dùng định nghĩa, cộng thêm một nhóm mặc định tự động.
  • 🗃️ Nhóm mặc định: Các hàng không đáp ứng mọi điều kiện sẽ được chuyển đến đây, vì vậy dữ liệu bị từ chối vẫn có thể được thu thập thay vì bị mất.
  • 🧪 Ví dụ thực tế: Một nhóm có tên deptno_20 với điều kiện deptno=20 chỉ tải các hàng của phòng ban 20 vào EMP_TARGET.
  • ♻️ chồng chéoping quy tắc: Một hàng thỏa mãn hai điều kiện sẽ được chuyển một lần đến mỗi nhóm đầu ra phù hợp.
  • Hiệu suất: Dữ liệu nguồn chỉ được đọc một lần, điều này giúp giảm chi phí của một Router so với việc sử dụng nhiều phép biến đổi Filter để đọc cùng một hàng dữ liệu.

Chuyển đổi bộ định tuyến trong Informatica

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ản đồping Khung thiết kế chứa nguồn EMP, bộ định danh nguồn và định nghĩa mục tiêu EMP_TARGET.

Bước 2) Sau đó trên bản đồping

  1. Chọn menu Chuyển đổi
  2. 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.

Menu Chuyển đổi đã được mở trong Bản đồping Trình thiết kế với tùy chọn Tạo được chọn

Bước 3) Trong cửa sổ tạo chuyển đổi

  1. Chọn chuyển đổi bộ định tuyến
  2. Nhập tên cho phép chuyển đổi “rtr_deptno_10”
  3. 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.

Tạo cửa sổ Chuyển đổi với Router được chọn và nhập tên rtr_deptno_10.

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.

Tất cả các cột Source Qualifier được kéo vào phép biến đổi Router rtr_deptno_10

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ó.

  1. Chọn tab nhóm
  2. Nhập tên nhóm “deptno_20”
  3. 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ị.

Tab Nhóm của phép biến đổi Router với nhóm do người dùng định nghĩa có tên deptno_20 được thêm vào.

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.

Trình soạn thảo biểu thức chứa điều kiện lọc nhóm deptno=20 cho nhóm deptno_20

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.

Điều kiện lọc nhóm được lưu vào nhóm deptno_20 trong cửa sổ Chỉnh sửa Chuyển đổi.

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.

Các cổng của nhóm đầu ra deptno_20 được liên kết với bảng mục tiêu 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.

Câu Hỏi Thường Gặp

Đúng vậy. Dịch vụ tích hợp đánh giá mọi điều kiện lọc nhóm đối với mọi hàng, vì vậy một hàng thỏa mãn hai điều kiện sẽ được chuyển một lần qua mỗi nhóm phù hợp. Sự chồng chéoping Các điều kiện thường là nguyên nhân gây ra hiện tượng các hàng trùng lặp không mong muốn.

Các hàng được chuyển đến đó sẽ bị loại bỏ khỏi quy trình xử lý. Việc để nhóm mặc định không được kết nối là cách thông thường để loại bỏ dữ liệu mà không có điều kiện nào yêu cầu, và đó cũng là lý do tại sao các hàng bị từ chối đôi khi biến mất mà không được chú ý.

Không. Nó xuất hiện tự động khi nhóm do người dùng định nghĩa đầu tiên được tạo, không có điều kiện lọc nhóm nào và Trình thiết kế không cho phép chỉnh sửa hoặc xóa nó. Chỉ các nhóm do người dùng định nghĩa mới có thể được thêm, đổi tên hoặc xóa.

Chính xác là một. Mỗi hàng đều đi vào thông qua nhóm đầu vào duy nhất đó, và Trình thiết kế sao chép các định nghĩa cổng của nó vào từng nhóm đầu ra để các cổng không cần phải được tạo lại cho mỗi nhánh của sơ đồ.ping.

Với phép biến đổi Union, chấp nhận nhiều nhóm đầu vào với các cổng khớp nhau và trả về một đường dẫn đầu ra duy nhất. Router chia dữ liệu thành nhiều nhánh; chỉ có Union mới kết hợp các nhánh lại với nhau thành một đích duy nhất.

Thứ tự của các nhóm đầu ra được kết nối sẽ thiết lập thứ tự mà Dịch vụ Tích hợp đánh giá các điều kiện. Nó không ngăn cản một hàng khớp với các nhóm sau đó, vì vậy thứ tự ảnh hưởng đến trình tự chứ không phải hàng nào được chọn.

Các trợ lý AI phân tích dữ liệu nguồn để tiết lộ cách các giá trị thực sự được phân bố, sau đó đề xuất các điều kiện phân tách và gắn cờ các phần trùng lặp có thể tạo ra các hàng trùng lặp. Các cố vấn dựa trên học máy cũng phát hiện các cột có tỷ lệ giá trị null cao trước khi các hàng đó âm thầm được đưa vào nhóm mặc định.

Copilot soạn thảo các biểu thức Boolean và câu lệnh SQL tương ứng một cách nhanh chóng, giúp tiết kiệm thời gian cho các quy tắc lặp đi lặp lại. Nó không thể nhìn thấy tên cổng hoặc dung lượng dữ liệu của bạn, vì vậy hãy xác thực mọi đề xuất trong Trình chỉnh sửa biểu thức trước khi lưu bản đồ.ping.

Tóm tắt bài viết này với: