Cách tốt nhất để tạo chế độ xem cụ thể hóa trong MySQL


18

Tôi đang sử dụng MySQL 5.6. Tôi không thể tạo ra một khung nhìn cụ thể hóa như tôi có thể trong Oracle. Tôi đã thấy một hoặc hai giải pháp như Flexview.

Ai đó có thể cho tôi biết cách tốt nhất để tạo ra một khung nhìn cụ thể hóa trong MySQL (tự động làm mới như trong Oracle) với mức độ phức tạp tối thiểu không?

Câu trả lời:


11

Quan điểm cụ thể hóa Không tồn tại trong MySQL.

Flexview đã được đề xuất trong DBA StackExchange trước đây

Vì bạn đã có nó, một số sự cần mẫn và mỡ khuỷu tay từ phía bạn có thể cần thiết để tiếp tục sử dụng nó (nếu bạn chưa làm như vậy)

THAY ĐỔI # 1

Bạn có thể xem xét việc thiết lập Bảng tóm tắt. Bạn sẽ cần lập chỉ mục các bảng cơ sở của mình để hỗ trợ tổng hợp trước khi xây dựng Bảng tóm tắt.

THAY ĐỔI # 2

Đây là một bài viết cũ từ http: //www.m vật liệu.info / có một chiến lược thực tế hơn có vẻ hấp dẫn. Nó liên quan đến việc sử dụng kích hoạt. Có vẻ như nó có thể vui ...

THAY ĐỔI # 3

Nếu các bảng cơ sở của bạn không lớn và bạn có thể sống với việc truy vấn toàn bộ các bảng mỗi tuần một lần, hãy thử User Commentsphần Tài liệu MySQL trên CREATE VIEW để tìm ý tưởng. Tìm kiếm từ materializedtrên trang đó.


Trong phiên bản mới nhất của MySQL, bạn có thể tạo bảng materlianed dba.stackexchange.com/a/226707/50702
Revious

1

Tôi đã tìm thấy 2 giải pháp khả thi để có các quan điểm cụ thể hóa trong MySQL:

  1. Tạo một bảng tổng hợp với tất cả các dữ liệu cần thiết và sau đó tạo các kích hoạt trên các bảng mà dữ liệu đến từ đó.

  2. Tạo một bộ lập lịch định kỳ tổng hợp dữ liệu vào một bảng

Xem thêm chi tiết về cách triển khai 2 tùy chọn trong bài đăng trên blog của tôi tại đây: xem cụ thể hóa MySQL


0

Nếu dữ liệu cơ bản của bạn chủ yếu ổn định hoặc bạn có thể chấp nhận sự khác biệt giữa chế độ xem và dữ liệu, thì hãy xem xét sử dụng các công cụ rolap đơn giản mà tôi đã viết để giải quyết trường hợp sử dụng này. Điều này cho phép bạn viết trong các tệp riêng biệt các truy vấn SQL phức tạp tạo ra các bảng. Các mối quan hệ giữa các truy vấn được tự động dẫn xuất và các truy vấn được thực hiện theo thứ tự phù hợp thông qua công cụ tạo Unix . Để làm mới các bảng đã tạo, bạn cần chạy make clean all. Công cụ này chủ yếu hữu ích để tăng dần các truy vấn tinh vi thực thi hiệu quả dựa trên kết quả tính toán trước của các đầu vào của chúng.


Bạn có lẽ nên làm cho tiết lộ (rằng bạn là tác giả công cụ) nổi bật hơn.
mustaccio

Điểm tốt! Tôi chỉnh sửa câu trả lời để làm rõ điều này.
Diomidis Spinellis
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.