Computer >> Máy Tính >  >> Lập trình >> Cơ sở dữ liệu

Khái niệm cơ bản về Oracle GoldenGate

Bài đăng trên blog này khám phá những kiến ​​thức cơ bản về Oracle® GoldenGate® và các chức năng của nó. Bởi vì nó được tách ra khỏi kiến ​​trúc cơ sở dữ liệu, GoldenGatefacilit hóa việc thu thập dữ liệu và tích hợp thay đổi giao dịch theo thời gian thực không đồng nhất và đồng nhất.

Giới thiệu về Oracle GoldenGate

Oracle GoldenGate là một sản phẩm phần mềm cho phép bạn sao chép, lọc và chuyển đổi dữ liệu từ cơ sở dữ liệu này sang cơ sở dữ liệu khác.

Nó cho phép sao chép dữ liệu giữa cơ sở dữ liệu Oracle và các cơ sở dữ liệu không đồng nhất khác được hỗ trợ.

Tại sao sử dụng GoldenGate?

Một số lý do để sử dụng GoldenGate bao gồm các mục sau:

  • Dữ liệu di chuyển theo thời gian thực và giảm độ trễ.
  • Chỉ các giao dịch đã cam kết mới được di chuyển, tạo ra tính nhất quán và cải thiện hiệu suất.
  • Các phiên bản và bản phát hành khác nhau của cơ sở dữ liệu Oracle được hỗ trợ, cùng với nhiều loại cơ sở dữ liệu không đồng nhất chạy trên các hệ điều hành khác nhau.
  • Nó sử dụng kiến ​​trúc đơn giản và có cấu hình dễ dàng.
  • Nó có hiệu suất cao với chi phí tối thiểu cho cơ sở dữ liệu và cơ sở hạ tầng bên dưới.

Yêu cầu kinh doanh mà GoldenGate hỗ trợ

Sử dụng GoldenGate để đáp ứng các yêu cầu kinh doanh sau:

  • Hoạt động kinh doanh liên tục và tính khả dụng cao
  • Tải ban đầu và di chuyển cơ sở dữ liệu và nâng cấp mà không có thời gian chết
  • Tích hợp dữ liệu
  • Tường thuật trực tiếp

Cách sử dụng GoldenGate

Có nhiều kiến ​​trúc khác nhau có thể được cấu hình, từ kiến ​​trúc đơn hướng đơn giản đến kiến ​​trúc ngang hàng phức tạp hơn. Tham khảo hình ảnh sau để xem các cấu trúc liên kết khác nhau được GoldenGate hỗ trợ.

Khái niệm cơ bản về Oracle GoldenGate

Nguồn hình ảnh: https://www.vitalsofttech.com/goldengate-replication-topologies/

Kiến trúc logic GoldenGate

Hình ảnh sau đây cho thấy các thành phần hoặc quy trình của Kiến trúc GoldenGatearchitecture, được mô tả trong phần này:

Khái niệm cơ bản về Oracle GoldenGate

Nguồn hình ảnh :https://www.vitalsofttech.com/wp-content/uploads/2013/06/GoldenGate-Replication.jpg

Người quản lý

Người quản lý là quy trình bắt đầu các quy trình GoldenGate khác. Thisprocess phải chạy trên cả hệ thống nguồn và đích cho cấu hình và phải khởi chạy tất cả các quy trình GoldenGate khác. Quá trình quản lý cũng phân bổ không gian đĩa bằng cách xóa các đường mòn cũ hoặc giải nén các tệp. Yêu cầu một quy trình quản lý cho mỗi lần cài đặt GoldenGate.

Trích xuất

Quá trình trích xuất bao gồm việc trích xuất dữ liệu, được gọi là thu thập dữ liệu inGoldenGate. Trích xuất là quá trình được cấu hình để chạy dựa trên cơ sở dữ liệu khai thác nguồn.

Extract chịu trách nhiệm nắm bắt các giao dịch ngôn ngữ mô hình dữ liệu (DML) đã cam kết và ngôn ngữ định nghĩa dữ liệu (DDL) từ các bản ghi làm lại của Oracle. Trích xuất ghi những thay đổi dữ liệu này thành các đường nhỏ hoặc trích xuất tệp.

Đường nhỏ

Một dấu vết là một loạt các tệp trên đĩa nơi GoldenGate lưu trữ các thay đổi đã được ghi lại, hỗ trợ việc trích xuất và nhân rộng liên tục các thay đổi cơ sở dữ liệu. Đây là các tệp nhị phân độc lập với nền tảng ở cấp hệ điều hành.

Bản sao

Replicat là quá trình cung cấp dữ liệu đến cơ sở dữ liệu đích. Nó đọc đường dẫn trên cơ sở dữ liệu đích, cấu trúc lại các hoạt động DML hoặc DDL và áp dụng chúng vào cơ sở dữ liệu đích.

Bơm

Quy trình bơm, cũng là quy trình trích xuất, là tùy chọn trong GoldenGatesetup. Quá trình này sao chép các tệp đường mòn có chứa dữ liệu vào hệ thống đích.

Trạm kiểm soát

Quá trình bơm chiết xuất và Replicat sử dụng các trạm kiểm soát để theo dõi tiến trình tương lai của chúng. Cơ chế này đánh dấu vị trí của các thay đổi dữ liệu đã được truy xuất hoặc áp dụng từ các tệp đường mòn. Điều này hữu ích khi các quy trình cần khôi phục mà không bị mất dữ liệu hoặc cần biết điểm bắt đầu sau khi xảy ra lỗi.

Bộ sưu tập

Quá trình thu thập chạy trên hệ thống đích và ghi các thay đổi dữ liệu từ cơ sở dữ liệu nguồn trong các tệp đường mòn đích, được gọi là RMTTRAIL .Trước khi sao chép nó vào RMTTRAIL , bộ sưu tập sẽ tập hợp lại các tệp.

Chế độ chụp GoldenGate

Oracle GoldenGate hỗ trợ các kiểu bắt sau, được mô tả trong phần này:

  • Chụp cổ điển
  • Chụp tích hợp

Chế độ chụp cổ điển

Chụp cổ điển là cơ chế chụp GoldenGate ban đầu, đọc dữ liệu trực tiếp từ nhật ký làm lại trực tuyến và nhật ký làm lại được lưu trữ nếu có thể. Dữ liệu bổ sung có thể được tìm nạp từ tệp cơ sở dữ liệu nếu cần.

Chế độ chụp tích hợp

Chụp tích hợp (IC), được giới thiệu trong phiên bản Oracle GoldenGate 11.2.1, đã có sẵn cho Oracle 11.2.0.3 với bản vá cơ sở dữ liệu dành riêng cho cơ sở dữ liệu 11.2.0.3 cho Giải nén tích hợp 11.2.x (MOS Note 1411356.1). IC sử dụng máy chủ khai thác alog trên hệ thống nguồn hoặc trong cơ sở dữ liệu Oracle hạ lưu, tương tự như chế độ chờ lôgic DataGuard hoặc các luồng Oracle.

IC là một dạng mới của quá trình giải nén, đã chuyển vào bên trong cơ sở dữ liệu nguồn. Trong quy trình trích xuất cổ điển truyền thống, trích xuất hoạt động trên nhật ký theredo bên ngoài miền của cơ sở dữ liệu thực tế. Trong IC, quy trình khai thác nhật ký máy chủ được bắt đầu, quy trình này trích xuất tất cả dữ liệu DML và DDLstatements (tạo, thay đổi, thả, v.v.) và tạo các bản ghi thay đổi logic (LCR). Sau đó, các bản ghi này được chuyển cho các quy trình bộ nhớ GoldenGate, các quy trình này sẽ ghi LCR vào các tệp đường mòn cục bộ.

Chế độ GoldenGate Replicat

Trước khi phát hành phiên bản 12.1, Replicat đã áp dụng các giao dịch cho cơ sở dữ liệu đích theo tuần tự. Để đạt được tính song song, các bảng phải được chia thành nhiều bản sao chép để ứng dụng dữ liệu nhanh hơn và giảm độ trễ. Hạn chế đối với cách tiếp cận này bao gồm cấu hình thủ công của nhiều bản sao và tệp đường mòn và hạn chế khả năng phân chia các bảng có mối quan hệ khóa ngoại giữa các bản sao.

Các chế độ Replicat được phối hợp và tích hợp mới giúp bạn áp dụng các giao dịch song song trên cơ sở dữ liệu đích mà không cần phải tách các bảng thành nhiều bản sao theo cách thủ công.

Các phần sau đây mô tả các chế độ Replicat khác nhau.

Bản sao cổ điển

Với Replicat cổ điển, một điểm kiểm tra cơ sở dữ liệu đích cho hệ thống biết giao dịch nào đã được cam kết và giao dịch nào chưa được thực hiện. Đây là khía cạnh quan trọng của việc nhân rộng giao dịch.

Classic Replicat có các đặc điểm sau:

  • Áp dụng SQL nối tiếp.
  • Phải được sử dụng nếu phiên bản cơ sở dữ liệu nhỏ hơn 11.2.0.4

Hình ảnh sau minh họa Replicat cổ điển:

Khái niệm cơ bản về Oracle GoldenGate

Nguồn hình ảnh :https://docs.oracle.com/GoldenGate/1212/gg-winux/GIORA/img/integratedapply.jpg

Bản sao được phối hợp

Bản sao đã được cấu hình được gọi là bộ điều phối. Quá trình này bắt đầu báo cáo bổ sung dựa trên số lượng chủ đề được chỉ định. Tên Bản sao được giới hạn trong năm ký tự và các bản sao theo luồng có tên này được thêm vào bằng số thể thao (ví dụ:RGGMA, RGGMA001, RGGMA002, v.v.). Điều phối viên gửi SQL đến các luồng, có thể được áp dụng song song và theo thứ tự nhận vào.

Hình ảnh sau minh họa Replicat phối hợp:

Khái niệm cơ bản về Oracle GoldenGate

Nguồn hình ảnh :https://www.red-gate.com/simple-talk/sql/oracle/oracle-GoldenGate-12c-new-features-part-2/

Bản sao Tích hợp

Bản sao tích hợp có các đặc điểm sau:

  • Xây dựng các LCR đại diện cho các giao dịch DML của cơ sở dữ liệu nguồn (theo thứ tự đã cam kết). DDL được áp dụng trực tiếp bởi Replicat. Các giao dịch này có thể được áp dụng song song.
  • Đính kèm với một quy trình nền trong cơ sở dữ liệu đích, được biết đến với máy chủ gửi đến cơ sở dữ liệu, bằng giao diện phát trực tuyến nhẹ.
  • Truyền LCR đến máy chủ gửi đến, máy chủ này sẽ áp dụng dữ liệu vào cơ sở dữ liệu mục tiêu.

Hình ảnh sau minh họa Replicat tích hợp:

Khái niệm cơ bản về Oracle GoldenGate

Nguồn hình ảnh :https://docs.oracle.com/GoldenGate/1212/gg-winux/GIORA/process_mode.htm#GIORA212

Kết luận

Blog này đã mô tả cách thức và lý do sử dụng GoldenGate và thảo luận về kiến ​​trúc và các thành phần của nó. Nó cũng trình bày chi tiết các chế độ chụp và chế độ Replicat được tích hợp trong công cụ.

Sử dụng tab Phản hồi để đưa ra bất kỳ nhận xét hoặc đặt câu hỏi nào.