Điều chỉnh hiệu suất trong Informatica: Hướng dẫn đầy đủ

⚡ Tóm tắt thông minh

Tối ưu hiệu năng trong Informatica loại bỏ liên kết chậm nhất trong một phiên làm việc, từng lớp một, bắt đầu từ đích và quay ngược lại nguồn, tức là bản đồ.ping, phiên làm việc và cuối cùng là hệ điều hành.

  • 🎯 Thứ tự cố định: Informatica khuyến nghị nên tìm các điểm nghẽn theo thứ tự mục tiêu, sau đó là nguồn, rồi mới đến bản đồ.pingSau đó là phiên, rồi đến hệ thống.
  • 🧵 Số liệu thống kê về chủ đề này đã nói lên tất cả: Trong số các luồng đọc, chuyển đổi và viết, luồng bận rộn nhất chỉ ra lớp cần được xử lý.
  • 🚿 Lọc sớm: Các hàng bị loại bỏ trong quá trình kiểm tra nguồn (Source Qualifier) ​​sẽ không bao giờ được đưa vào quy trình xử lý, vì vậy chúng không gây tốn kém gì ở các bước tiếp theo.
  • 🗄️ Đẩy dữ liệu vào cơ sở dữ liệu: Các thao tác kết hợp, sắp xếp và lọc thường chạy nhanh hơn trong SQL so với trong phép biến đổi dữ liệu.
  • 🧊 Nguyên tắc bộ nhớ đệm: Ít cổng hơn và ít cột tra cứu hơn đồng nghĩa với bộ nhớ đệm nhỏ hơn và ít thao tác phân trang trên đĩa hơn.
  • ⚙️ Cài đặt phiên rất quan trọng: Kích thước bộ đệm DTM, kích thước khối bộ đệm, khoảng thời gian cam kết và tối ưu hóa đẩy xuống được điều chỉnh sau khi ánh xạ.ping sạch sẽ.

Điều chỉnh hiệu suất trong Informatica

Tối ưu hiệu năng trong Informatica là gì?

Tối ưu hiệu năng trong Informatica là quá trình tìm ra thành phần nào hạn chế tốc độ chạy của một phiên làm việc, loại bỏ giới hạn đó, và sau đó lặp lại quy trình tương tự với bất kỳ thành phần nào tiếp theo gây ra tốc độ chậm nhất. Tốc độ của một phiên làm việc chỉ nhanh bằng lớp chậm nhất của nó, vì vậy việc tối ưu hóa một phép biến đổi vốn không phải là vấn đề sẽ không mang lại lợi ích đáng kể nào.

Informatica xác định năm vị trí có thể gây ra tắc nghẽn và khuyến nghị kiểm tra chúng theo một thứ tự cố định.

Mã đơn hàng lớp Nguyên nhân điển hình
1 Target Tốc độ ghi chậm, khoảng thời gian kiểm tra ngắn, kích thước gói dữ liệu mạng cơ sở dữ liệu nhỏ.
2 nguồn Truy vấn chậm, thiếu chỉ mục, đọc các cột không cần thiết.
3 Bản đồping Các phép biến đổi đắt tiền hoặc đặt sai vị trí, bộ nhớ đệm quá lớn.
4 Phiên Buffer bộ nhớ, khoảng thời gian cam kết, phân vùng, loại tải
5 WELFARE Tình trạng quá tải CPU, chờ I/O, phân trang trên máy chủ Dịch vụ Tích hợp.

Thứ tự kiểm tra là có chủ đích. Một mục tiêu không thể hấp thụ các hàng đủ nhanh sẽ khiến mọi lớp phía trước trông chậm chạp, vì vậy nó được kiểm tra trước tiên. Phương pháp đầy đủ được ghi lại trong tài liệu. Hướng dẫn tinh chỉnh hiệu năng PowerCenter.

Cách xác định các điểm nghẽn hiệu suất

Đoán xem lớp nào chậm hơn sẽ tốn nhiều thời gian hơn là đo đạc. Bốn kỹ thuật này bao gồm năm lớp được liệt kê ở trên.

  • Tiến hành một phiên thử nghiệm. Cấu hình một bản sao của Phiên Để ghi dữ liệu vào một tệp phẳng đích. Nếu tốc độ phiên làm việc tăng lên đáng kể, thì đích đến chính là điểm nghẽn. Thủ thuật ngược lại, đọc dữ liệu từ một tệp phẳng nguồn, sẽ giúp xác định điểm nghẽn ở nguồn.
  • Phân tích số liệu thống kê của chủ đề. Trình quản lý chuyển đổi dữ liệu chạy một luồng đọc, một hoặc nhiều luồng chuyển đổi và một luồng ghi. Luồng có thời gian hoạt động cao nhất trong nhật ký phiên sẽ trỏ trực tiếp đến lớp cần xử lý: luồng đọc cho nguồn, luồng chuyển đổi cho bản đồ.ping, người viết bài cho mục tiêu.
  • Phân tích chi tiết hiệu năng. Cho phép thu thập dữ liệu hiệu năng trên phiên và đọc các bộ đếm. Số lượng hàng lỗi cao hoặc số lượng hàng lớn trong bộ nhớ đệm tra cứu cho thấy có vấn đề về bản đồ.ping vấn đề nằm ở cơ sở dữ liệu chứ không phải vấn đề về cơ sở dữ liệu.
  • Giám sát hệ thống. OperaCác công cụ hệ thống hiển thị mức sử dụng CPU, thời gian chờ I/O và phân trang, cùng với... Giám sát quy trình làm việc Các chỉ số về tài nguyên cho thấy máy móc đó đơn giản là đã hết công suất.

Khi đã xác định được lớp chịu trách nhiệm, các lời khuyên ở cấp độ chuyển đổi trong các phần tiếp theo sẽ trở nên đáng áp dụng. Các phần được sắp xếp theo thứ tự đường dẫn xử lý, từ điểm dữ liệu đi vào... bản đồping đến mức nó được tổng hợp lại.

Chuyển đổi bộ định nguồn

Mỗi hàng mà Source Qualifier không đọc là một hàng mà không cần bất kỳ phép biến đổi nào khác xử lý, điều này khiến nó trở thành vị trí tiết kiệm nhất trong toàn bộ bản đồ.ping Để tiết kiệm thời gian.

  • Chỉ mang theo các cột được yêu cầu từ nguồn. Hầu hết các trường hợp không phải tất cả các cột của bảng nguồn đều được yêu cầu, vì vậy chỉ mang theo các trường bắt buộc bằng cách xóa các cột không cần thiết.
  • Tránh sử dụng mệnh đề ORDER BY bên trong mệnh đề. Vòng loại nguồn Ghi đè SQL. Mệnh đề ORDER BY yêu cầu xử lý bổ sung và hiệu suất có thể được cải thiện bằng cách loại bỏ nó.

Chuyển đổi bộ lọc

Việc lọc dữ liệu tuân theo nguyên tắc tương tự ở bước tiếp theo trong quy trình: loại bỏ các hàng không mong muốn ở thời điểm sớm nhất mà bản đồ được tạo ra.ping Có đủ thông tin để nhận dạng chúng.

  • Sử dụng biến đổi bộ lọc càng sớm càng tốt bên trong bản đồpingNếu dữ liệu không mong muốn có thể được loại bỏ sớm trong bản đồ.pingĐiều đó sẽ làm tăng thông lượng.
  • Sử dụng bộ lọc nguồn để lọc dữ liệu. Bạn cũng có thể sử dụng ghi đè SQL của bộ lọc nguồn để lọc các bản ghi, thay vì sử dụng phép biến đổi bộ lọc.

Chuyển đổi Joiner

Việc gia nhập là thao tác tốn kém thực sự đầu tiên trong một bản đồ điển hình.pingVì dữ liệu nguồn chính cần được lưu vào bộ nhớ đệm trước khi các hàng chi tiết có thể được đối chiếu.

  • Luôn ưu tiên thực hiện các phép nối trong cơ sở dữ liệu nếu có thể, vì các phép nối trong cơ sở dữ liệu nhanh hơn so với các phép nối được tạo trong Informatica. chuyển đổi thợ mộc.
  • Sắp xếp dữ liệu trước khi nối nếu có thể, vì nó làm giảm I/O đĩa được thực hiện trong quá trình nối.
  • Hãy tạo bảng có số hàng ít hơn làm bảng chính.

Điểm thứ ba là điểm thường bị bỏ sót nhất. Dịch vụ tích hợp lưu trữ nguồn chính, vì vậy việc chỉ định bảng nhỏ hơn làm nguồn chính sẽ giúp giữ cho bộ nhớ đệm đó nhỏ.

Tra cứu chuyển đổi

Tra cứu có thể truy vấn cơ sở dữ liệu một lần cho mỗi hàng hoặc xây dựng bộ nhớ đệm trong bộ nhớ, và cả hai cách đều mang lại lợi ích khi sử dụng nguồn tra cứu nhỏ hơn và được lập chỉ mục tốt hơn.

  • Tạo chỉ mục cho cột trong một bảng tra cứu Điều này được sử dụng trong điều kiện tra cứu. Vì bảng tra cứu sẽ được truy vấn để tìm kiếm dữ liệu phù hợp, việc thêm chỉ mục sẽ giúp tăng hiệu suất.
  • Nếu có thể, thay vì sử dụng phép chuyển đổi tra cứu, hãy sử dụng phép nối trong cơ sở dữ liệu. Khi kết nối cơ sở dữ liệu nhanh hơn, hiệu suất sẽ tăng lên.
  • Xóa các cột không cần thiết khỏi bảng tra cứu và chỉ giữ lại các cột cần thiết. Điều này sẽ giảm chi phí tìm nạp các cột bổ sung từ cơ sở dữ liệu.

Chuyển đổi tổng hợp

An Bộ tổng hợp Nó lưu trữ dữ liệu trong bộ nhớ đệm trong khi nhóm các hàng, vì vậy bất cứ điều gì làm giảm lượng dữ liệu truy cập vào nó đều làm giảm dung lượng bộ nhớ đệm cần thiết.

  • Hãy lọc dữ liệu trước khi tổng hợp. Nếu bạn đang sử dụng phép biến đổi bộ lọc trong bản đồ, hãy làm như vậy.pingSau đó, hãy lọc dữ liệu trước khi sử dụng bộ tổng hợp vì điều này sẽ giảm thiểu các thao tác tổng hợp không cần thiết.
  • Giới hạn số lượng cổng được sử dụng trong phép biến đổi tổng hợp. Điều này sẽ giảm dung lượng dữ liệu mà phép biến đổi tổng hợp lưu trữ trong bộ nhớ cache.

Điều chỉnh cấp độ phiên trong Informatica

Khi bản đồping Bản thân quá trình xử lý đã sạch sẽ, những cải thiện còn lại đến từ các thuộc tính của phiên. Nên thay đổi từng thiết lập một, và chạy thử nghiệm tính thời gian sau mỗi lần thay đổi, vì một số thiết lập sẽ đánh đổi bộ nhớ lấy tốc độ.

Giàn cảnh Những gì nó kiểm soát Khi nào nên thay đổi
Kích thước bộ đệm DTM Tổng dung lượng bộ nhớ mà Dịch vụ Tích hợp phân bổ cho các khối dữ liệu nguồn và đích. Tăng mức phí khi phiên làm việc xử lý nhiều phân vùng, nguồn hoặc đích.
Buffer kích thước khối Kích thước của một khối bộ nhớ riêng lẻ Tăng giá trị khi số hàng quá lớn; giảm giá trị khi bộ nhớ vật lý bị hạn chế.
Khoảng thời gian cam kết Có bao nhiêu dòng được ghi trước khi lệnh commit được thực thi? Hãy báo lỗi khi luồng ghi dữ liệu mất thời gian chờ đợi các điểm kiểm tra cơ sở dữ liệu.
Tối ưu hóa đẩy xuống Bao nhiêu phần của bản đồping Logic được chuyển đổi thành SQL và được thực thi bởi cơ sở dữ liệu. Sử dụng khi nguồn và đích cùng nằm trên một cơ sở dữ liệu mạnh mẽ.

Buffer Bộ nhớ được tính toán dựa trên công thức đã được ghi chép chứ không phải dựa trên phỏng đoán. Dịch vụ Tích hợp phân bổ ít nhất hai khối cho mỗi phân vùng nguồn và đích, do đó số lượng khối bộ đệm phiên là (tổng số nguồn + tổng số đích) nhân với hai, và kích thước bộ đệm DTM là số lượng khối đó nhân với kích thước khối bộ đệm và chia cho 0.9.

Việc tối ưu hóa bằng phương pháp đẩy xuống (pushdown optimization) cần được lưu ý. Phương pháp này chỉ hữu ích khi cơ sở dữ liệu thực sự nhanh hơn máy chủ Integration Service và logic chuyển đổi có thể được thể hiện bằng... SQL; logic không thể dịch được sẽ vẫn nằm trong phiên làm việc, vì vậy lợi ích thường nhỏ hơn dự kiến. Hãy đo lường trước và sau khi sử dụng thay vì bật nó làm mặc định.

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

Phân vùng hữu ích khi máy chủ Dịch vụ Tích hợp có CPU dự phòng và nguồn cũng như đích có thể xử lý các kết nối song song. Trên một máy đã quá tải, hoặc đối với đích chỉ có một luồng xử lý, việc phân vùng bổ sung sẽ làm tăng chi phí mà không rút ngắn thời gian chạy.

Hãy đặt kích thước bộ nhớ đệm chỉ mục và dữ liệu đủ lớn để chứa toàn bộ nguồn tra cứu, nếu không Dịch vụ Tích hợp sẽ ghi các trang vào ổ đĩa. Nhật ký phiên sẽ báo cáo kích thước bộ nhớ đệm thực tế cần thiết, vì vậy hãy chạy một lần với kích thước tự động và đọc lại giá trị đó.

Mỗi thao tác chèn dữ liệu cũng duy trì mọi chỉ mục và ràng buộc trên bảng đích, và chi phí này tăng lên theo kích thước bảng. Thống kê cơ sở dữ liệu lỗi thời càng làm cho vấn đề trở nên tồi tệ hơn. Luồng ghi dữ liệu sau đó trở thành luồng bận rộn nhất, đây chính là dấu hiệu điển hình của tắc nghẽn trên bảng đích.

Đúng vậy, vì quá trình chuyển đổi có thể giải phóng từng nhóm ngay khi kết thúc thay vì lưu trữ toàn bộ dữ liệu vào bộ nhớ đệm. Các hàng dữ liệu đến phải được sắp xếp theo các cổng nhóm, và phiên làm việc sẽ thất bại nếu chúng không được sắp xếp như vậy.

Đối với tải trọng lớn chỉ cần chèn, hãy thảping Việc thiết lập chỉ mục và ràng buộc trước rồi mới xây dựng lại chúng sau thường nhanh hơn. Các lệnh SQL trước và sau phiên trên thuộc tính phiên là nơi thông thường để lập trình cả hai bước này.

Chế độ ghi hàng loạt bỏ qua phần lớn quá trình ghi nhật ký cơ sở dữ liệu và tải nhanh hơn, nhưng nó ngăn cản việc phục hồi và không hoạt động với tất cả các mục tiêu hoặc với các chiến lược cập nhật. Chế độ thông thường ghi dữ liệu thông qua đường dẫn được ghi nhật ký thông thường và vẫn có thể phục hồi được.

Các mô hình được huấn luyện dựa trên thời gian chạy lịch sử sẽ cảnh báo về một phiên hoạt động đã lệch khỏi thời lượng bình thường từ rất lâu trước khi bất kỳ ai nhận ra, cũng như các lỗi liên quan đến cụm. Chúng chỉ ra lần chạy nào đã thay đổi — lớp chịu trách nhiệm vẫn cần được xác nhận từ số liệu thống kê luồng.

Nó có thể viết lại truy vấn, đề xuất các ứng viên chỉ mục và giải thích kế hoạch thực thi được dán vào trình chỉnh sửa. Tuy nhiên, nó không thể xem kho lưu trữ hoặc nhật ký phiên, vì vậy bất kỳ việc viết lại nào cũng phải được xác thực dựa trên kế hoạch thực tế và số lượng hàng.

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