Bài đăng này mô tả Oracle® In-Memory Advisor (IMA), một tính năng của Database 12c, và mô tả các lợi ích của nó. Tính năng này có sẵn trong Oracle Database phiên bản 12.1.0.2 và mới hơn.
Lợi ích của IMA
IMA có các lợi ích chính sau:
Truy vấn phân tích nhanh hơn.
Giao dịch Xử lý Giao dịch Trực tuyến (OLTP) nhanh hơn.
Không cần thay đổi ứng dụng.
Ít công việc thủ công hơn cho quản trị viên cơ sở dữ liệu (DBA) để tối ưu hiệu suất cơ sở dữ liệu.
Trước khi In-Memory Advisor được giới thiệu, DBA phải thủ công xác định các bảng để đặt vào In-Memory Column Store (IMCS). IMA loại bỏ tác vụ thủ công này bằng cách phân tích tải công việc phân tích của cơ sở dữ liệu và tạo ra báo cáo khuyến nghị (bao gồm các lệnh SQL để đặt các bảng vào IMCS).
IMA đưa ra các khuyến nghị cụ thể về cách cấu hình Oracle Database In-Memory.
IMA tạo ra báo cáo xác định các đối tượng nên được đặt trong Oracle Database In-Memory để có lợi ích tối đa, cùng với một script SQL*Plus triển khai các khuyến nghị đó.
Gói cài đặt IMA
File zip cài đặt và hướng dẫn có thể được tìm thấy trong My Oracle Support (MOS) Doc ID 1965343.1. Các script cài đặt cài đặt IMA ở cấp độ cơ sở dữ liệu. IMA có thể chạy trên Oracle Database phiên bản 11.2.0.3, nhưng khuyến nghị cho Oracle Database phiên bản 12.1.0.2 hoặc mới hơn.
Gói DBMS_INMEMORY_ADVISOR cung cấp lời khuyên về các tải công việc phân tích có thể hưởng lợi từ việc sử dụng tùy chọn In-Memory. Nó làm điều này bằng cách phân tích dữ liệu Lịch sử Phiên hoạt động (ASH) và Kho lưu trữ Tải công việc Tự động (AWR). Một báo cáo được tạo ra, cũng như một file script, chứa SQL để thực thi trên các cơ sở dữ liệu mục tiêu. Script đặt các đối tượng được khuyến nghị vào In-Memory với các loại nén được đề xuất.
Kiến trúc định dạng kép của IMA
Truyền thống, Oracle Database lưu trữ dữ liệu ở định dạng hàng (row format), với mỗi giao dịch được lưu trữ trong cơ sở dữ liệu như một hàng mới, lý tưởng cho các hệ thống giao dịch trực tuyến vì bạn có thể truy cập nhanh tất cả các cột trong một bản ghi. Cơ sở dữ liệu định dạng cột (column-format) lưu trữ từng thuộc tính giao dịch trong một cấu trúc cột riêng biệt và lý tưởng cho phân tích vì bạn truy xuất ít cột hơn. Khi nói đến các hoạt động Ngôn ngữ Thao tác Dữ liệu (DML) (chèn, cập nhật hoặc xóa), định dạng hàng hiệu quả vì nó cập nhật toàn bộ bản ghi trong một thao tác. Nếu bạn chạy các hoạt động tương tự đối với một bảng có định dạng cột, toàn bộ cấu trúc cột của bảng phải được thay đổi, điều này kém hiệu quả cho xử lý DML theo hàng.
Trong Oracle Database 12c, dữ liệu có thể điền vào bảng ở cả định dạng hàng In-Memory và định dạng cột In-Memory. Điều này được gọi là kiến trúc định dạng kép (dual-format architecture) và cung cấp hiệu suất tốt hơn. Bộ đệm đệm hiện tại duy trì định dạng hàng, và một In-Memory column store mới duy trì định dạng cột. In-Memory column store là một thành phần của Vùng Toàn cục Hệ thống (SGA) của Oracle Database.
Hình ảnh sau minh họa kiến trúc định dạng kép:
Nguồn hình ảnh: https://www.doag.org/formes/servlet/DocNavi?action=getFile&did=6770401&key=
Nếu bạn có một bảng rộng và có hàng trăm triệu thậm chí hàng tỷ hàng, bạn có thể quét bảng đó và lọc nó cực nhanh, ngay cả trong môi trường kho dữ liệu. Bạn có thể kết hợp các cột từ một bảng sự kiện (fact table) với nhiều bảng chiều (dimension tables) với tốc độ khó tin. Bởi vì dữ liệu ở định dạng cột thay vì định dạng hàng chính, bạn có thể truy cập dữ liệu nhanh hơn nhiều vì bạn loại bỏ nhiều cột trung gian.
IMA và OLTP
IMA có thể được sử dụng để cải thiện truy vấn trên nhiều hoạt động OLTP và kho dữ liệu và cung cấp các khả năng chính sau:
Hỗ trợ lựa chọn kích thước In-Memory.
Khuyến nghị cho các bảng, phân vùng và phân vùng con cho một kích thước In-Memory nhất định.
Sử dụng dữ liệu tải công việc và hiệu suất để ưu tiên các đối tượng.
Đáp ứng sự khác biệt về dấu vết đĩa và bộ nhớ, cũng như tỷ lệ nén.
Cung cấp phân tích chi phí/lợi ích dựa trên tải công việc, bao gồm:
Chi phí: Cung cấp kích thước bộ nhớ ước tính với các tùy chọn nén khác nhau.
Lợi ích: Cung cấp các chỉ số giảm thời gian cơ sở dữ liệu ước tính cho xử lý tải công việc.
Cung cấp kế hoạch điền khu vực In-memory.
Cung cấp báo cáo, bao gồm lợi ích SQL hàng đầu từ bất kỳ cấu hình nhất định nào.
Cho phép bạn thay đổi kích thước In-Memory để nhận kế hoạch tải cụ thể.
Tạo script DDL với tất cả các bảng, phân vùng và phân vùng con được khuyến nghị.
Kết luận
Bằng cách sử dụng tùy chọn In-Memory, bạn có thể tăng tốc truy vấn phân tích và OLTP cũng như tối ưu hóa hiệu suất cơ sở dữ liệu dễ dàng với ít sự tham gia của DBA hơn. Từ góc độ kinh doanh, các doanh nghiệp có thể hưởng lợi từ các quyết định tốt hơn được thực hiện theo thời gian thực, năng suất cải thiện, tăng cường khả năng cạnh tranh và chi phí thấp hơn.
Sử dụng tab Feedback để đưa ra bất kỳ nhận xét hoặc đặt câu hỏi nào.