Cách tạo Database bằng phpMyAdmin trên localhost- P3 potx

5 495 0
Cách tạo Database bằng phpMyAdmin trên localhost- P3 potx

Đang tải... (xem toàn văn)

Thông tin tài liệu

Sử dụng bảng gợi ý FORCESEEK Bảng gợi ý FORCESEEK khá hữu dụng trong trường hợp Query Plan (các bước được sử dụng để truy cập hay hiệu chỉnh thông tin trong hệ thống quản lý cơ sở dữ liệu liên quan tới SQL) sử dụng một bảng hay toán tử Index Scan (quét chỉ mục) trên một bảng hay view, tuy nhiên toán tử (Index Seek) tìm kiếm chỉ mục có thể hiệu quả hơn (ví dụ như trong trường hợp có quá nhiều sự lựa chọn). Gợi ý bảng FORCESEEK buộc Query Optimizer (trình tối ưu truy vấn) chỉ sử dụng các thao tác Index Seek như đường dẫn truy cập vào dữ liệu trong bảng hay view được tham chiếu trong truy vấn. Chúng ta có thể sử dụng bảng gợi ý này để ghi đè lên Query Plan mặc định được Query Optimizer lựa chọn để tránh các vấn đề thực thi gây ra do Query Plan không hiệu quả. Ví dụ, nếu một Plan chứa bảng hay các toán tử Index Scan, và những bảng tương ứng liên tục được truy cập trong khi thực thi truy vấn thì việc áp dụng một thao tác Index Seek có thể sẽ hiệu quả hơn sử dụng truy vấn. Khả năng này sẽ xảy ra trong trường hợp các thành phần trong tập hợp không chính xác hay tính đến lượng thời gian cần sử dụng để viết một Query Plan mà Query Optimizer sử dụng để thực hiện tìm kiếm. Một trong những tình huống mà bảng gợi ý này trở nên hữu dụng đó là khả năng làm việc với Parameter Sniffing (một công cụ mà trình tối ưu truy vần của SQL Server sử dụng để tìm kiếm giá trị biến từ truy vấn trong khi thực hiện lệnh lần đầu tiên và tạo một Plan thực thi tối ưu dựa trên giá trị đó). Chúng ta hãy kiểm chứng điều này bằng cách chạy những truy vấn dưới đây trong cơ sở dữ liệu AdventureWorks và phân tích những điểm khác biệt. Trường hợp 1: Truy vấn đầu tiên trả về 450 hàng và có ít khả năng chọn lọc hơn so với truy vấn thứ hai chỉ trả về 16 bản ghi. Do đó cần sử dụng Index Scan cho truy vấn đầu tiên hơn là sử dụng Index Seek và Lookup (tra cứu) của truy vấn thứ hai. Trường hợp 2: Chúng ta sẽ chạy lại các truy vần ở trên, nhưng trong trường hợp này chúng ta sẽ sử dụng các biến để gán các giá trị cho truy vấn thay vì nhập trực tiếp các giá trị. Nếu kiểm tra các Plan thực thi được tạo chúng ta sẽ thấy cả hai truy vấn đang sử dụng cùng Index Scan mặc dù các giá trị của tham số hoàn toàn khác nhau. Theo trường hợp 1 thì truy vấn thứ hai có khả năng chọn lọc cao hơn và cần sử dụng Index Seek và Lookup. Đó là do trong khi khi truy . truy vấn trong khi thực hiện lệnh lần đầu tiên và tạo một Plan thực thi tối ưu dựa trên giá trị đó). Chúng ta hãy kiểm chứng điều này bằng cách chạy những truy vấn dưới đây trong cơ sở dữ. truy vần ở trên, nhưng trong trường hợp này chúng ta sẽ sử dụng các biến để gán các giá trị cho truy vấn thay vì nhập trực tiếp các giá trị. Nếu kiểm tra các Plan thực thi được tạo chúng ta. quản lý cơ sở dữ liệu liên quan tới SQL) sử dụng một bảng hay toán tử Index Scan (quét chỉ mục) trên một bảng hay view, tuy nhiên toán tử (Index Seek) tìm kiếm chỉ mục có thể hiệu quả hơn (ví

Ngày đăng: 08/07/2014, 08:20

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan