Chƣơng 1 Tìm hiểu về các hệ cơ sở dữ liệu phân tán
1.3 Triển vọng của các hệ cơ sở dữ liệu phân tán
1.3.3 Cải thiện hiệu năng
Hiệu năng của DBMS phân tán được cải thiện dựa vào hai điểm:
1) Một DBMS phân tán có khả năng phân mảnh CSDL khái niệm, cho phép lưu dữ liệu ở gần nơi sử dụng (cũng được gọi là cục bộ hóa dữ liệu (data
localization). Ở đây có hai ưu điểm nổi bật:
+ Vì mỗi trạm chỉ xử lý một phần CSDL, tranh chấp về CPU và dịch vụ xuất nhập không nghiêm trọng như trong các CSDL tập trung, và
+ Cục bộ hóa dữ liệu làm giảm thiểu các chậm trễ do truy xuất ở xa rất thường gặp trong các mạng diện rộng (WAN), thí dụ như trong các hệ thống dùng vệ tinh việc truyền tải thông báo mất khoảng 1 giây.
Phần lớn các DBMS phân tán được cấu trúc để tận dụng tối đa ưu điểm của việc cục bộ hóa dữ liệu. Ích lợi đầy đủ của việc giảm thiểu tranh chấp và chi phí truyền chỉ có thể có được bằng cách phân mảnh và phân tán dữ liệu hợp lý.
2) Tính chất song hành của các hệ phân tán có thể được tận dụng để thực hiện song hành liên vấn tin và nội ván tin. Song hành liên vấn tin là khả năng thực hiện cùng lúc nhiều câu vấn tin còn Song hành nội vấn tin sẽ đạt được bằng cách tách một câu vấn tin thành một số câu vấn tin con, mỗi câu sẽ được thực hiện tại một vị trí và truy xuất các phần khác nhau của CSDL phân tán.
Điểm thứ nhất liên quan đến chi phí tính toán phân tán nếu dữ liệu nằm tại các vị trí ở xa và người ta phải truy xuất nó bằng kỹ thuật xử lý từ xa. Trong một số tình huống, người ta cho rằng phân phối chức năng quản lý cho nơi có chứa dữ liệu sẽ tốt hơn là di chuyển một số lượng lớn dữ liệu. Chính điều này đã trở thành một đề tài tranh luận. Một số người cho rằng với việc sử dụng rộng rãi các mạng có tốc độ cao và mạnh, việc phân tán dữ liệu và các chức năng quản lý dữ liệu không còn ý nghĩa nữa và sẽ đơn giản hơn khi lưu dữ liệu tại vị trí trung tâm và truy xuất nó (tải dữ liệu về) qua một mạng tốc độ cao. Lập luận này, mặc dù nghe có lý, đã bỏ qua vấn đề của CSDL phân tán. Trước tiên, trong phần lớn các ứng dụng ngày nay, dữ liệu đều phân tán; điều cần tranh luận là làm cách nào xử lý nó và xử lý ở đâu. Thứ hai, và là điều quan trọng hơn, đó là lập luận này không phân biệt giữa dải thông (khả năng của các đường truyền máy tính) và độ trễ (thời gian cần để truyền dữ liệu). Độ trễ vốn dĩ tồn tại ngay trong bản thân các môi trường phân tán và có những giới hạn vật lý về tốc độ truyền dữ liệu trên các mạng máy tính như đã chỉ ra ở trên, các đường nối qua vệ tinh mất khoảng nửa giây để truyền dữ liệu giữa hai trạm mặt đất. Điều này là do khoảng cách từ trái đất đến vệ tinh và không có gì để chúng ta có thể cải thiện được nó. Đối với một số ứng dụng, đây là một thời gian trễ không thể chấp nhận được.
Lập luận về vấn đề song hành cũng quan trọng. Nếu người dùng truy xuất đến CSDL phân tán chỉ bằng cách vấn tin (nghĩa là truy xuất chỉ đọc) thì việc cung cấp khả năng thực hiện song hành liên vấn tin và nội vấn tin cho rằng CSDL được
nhân bản càng nhiều càng tốt. Tuy nhiên vì phần lớn các truy xuất không phải chỉ đọc, các thao tác vừa đọc vừa cập nhật đòi hỏi phải cài đặt các nghi thức điều khiển đồng thời và ủy thác hợp lý.
Ngoài vấn đề tối ưu hóa hệ thống nhằm giải quyết được tình huống này, một số hệ thống thương mại hiện tại còn có phương pháp tiếp cận đáng chú ý nhằm giải quyết xung đột giữa hiệu năng chỉ đọc và hiệu năng cập nhật. Họ đa phân hóa CSDL bằng cách duy trì hai bản sao. Một bản chỉ dành để vấn tin (được gọi là CSDL vấn tin) và một dành cho các chương trình cập nhật (được gọi là CSDL sản
xuất). Theo định kỳ, CSDL sản xuất (production database) được sao chép vào
CSDL vấn tin. Điều này không loại bỏ được sự cần thiết phải cài đặt các nghi thức điều khiển đồng thời và nghi thức khả tín cho các CSDL sản xuất bởi vì chúng ta cần phải đồng bộ hóa các thao tác ghi vào cùng một mục dữ liệu, tuy nhiên nó đã cải thiện được hiệu năng vấn tin vì chúng có thể được thực hiện mà không tốn chi phí thao tác giao dịch.
Ngoài những điều này, chúng ta còn cần phi tính đến chi phí quản lý giao dịch. Một số cài đặt chỉ cho phép vấn tin CSDL (nghĩa là truy xuất chỉ đọc) trong giờ làm việc (giờ hành chánh) còn việc cập nhật được xử lý theo lô. Sau giờ làm việc, CSDL được khóa lại (không cho vấn tin) khi các cập nhật theo lô đang được thực hiện theo lối tuần tự. Đây là sự phân chia thời gian giữa các hoạt động đọc và cập nhật.
Nhìn chung, các đặc trưng hiệu năng của các hệ CSDL phân tán chưa được hiểu rõ lắm. Chúng ta hiện chưa có đủ số lượng các ứng dụng CSDL phân tán thực sự; cung cấp một cơ sở hợp lý cho các đánh giá có tính thực tế. Ngoài ra các mô hình hiệu năng của các hệ CSDL phân tán chưa được phát triển đầy đủ. Cộng đồng CSDL đã phát triển một số chuẩn mốc để kiểm tra hiệu năng của các ứng dụng xử lý giao dịch, nhưng chưa rõ là có thể dùng được chúng để đo hiệu năng quản lý giao dịch phân tán hay không. Hiệu năng của các sản phẩm DBMS thương mại, ngay cả với những chuẩn mốc này, nói chung không được công bố. Nonstop SQL là một sản phẩm mà các số liệu hiệu năng và cài đặt thử nghiệm được dùng để có được chúng đã được công bố [Tandem, 1988].