Blog này thảo luận về cách cấu hình Oracle® Automatic In-Memory (AIM) để quản lý object trong In-Memory (IM) Column Store.
Giới thiệu
Tính năng IM column store cho phép bạn populate segment vào định dạng cột (columnar format). Khác với buffer cache, IM column store populate toàn bộ segment vào bộ nhớ. Automatic Data Optimization (ADO) và AIM quản lý object trong IM column store.
Oracle giới thiệu AIM trong Oracle Database phiên bản 18c, và nó sử dụng access tracking, column statistics, và các thống kê liên quan khác để quản lý object trong IM column store. AIM đảm bảo các active segment luôn luôn được populate bằng cách tự động evict (loại bỏ) cold segment (segment truy cập không thường xuyên).
Một in-memory segment chỉ đủ điều kiện bị evict nếu INMEMORY priority là NONE, và AIM evict in-memory segment khi không gian IM column store bị cạn kiệt. Database dùng thống kê nội bộ của populated segment để xác định tập hợp object để evict. Nếu bất kỳ ADO policy nào được bật để ngăn chặn in-memory segment eviction, thì ADO policy ghi đè AIM và ngăn chặn eviction.
Kích hoạt AIM
Tham số khởi tạo cấp hệ thống, INMEMORY_AUTOMATIC_LEVEL, kích hoạt AIM và có các giá trị sau:
- OFF (mặc định): Vô hiệu hóa AIM.
- LOW: Cold segment bị evict khỏi IM column trong trường hợp memory pressure.
- MEDIUM: Mức này đảm bảo bất kỳ hot segment nào chưa được populate do memory pressure sẽ được populate trước.
Hình sau hiển thị tham số INMEMORY_AUTOMATIC_LEVEL và cách sửa đổi giá trị của nó:
Đặt khoảng thời gian cho AIM
Dùng package DBMS_INMEMORY_ADMIN để đặt khoảng thời gian cho usage statistics mà AIM kiểm tra. Giá trị mặc định là 31 ngày. Bạn có thể thay đổi cài đặt này như ví dụ sau:
Hiểu cách AIM hoạt động
Bạn có thể truy vấn dynamic performance (V$) view, V$IM_SEGMENTS, để liệt kê segment hiện tại được populated trong IM column store và kiểm tra bảng với trạng thái INMEMORY ENABLED cho một schema. Trong ví dụ sau, bạn có thể thấy segment TAB1 đã hiển thị trong danh sách populated segment vì priority của nó được đặt là HIGH.
Bây giờ, bạn có thể populate các bảng khác với INMEMORY ENABLED. Bảng được populated trong IM column store sau khi bạn truy cập các bảng, như ví dụ sau:
Tiếp theo, bạn có thể thử populate thêm một bảng, EXAMPLE3, với priority HIGH để ưu tiên hơn segment với priority NONE. Truy vấn V$IM_SEGMENTS cho thấy bảng với priority NONE không hiển thị. Điều này là do IM column store đang chịu memory pressure. Bạn có thể thấy EXAMPLE3 được populated một phần, và BYTES_NOT_POPULATED không phải là 0. Đó là lý do AIM evict các cold segment khác (hoặc segment có priority NONE). Cũng lưu ý rằng nếu segment được populated một phần, query truy cập object đó trong IM column store chạy tốt—chúng lấy dữ liệu còn lại mà không tìm thấy trong IM column store từ database.
Bạn có thể truy vấn DBA_INMEMORY_AIMTASKS để xem trạng thái tất cả task được tạo bởi AIM. DBA_INMEMORY_AIMTASKDETAILS liệt kê tất cả chi tiết hành động được AIM thực hiện trên segment hiện có trong IM column store. Trong hình sau, bạn có thể thấy không có hành động nào được thực hiện trên TAB1 vì priority của nó là HIGH và như đã giải thích trước khi populate bảng EXAMPLE3, IM column store đang chịu memory pressure nên AIM evict các segment khác.
Kết luận
Mặc dù AIM là tính năng hữu ích để tự động hóa object trong IM column store, nó có hạn chế vì chỉ có thể được bật trên database được host trên cloud-based systems và engineered systems. Database được host trên các loại hệ thống khác, như premise systems, sinh ra lỗi khi bạn cố gắng bật AIM.
Sử dụng tab Feedback để đưa ra bình luận hoặc đặt câu hỏi.
Tối ưu môi trường của bạn với quản trị, quản lý và cấu hình chuyên nghiệp
Các chuyên gia Dịch vụ ứng dụng của Rackspace (RAS) cung cấp các dịch vụ chuyên nghiệp và được quản lý sau đây trên danh mục ứng dụng rộng:
- Nền tảng eCommerce và Trải nghiệm số
- Quản trị nguồn lực doanh nghiệp (ERP)
- Business Intelligence
- Salesforce Quản trị quan hệ khách hàng (CRM)
- Databases
- Lưu trữ Email và Năng suất
Chúng tôi cung cấp:
- Chuyên môn khách quan: Chúng tôi đơn giản hóa và hướng dẫn hành trình hiện đại hóa của bạn, tập trung vào các khả năng mang lại giá trị ngay lập tức.
- Fanatical Experience™: Chúng tôi kết hợp phương pháp Process first. Technology second.® với hỗ trợ kỹ thuật chuyên dụng để cung cấp giải pháp toàn diện.
- Danh mục không đối thủ: Chúng tôi áp dụng kinh nghiệm đám mây rộng lớn để giúp bạn chọn và triển khai công nghệ phù hợp trên đám mây phù hợp.
- Giao hàng Agile: Chúng tôi gặp gỡ bạn ở bất kỳ đâu trong hành trình của bạn và điều chỉnh thành công của chúng tôi với của bạn.
Chat ngay để bắt đầu.