Blog này thảo luận về tính năng Oracle Exadata Smart Flash Cache và kiến trúc của nó, bao gồm cả tính năng ghi lại bộ nhớ cache flash.
Giới thiệu
Tính năng Exadata Smart Flash Cache có những lợi ích chính sau:
-
Exadata Smart Flash Cache cung cấp khả năng phân chia các đối tượng cơ sở dữ liệu đang hoạt động trong nháy mắt.
-
Ghi nhật ký Flash thông minh Exadata tăng tốc chức năng quan trọng của việc ghi dữ liệu.
Ghi lại bộ nhớ cache flash
Ghi lại bộ nhớ cache flash, được sử dụng để cải thiện hoạt động ghi nhiều hơn vì ghi vào bộ nhớ cache flash nhanh hơn ghi vào đĩa cứng, rất hữu ích trong việc chạy các công việc nặng với cơ sở dữ liệu. Theo Oracle, tùy thuộc vào ứng dụng, hiệu suất ghi có thể nhanh hơn tới 20 lần vào đĩa (được đo bằng hoạt động đầu vào / đầu ra mỗi giây (IOPS)) và có số IOPS ghi nhiều hơn 10 lần so với đĩa.
Thuộc tính ô flashCacheMode
xác định chế độ bộ nhớ cache. Các giá trị có thể có là:“WriteThrough” và “WriteBack”.
Để tìm chế độ bộ nhớ cache hiện tại, hãy sử dụng công cụ cellcli và list cell
hoạt động, như được hiển thị trong ví dụ sau:
CELLCLI> list cell attributes flashcachemode
Liệt kê kết quả lệnh ô
Để hiển thị chi tiết, hãy sử dụng list cell detail
, như được hiển thị trong ví dụ sau:
CELLCLI> list cell detail
Liệt kê kết quả lệnh chi tiết ô Lợi ích của bộ nhớ cache flash ghi lại
Ghi lại bộ nhớ cache flash cải thiện các hoạt động ghi nhiều hơn vì ghi bộ nhớ cache toflash nhanh hơn nhiều so với ghi vào đĩa cứng. Write-back flash cache rõ ràng tăng tốc đọc và ghi cho tất cả khối lượng công việc để xử lý giao dịch trực tuyến (OLTP) (đọc và ghi ngẫu nhiên nhanh hơn) và kho dữ liệu (DW) (quét thông minh tuần tự nhanh hơn).
Ghi lại bộ nhớ cache flash cũng làm giảm độ trễ của việc ghi lại nhật ký khi chia sẻ đĩa với dữ liệu. Có thể khôi phục dữ liệu từ bộ nhớ cache flash khi khởi động lại cellsrv restart
. Xem xét sử dụng tính năng ghi lại bộ đệm flash flash nếu bạn nhận thấy một trong các điều kiện sau:
- Thời gian chờ đáng kể cho "các lần chờ bộ đệm miễn phí"
hoặc
- Số lần I / O cao khi kiểm tra việc ghi tắc nghẽn trong báo cáo Khối lượng công việc tự động (AWR).
Bảng sau đây cho thấy hiệu suất mà Exadata Smart Flash Cache cung cấp ở cấp cơ sở dữ liệu cho các cấu hình Exadata X4 khác nhau.
Bảng hiệu suất ExadataNguồn:https://www.oracle.com/technetwork/database/exadata/exadata-smart-flash-cache-366203.pdf, trang 7
Bộ nhớ đệm thông minh
Bộ nhớ đệm Smart Flash cung cấp các lợi ích bộ nhớ đệm thông minh sau:
- Bộ nhớ đệm Smart Flash hiểu các loại I / O cơ sở dữ liệu khác nhau.
- Dữ liệu được truy cập thường xuyên và các khối chỉ mục được lưu vào bộ nhớ đệm.
- Việc đọc và ghi tệp điều khiển được lưu vào bộ nhớ đệm.
- Việc đọc và ghi Tiêu đề tệp được lưu vào bộ nhớ đệm.
- Quản trị viên Cơ sở dữ liệu có thể ảnh hưởng đến các ưu tiên trong bộ nhớ đệm.
Thật không may, không có cách nào dễ dàng để theo dõi những gì có trong bộ nhớ cache. Oracle đã cung cấp một list flashcachecontent
trong công cụ cellcli, nhưng nó không cung cấp các tùy chọn tổng kết và chỉ hiển thị số đối tượng.
Hiểu về Exadata Smart Flash Cache
Exadata Smart Flash Cache là một bộ nhớ đệm trên máy chủ di động (lưu trữ) để lưu trữ dữ liệu làm lại cho đến khi dữ liệu này có thể được ghi vào đĩa một cách an toàn. Máy chủ Exadatastorage đi kèm với một lượng bộ nhớ flash đáng kể. Một lượng nhỏ được phân bổ để ghi nhật ký cơ sở dữ liệu và phần còn lại được sử dụng để lưu vào bộ nhớ đệm dữ liệu người dùng.
Trên máy chủ exadata full-rack, bộ nhớ đệm flash 5 TB có thể lưu trữ một lượng lớn dữ liệu.
Bộ nhớ cache flash có thể được quản lý tự động để đạt hiệu quả tối đa, như được hiển thị trong các trường hợp sử dụng sau:
- Người dùng có thể cung cấp các gợi ý tùy chọn để tác động đến các ưu tiên trong bộ nhớ đệm.
- Quản trị viên có thể tắt bộ nhớ cache flash thông minh cho các cơ sở dữ liệu cụ thể.
Phần mềm Máy chủ Lưu trữ Exadata
Hai tính năng chính của Phần mềm máy chủ lưu trữ Exadata tận dụng phần cứng ExadataFlash và làm cho máy cơ sở dữ liệu Exadata trở thành một hệ thống nhanh như vậy để triển khai Cơ sở dữ liệu Oracle. Đầu tiên, Exadata Smart Flash Cache cung cấp khả năng phân chia các đối tượng cơ sở dữ liệu đang hoạt động trong nháy mắt. Thứ hai, Exadata SmartFlash Logging tăng tốc chức năng quan trọng của việc ghi nhật ký cơ sở dữ liệu.
Triển khai cơ sở dữ liệu Oracle yêu cầu khả năng phục hồi quan trọng của sứ mệnh. Sử dụng phần mềm ExadataStorage Server kết hợp với cơ sở dữ liệu Oracle cung cấp khả năng phục hồi.
Tạo đĩa lưới dựa trên FlashDisk
Bạn không nên sử dụng tất cả Flash Cache của mình cho các đĩa lưới. Khi tạo Bộ đệm ẩn Flash, hãy sử dụng tham số kích thước để giữ lại một số không gian được sử dụng cho đĩa lưới, như được hiển thị trong công cụ cellcli sau create flashcache
lệnh:
CellCLI> create flashcache all size=300g;
Tạo đĩa lưới bằng cách sử dụng dung lượng trống còn lại trên Đĩa Flash, sử dụng create griddisk
sau đây lệnh:
CellCLI> create griddisk all flashdisk prefix='RAMDISK‘;
Để liệt kê chi tiết đĩa lưới, hãy sử dụng list griddisk
, như được hiển thị trong ví dụ sau:
CellCLI> list griddisk attributes name, diskType, size – where disktype='FlashDisk‘;
Ưu điểm lớn nhất của cấu hình Flash Cache là nó có thể được thực hiện khi hệ thống trực tuyến và phục vụ các yêu cầu I / O.
Cách bật bộ nhớ cache flash ghi lại
Sử dụng một trong các phương pháp sau để bật tính năng ghi lại bộ đệm flash flash:
-
Phương pháp cuộn - Phương pháp này giả định rằng các phiên bản hệ thống quản lý cơ sở dữ liệu quan hệ (RDBMS) và quản lý lưu trữ tự động (ASM) được thiết lập và có thể cho phép ghi lại bộ nhớ cache flash trong một máy chủ ô tại một thời điểm.
-
Phương pháp không lăn bánh - Phương pháp này giả định rằng các phiên bản RDBMS &ASM không hoạt động trong khi bật bộ nhớ cache flash ghi lại.
Trước khi bật bộ đệm flash ghi lại, hãy chạy lệnh sau để kiểm tra các thuộc tính “asmdeactivationoutcome” và “asmmodestatus” của đĩa lưới. Đảm bảo rằng tất cả các đĩa lưới trên tất cả các ô tương ứng là “Có” và “TRỰC TUYẾN” và bộ đệm flash hoàn chỉnh ở trạng thái bình thường và không có đĩa flash nào không bị xuống cấp hoặc ở trạng thái quan trọng:
# dcli -g cell_group -l root cellcli -e list griddisk attributes asmdeactivationoutcome, asmmodestatus
Để bật danh sách các ô, hãy chạy lệnh sau:
# dcli -g cell_group -l root cellcli -e list flashcache detail
exadata01cell01: WriteThrough
exadata01cell02: WriteThrough
exadata01cell03: WriteThrough
Để bật bộ nhớ cache flash ghi lại, hãy chạy các lệnh sau cho mỗi ô:
-> Drop cache
CellCLI> drop flashcache;
Flash cache exadata01cell01 successfully dropped.
-> Shut down Cell service
CellCLI> alter cell shutdown services cellsrv;
Stopping CELLSRV services... The SHUTDOWN of CELLSRV services was successful.
-> Change Cell Flash Cache mode to Write Back
CellCLI> alter cell flashCacheMode=writeback;
Cell cel04 successfully altered
-> Restart the Cell Service
CellCLI> alter cell startup services cellsrv;
Starting CELLSRV services...
The STARTUP of CELLSRV services was successful.
-> Recreate the Flash Cache
CellCLI> create flashcache all;
Flash cache cel04_FLASHCACHE successfully created
-> Check the State on all Cell Server
# dcli -g cell_group -l root "cellcli -e list cell attributes flashcachemode"
exadata01cell01: WriteBack
exadata01cell02: WriteBack
exadata01cell03: WriteBack
Kết luận
Sử dụng tính năng ghi lại bộ nhớ cache flash để tận dụng phần cứng Exadata Flash và làm cho máy cơ sở dữ liệu Exadata trở thành một hệ thống nhanh hơn cho các triển khai cơ sở dữ liệu Oracle. Bộ nhớ flash bên trong máy cơ sở dữ liệu Oracle Exadata được sử dụng hoàn toàn làm bộ nhớ đệm flash theo mặc định. Điều này cho phép nó hoạt động hiệu quả khi mở rộng bộ nhớ đệm cơ sở dữ liệu và cung cấp truy cập nhanh hơn, bao gồm tốc độ IOPS rất cao, điều này đặc biệt quan trọng đối với OLTP. Các tệp được đặt trên các nhóm đĩa này sẽ nằm vĩnh viễn trên flashstorage mà không cần bộ nhớ đệm.
Nếu bạn có bất kỳ câu hỏi nào về chủ đề này, vui lòng để lại bình luận trong trường bên dưới.