Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Các tính năng ẩn trong Oracle

"Quét toàn bộ bảng không phải lúc nào cũng tệ. Chỉ mục không phải lúc nào cũng tốt".

Phương pháp truy cập dựa trên chỉ mục kém hiệu quả hơn trong việc đọc các hàng so với quét toàn bộ khi bạn đo lường nó theo các hàng được truy cập trên mỗi đơn vị công việc (thường là trên mỗi lần đọc logic). Tuy nhiên, nhiều công cụ sẽ hiểu việc quét toàn bộ bảng là một dấu hiệu của sự kém hiệu quả.

Lấy một ví dụ trong đó bạn đang đọc vài trăm hóa đơn trong một bảng hóa đơn và tra cứu phương thức thanh toán trong một bảng tra cứu nhỏ. Sử dụng một chỉ mục để thăm dò bảng tra cứu cho mọi hóa đơn có thể có nghĩa là ba hoặc bốn io lôgic cho mỗi hóa đơn. Tuy nhiên, việc quét toàn bộ bảng tra cứu để chuẩn bị cho một phép nối băm từ dữ liệu hóa đơn có thể chỉ yêu cầu một vài lần đọc logic và bản thân phép toán băm đó sẽ cmoplete trong bộ nhớ mà hầu như không mất phí.

Tuy nhiên, nhiều công cụ sẽ xem xét điều này và thấy "quét toàn bộ bảng" và yêu cầu bạn cố gắng sử dụng một chỉ mục. Nếu bạn làm như vậy thì có thể bạn vừa hủy điều chỉnh mã của mình.

Tình cờ phụ thuộc quá nhiều vào các chỉ mục, như trong ví dụ trên, khiến "Tỷ lệ truy cập bộ nhớ đệm" tăng. Đây là lý do tại sao BCHR hầu như vô nghĩa như một công cụ dự đoán về hiệu quả của hệ thống.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hiển thị thông báo cửa sổ phương thức trong các biểu mẫu Oracle bằng Show_Alert

  2. Cài đặt RAC cho Cơ sở dữ liệu với Datafiles

  3. Tại sao Oracle quá chậm khi tôi chuyển java.sql.Timestamp cho cột DATE?

  4. các cách để tránh các bảng tạm thời toàn cục trong oracle

  5. Làm cách nào để bạn chỉ định mệnh đề IN trong một truy vấn động sử dụng một biến?