QUAN VỀ CƠ SỞ DỮ LIỆU PHÂN TÁN
Khái niệm cơ sở dữ liệu phân tán
Khái niệm xử lý phân tán và tính toán phân tán hiện nay được sử dụng để chỉ các hệ thống máy tính có khả năng xử lý dữ liệu trên nhiều máy khác nhau, bao gồm cả hệ thống đa bộ xử lý và các mạng máy tính Xử lý dữ liệu trong môi trường phân tán không chỉ bao gồm các thuật toán mà còn liên quan đến việc sử dụng bộ nhớ trong và bộ nhớ ngoài, như đĩa cứng Mục tiêu chính của xử lý phân tán là tạo ra một môi trường làm việc độc lập, cho phép các tác vụ giao tiếp qua mạng một cách hiệu quả.
1.1.1 Định nghĩa cơ sở dữ liệu phân tán
Cơ sở dữ liệu phân tán bao gồm nhiều cơ sở dữ liệu có quan hệ logic với nhau, được phân tán trên nhiều địa điểm trong một mạng máy tính Mỗi trạm trong mạng có khả năng tự quản lý và thực hiện các ứng dụng cục bộ, đồng thời có thể tham gia vào một ứng dụng toàn cục, yêu cầu truy xuất dữ liệu từ nhiều trạm khác nhau Định nghĩa này nhấn mạnh ba khía cạnh quan trọng của cơ sở dữ liệu phân tán.
Sự phân tán: dữ liệu không cư trú trên một vị trí mà được phân tán ở nhiều nơi
Ứng dụng cục ộ: mỗi nơi phải thực hiện ít nhất một ứng dụng cục bộb
Ứng dụng toàn cục: mỗi nơi phải tham gia vào sự thực hiện của ít nhất một ứng dụng toàn cục
Nếu dữ liệu chỉ tập trung tại một trạm (như hình 1.1 dưới đây) thì không được coi là hệ thống cơ sở dữ liệuphân tán
Hình 1.1 Hệ cơ sở dữ liệu tập trung trong môi trường mạng
Hình 1.2 Môi trường hệ cơ sở dữ liệu phân tán Xét ví dụ sau:
Tổng Công ty Bảo Minh (Bảo hiểm TPHCM) có mạng lưới các công ty thành viên phân bố trên toàn quốc, mỗi công ty đều trang bị máy tính điều khiển các máy
1.1.2 Hệ quản trị cơ sở dữ liệu phân tán (Distribute DBMS)
Hệ quản trị cơ sở dữ liệu phân tán (DDBMS) là phần mềm quản lý cho các hệ cơ sở dữ liệu phân tán, cho phép người dùng truy cập dữ liệu một cách liên tục và hiệu quả DDBMS hỗ trợ việc tạo lập và bảo trì các cơ sở dữ liệu phân tán, giúp mở rộng khả năng của các hệ thống quản trị cơ sở dữ liệu tập trung Nhiều hệ thống DDBMS thương mại được phát triển bởi các nhà cung cấp dịch vụ, bao gồm các thành phần mới để tăng cường khả năng truyền thông và hợp tác giữa các hệ quản trị cơ sở dữ liệu được triển khai tại các địa điểm khác nhau trong mạng máy tính Các thành phần phần mềm cần thiết cho việc xây dựng một cơ sở dữ liệu phân tán rất đa dạng và quan trọng.
Thành phần quản trị CSDL (DB – Database management component)
Thành phần truyền thông dữ liệu (DC – Data Communication component)
Từ điển dữ liệu (DD Data Dictionary) được mở rộng để biễu diễn – thông tin về sự phân tán dữ liệu trong mạng.
Thành phần CSDL phân tán (DDB – Distribute Database)
Hệ quản trị CSDL phân tán bao gồm bốn thành phần chính, trong khi hệ quản trị CSDL không phân tán chỉ bao gồm các thành phần DB, DC và DD, phục vụ cho việc quản lý cơ sở dữ liệu.
Hình 1.3 Các thành phần của DDBMS
Một đặc điểm quan trọng của các hệ quản trị cơ sở dữ liệu phân tán (DDBMS) là tính thuần nhất (homogeneous) hoặc không thuần nhất (heterogeneous) Tính thuần nhất và không thuần nhất có thể được đánh giá ở nhiều cấp độ khác nhau trong cơ sở dữ liệu phân tán, bao gồm phần cứng, hệ điều hành và các hệ quản trị cơ sở dữ liệu cục bộ.
“DDBMS thuần nhất” nói đến một DDBMS có các DBMS tại mỗi nơi giống nhau, ngay cả khi các máy tính và hệ điều hành khác nhau.
Một DDBMS không thuần nhất yêu cầu sử dụng ít nhất hai DBMS khác nhau, dẫn đến sự phức tạp trong việc chuyển đổi giữa các mô hình dữ liệu của các DBMS cục bộ Việc phát triển một cơ sở dữ liệu phân tán từ đầu mà không có hệ thống hiện có sẽ khó khăn hơn so với việc xây dựng một hệ thống thuần nhất Tuy nhiên, động lực chính cho việc thiết lập một cơ sở dữ liệu phân tán là nhu cầu tích hợp các cơ sở dữ liệu khác nhau.
CSDL 2 liệu đã có trước, trong trường hợp này cần phải phát triển một DDBMS không thuần nhất, có khả năng xây dựng cái nhìn toàn cục về CSDL Như vậy ta có định nghĩa lại cơ sở dữ liệu phân tán thuần nhất và không thuần nhất như sau:
Cơ sở dữ liệu phân tán thuần nhất là hình thức chia nhỏ một cơ sở dữ liệu thành nhiều cơ sở dữ liệu địa phương, mỗi cơ sở dữ liệu này được quản lý bởi cùng một hệ quản trị cơ sở dữ liệu.
Cơ sở dữ liệu phân tán không thuần nhất được hình thành bằng cách tích hợp nhiều cơ sở dữ liệu địa phương, mỗi cơ sở dữ liệu này được quản lý bởi các hệ quản trị cơ sở dữ liệu khác nhau, vào một cơ sở dữ liệu duy nhất.
Xây dựng cơ sở dữ liệu phân tán từ các cơ sở dữ liệu hiện có là một quá trình quan trọng, giúp quản lý và tối ưu hóa dữ liệu hiệu quả Việc này thường được thực hiện thông qua các hệ quản trị cơ sở dữ liệu khác nhau, cho phép tích hợp và truy xuất thông tin từ nhiều nguồn khác nhau.
Nếu xây dựng từ đầu thì nên xây dựng hệ CSDL phân tán thuần nhất
1.1.3 Mô hình kiến trúc của hệ quản trị cơ sở dữ liệu phân tán
1 Hệ thống Client/Server Đặc trưng c a hủ ệ này là chức n ng c a h th ngă ủ ệ ố được chia làm hai l p:ớ
Ch c nứ ăng đại lý – server function
Ch c nứ ăng khách hàng – client function.
Trong hệ thống khách hàng và đại lý, mọi thao tác xử lý dữ liệu đều được thực hiện qua các chức năng của đại lý, đảm bảo đáp ứng yêu cầu của khách hàng Kết quả cuối cùng sẽ được gửi trả cho khách hàng, như mô hình 1.4.c đã trình bày.
Client DBMS Phần mềm dùng chung SQL Result
Phần mềm ạng m dùng chung Kiểm soát ngữ nghĩa dữ liệu
Tối ưu truy vấn Điều khiển các giao dịch Điều khiển phục hồi
Hổ trợ xử lý t ực thih
Hình 1.4 Kiến trúc Client/Server
2 Hệ thống phân tán Peer to Peer Đặc đ ểm ổi n i bật ủc a h th ng này là d liệ ố ữ ệu đượ ổc t ch cứ ở các nút có chức năng như nhau, đồng thời ự ổs t ch c d liứ ữ ệu ở các nút này l có th r khácại ể ất nhau, từ đó c n phầ ải có:
Định ngh d liĩa ữ ệu ạit m i v trí: tỗ ị ại m i nút ph xây d ng l cỗ ải ự ượ đồ d li u cữ ệ ục ộ LIS Local Internal Schema)b (
Mô tả cấu trúc logic toàn c c: ụ Lượ đồ kháic niệm toàn c c GCS ụ (Global Conceptual Schema).
Mô t cả ấu trúc logic tại mỗ ị i v trí, iđ ều ản y xảy ra do nhân bản và phân đoạn ọ, g i là l c ượ đồ khái ệm ụni c c b LCS (ộ Local Conceptual Schema).
Hình 1.5 Kiến trúc Peer to Peer
Mô t cả ấu trúc ữ ệu ủd li c a các ng d ng gứ ụ ọi là lượ đồ ng ại ớc o gi i ES(External Schema).
Các đặc điểm ủa cơ sở dữ liệu phân tán so với cơ sở dữ liệu tập trung c 15 1 Điều khiển tập trung
Tính tự trị vị trí cho phép quản lý cơ sở dữ liệu mà không cần có người quản trị toàn cục, nhờ vào sự phối hợp tự nhiên giữa các quản trị viên cục bộ.
Các cơ sở dữ liệu phân tán có sự đa dạng lớn về mức độ tự trị, từ những hệ thống hoàn toàn tự trị cho đến những hệ thống gần như được điều khiển tập trung.
1.2.2 Độc lập dữ liệu Độc lập dữ liệu là tổ chức của dữ liệu độc lập với người lập trình ứng dụng, tức là các chương trình ứng dụng không bị thay đổi về tổ chức vật lý của dữ liệu, tính đúng đắn của các chương trình không bị ảnh hưởng bởi việc di chuyển dữ liệu từ một nơi này đến một nơi khác.
Trong cơ sở dữ liệu phân tán, độc lập dữ liệu giữ vai trò quan trọng tương tự như trong các cơ sở dữ liệu truyền thống Tuy nhiên, khái niệm này được mở rộng với tính năng mới gọi là tính trong suốt phân tán Nhờ vào tính trong suốt này, các chương trình có thể được phát triển và viết ra mà không cần phải thay đổi cách thức hoạt động như khi làm việc với cơ sở dữ liệu không phân tán.
Trong cơ sở dữ liệu truyền thống dư thừa được giảm vì hai nguyên nhân sau:
Trong cơ sở dữ liệu phân tán, việc tránh mâu thuẫn giữa các bản sao dữ liệu là cần thiết, vì chỉ cần một bản sao thực tế giúp tiết kiệm không gian lưu trữ Tuy nhiên, có nhiều lý do để coi dư thừa dữ liệu là một đặc điểm quan trọng trong hệ thống này.
Việc giảm dư thừa dữ liệu yêu cầu một quá trình định giá phức tạp, vì việc sao chép dữ liệu tỉ lệ thuận với số lượng truy cập và sửa đổi Khi thực hiện sửa đổi trên một dữ liệu gốc, chúng ta cũng cần cập nhật các bản sao của dữ liệu đó để đảm bảo tính nhất quán và chính xác.
1.2.4 Các lợi ích của cơ sở dữ liệu phân tán
1 Bảo đảm cơ cấu tổ chức không ập trungt :
Việc nhiều tổ chức có chi nhánh phân bố ở các vị trí địa lý khác nhau đòi hỏi sự phát triển cơ sở dữ liệu phân tán để tổ chức hệ thống thông tin phù hợp với cơ cấu tổ chức Giải pháp này không chỉ cần thiết mà còn giúp giảm chi phí so với việc duy trì các trung tâm máy tính tập trung.
2 Bảo đảm kết nối các cơ sở dữ liệu đã tồn tại:
Khi các cơ sở dữ liệu cục bộ được xây dựng trong một tổ chức, việc kết nối và phát triển các ứng dụng toàn cục với cơ sở dữ liệu phân tán trở thành giải pháp tự nhiên Giải pháp này được hình thành từ dưới lên, dựa trên các cơ sở dữ liệu cục bộ hiện có, giúp tiết kiệm thời gian và công sức Việc tái cấu trúc này sẽ yêu cầu ít nỗ lực hơn so với việc tạo mới hoàn toàn một cơ sở dữ liệu tập trung.
3 Bảo đảm sự lớn mạnh gia tăng:
Khi tổ chức mở rộng với việc thêm chi nhánh, công ty con hoặc kho hàng mới, cơ sở dữ liệu phân tán hỗ trợ hiệu quả cho sự phát triển này So với cơ sở dữ liệu tập trung, việc mở rộng hệ thống cần thận trọng để tránh ảnh hưởng tiêu cực đến các ứng dụng hiện tại và mới, đồng thời giảm thiểu chi phí thực hiện mở rộng, điều này thường khó nhận thấy và có thể tốn kém.
4 Giảm chi phí truyền thông:
Trong một cơ sở dữ liệu phân tán địa lý, các ứng dụng cục bộ giúp giảm chi phí truyền thông so với hệ thống cơ sở dữ liệu tập trung.
Với sự hiện diện của nhiều bộ xử lý độc lập, hiệu suất được cải thiện thông qua cơ chế song song hóa cao Nghiên cứu này có thể áp dụng cho tất cả các hệ thống đa xử lý, không chỉ giới hạn ở cơ sở dữ liệu phân tán.
Cơ sở dữ liệu phân tán mang lại lợi ích khi sự phân rã dữ liệu phù hợp với các tiêu chí phụ thuộc ứng dụng, từ đó tối ưu hóa tính cục bộ của ứng dụng Nhờ đó, các bộ xử lý giảm thiểu sự liên lạc lẫn nhau.
Tải được sử dụng chung giữa các bộ xử lý khác nhau giúp tránh được các hiện tượng cổ chai nghiêm trọng như mạng truyền thông và dịch vụ chung của hệ thống Hiệu quả này xuất phát từ khả năng xử lý tự trị của các ứng dụng cục bộ, như đã đề cập trong định nghĩa của cơ sở dữ liệu phân tán.
6 Độ tin cậy và tính sẵn sàng:
Cách tiếp cận cơ sở dữ liệu phân tán chủ yếu dựa vào việc sử dụng dữ liệu dư thừa để tăng cường tính sẵn sàng và độ tin cậy Tuy nhiên, việc đạt được mục tiêu này không hề đơn giản và cần áp dụng những kỹ thuật chưa được thống nhất Mặc dù khả năng xử lý tự trị ở nhiều nơi không thể đảm bảo toàn bộ độ tin cậy của hệ thống, nhưng nó vẫn duy trì đặc tính suy biến Điều này có nghĩa là các hư hỏng trong cơ sở dữ liệu phân tán có thể xảy ra thường xuyên hơn so với cơ sở dữ liệu tập trung, nhưng tác động của mỗi hư hỏng lại được hạn chế đối với các ứng dụng sử dụng dữ liệu từ nơi gặp sự cố, và rất hiếm khi hệ thống bị ngưng hoàn toàn.
Các động cơ thúc đẩy cho cơ sở dữ liệu phân tán không phải là điều mới mẻ Tuy nhiên, sự phát triển của hệ thống cơ sở dữ liệu chỉ mới bắt đầu, và lý do cho điều này là rất đa dạng.
Kiến trúc tham khảo dùng cho các cơ sở dữ liệu phân tán
Hình 1.6 dưới đây minh họa một kiến trúc tham khảo cho cơ sở dữ liệu phân tán Mặc dù kiến trúc này không mô tả rõ ràng tất cả các loại cơ sở dữ liệu phân tán, nhưng các cấp độ của nó rất phù hợp để hiểu cấu trúc của bất kỳ cơ sở dữ liệu phân tán nào.
Sơ đồ tổng thể là khái niệm dùng để định nghĩa tất cả dữ liệu lưu trữ trong cơ sở dữ liệu phân tán Trong mô hình quan hệ, sơ đồ tổng thể thiết lập các quan hệ tổng quát, hay còn gọi là quan hệ toàn cục R.
Sơ đồ phân đoạn là công cụ hữu ích để chia một quan hệ tổng thể thành nhiều phần không gối lên nhau, gọi là đoạn Các đoạn này đại diện cho những phần luận lý của quan hệ toàn cục và có thể được đặt tại một hoặc nhiều vị trí trong mạng Việc phân chia này có thể thực hiện qua nhiều phương pháp khác nhau, với ánh xạ một nhiều giữa sơ đồ tổng thể và các đoạn được định nghĩa trong sơ đồ phân đoạn.
Sơ đồ định vị xác định các đoạn logic trong một mạng, chỉ rõ vị trí vật lý của chúng Nó phân loại các đoạn theo vị trí, giúp xác định liệu cơ sở dữ liệu phân tán có dư thừa (ánh xạ một - nhiều) hay không dư thừa (ánh xạ một - một) Tất cả các đoạn thuộc quan hệ toàn cục R khi được đặt tại cùng một vị trí j sẽ tạo thành hình ảnh vật lý của quan hệ đó tại vị trí j.
Hình 1.6 Một kiến trúc tham khảo dùng cho cơ sở dữ liệu phân tán
Sơ đồ quan niệm địa phương 1
Sơ đồ hệ quản trị
CSDL DBMS1 Sơ đồ hệ quản trị
Sơ đồ hệ quản trị CSDL DBMSn
Sơ đồ quan niệm địa phương 2 Sơ đồ quan niệm địa phương n
Hình 1.7 Các đoạn và hình ảnh vật lý của một quan hệ toàn cục
Hình 1.7 cho thấy một ví dụ về mối liên kết giữa các loại đối tượng đã nói trên
Một quan hệ toàn cục R được phân thành 4 đoạn R 1, R 2, R 3, R 4 Bốn đoạn này được đặt một cách dư thừa tại 3 nơi của một mạng máy tính do đó tạo thành
Bản nhân của một đoạn được đặt tại một vị trí cụ thể, được ký hiệu bằng tên quan hệ toàn cục cùng hai chỉ số: một chỉ số đoạn và một chỉ số nơi Ví dụ, ký hiệu R 2 3 thể hiện bản nhân của đoạn R 2 tại vị trí 3 Cuối cùng, hai hình ảnh vật lý có thể có sự tương đồng với nhau.
Trong trường hợp này chúng ta sẽ nói rằng một hình ảnh vật lý là một bản nhân của một hình ảnh vật lý khác.
Quan hệ toàn Các phân đoạn Các hình ảnh vật lý
Kiến trúc được trình bày trong hình 1.7 cung cấp một cấu trúc tổ chức ý niệm tổng quát Đặc điểm nổi bật của kiến trúc này bao gồm phân đoạn dữ liệu, định vị dữ liệu, kiểm soát dư thừa và sự độc lập giữa các hệ quản trị cơ sở dữ liệu cục bộ.
Khái niệm phân đoạn dữ liệu và định vị dữ liệu là hai khái niệm khác nhau, giúp phân biệt giữa hai mức độ trong suốt trong hệ thống phân tán: trong suốt phân đoạn và trong suốt định vị Trong suốt phân đoạn cho phép người dùng và lập trình viên làm việc trên các quan hệ toàn cục, trong khi trong suốt định vị yêu cầu họ làm việc trên các đoạn dữ liệu mà không cần biết vị trí cụ thể của chúng Sự phân biệt này rất quan trọng trong thiết kế cơ sở dữ liệu phân tán, vì việc xác định các phần dữ liệu thích hợp khác với vấn đề định vị tối ưu.
Kiến trúc tham khảo cung cấp khả năng điều khiển dư thừa tường minh ở mức phân đoạn, cho phép xác định các đoạn riêng biệt trong việc xây dựng các khối hình ảnh vật lý Ví dụ, trong hình ảnh vật lý R2 và R3, sự phủ lấp nhau cho thấy chúng chứa dữ liệu chung, tạo điều kiện để tham chiếu tường minh đến phần phủ lấp này, cụ thể là đoạn được nhân bản R2.
Kiến trúc này thể hiện sự độc lập giữa các hệ quản trị cơ sở dữ liệu cục bộ, được gọi là sự trong suốt ánh xạ cục bộ Trong hệ thống đồng nhất, các lược đồ độc lập vị trí có thể được xác định bằng cách sử dụng cùng một mô hình dữ liệu của các DBMS cục bộ, từ đó giảm thiểu độ phức tạp của ánh xạ.
Một loại trong suốt liên quan chặt chẽ với trong suốt vị trí là trong suốt nhân bản, có nghĩa là người dùng không nhận biết sự tồn tại của các đoạn nhân bản Rõ ràng, trong suốt nhân bản bao hàm trong suốt vị trí; tuy nhiên, trong một số trường hợp, người dùng có thể không có trong suốt vị trí nhưng vẫn có trong suốt nhân bản, do họ sử dụng một bản nhân riêng biệt và hệ thống thực hiện các tác vụ tương ứng trên các bản nhân khác.
1.4 Các loại phân đoạn ữ liệud
Việc chia một quan hệ thành nhiều quan hệ nhỏ hơn được gọi là phân đoạn quan hệ
Có các loại phân đoạnsau:
Phân đoạn ngang (horizontal fragmentation)
Phân đoạn ọc (vertical fragmentation)d
Chúng ta sẽ xem xét hai loại phân đoạn riêng biệt trước, sau đó phân tích các phân đoạn phức tạp hơn được tạo ra từ sự kết hợp của chúng Mục đích của việc phân đoạn là phân bổ dữ liệu một cách hợp lý giữa các trạm cục bộ, đồng thời đảm bảo rằng cơ sở dữ liệu không bị thay đổi ngữ nghĩa trong quá trình này, tức là phải đảm bảo tính chính xác khi thực hiện phân đoạn Dưới đây là các quy tắc cần tuân thủ.
Nếu một quan hệ R được chia thành các đoạn R1, R2, , Rn, thì mọi mục dữ liệu trong R đều có thể tìm thấy trong một hoặc nhiều đoạn Ri Đặc tính này tương tự như tính chất phân rã bảo toàn nội dung, đảm bảo rằng dữ liệu trong quan hệ toàn cục được ánh xạ vào các đoạn mà không bị mất mát Cần lưu ý rằng trong phân đoạn ngang, mục dữ liệu là một tập hợp, trong khi trong phân đoạn dọc, mục dữ liệu là một thuộc tính.
Các loại phân đoạn dữ liệu
Phép toán s ẽ khác nhau đối với mỗi loại phân đoạn khác nhau, tuy nhiên điều quan trọng là nó phải được xác định.
Trong trường hợp phân đoạn ngang, phép toán là phép hợp (), trong trường hợp phân đoạn ọc phép toán d là phép kết ( )
R = R1 R2 R n Tính tái tạo của quan hệ từ các đoạn ủa nó bảo đảm các rc àng buộc về phụ thuộc dữ l ệu sẽ được bảo toàni
Nếu một quan hệ R được phân đoạn ngang thành các đoạn R 1 ,R 2 , ,R n
Và mục dữ liệu di có trong R i thì nó không có trong các R k khác (ki) Điều kiện này bảo đảm các đoạnngang là tách biệt nhau.
i k và i,k [1,n]: R i R k = 1.4.1 Phân đoạn ngang dẫn xuất
Trong một số trường hợp, phân đoạn ngang của một quan hệ không thể dựa vào đặc điểm của các thuộc tính riêng của nó Thay vào đó, nó được dẫn xuất từ phân đoạn ngang của một quan hệ khác, và được gọi là phân đoạn ngang dẫn xuất.
Để phân đoạn quan hệ HOSO (MANV, MADA, NHIEMVU, THOIGIAN), chúng ta cần xác định các bộ thuộc các nhân viên ở chi nhánh cụ thể Việc sử dụng phép nửa kết giúp xác định các bộ của HOSO cho nhân viên tại chi nhánh đó Phân đoạn ngang dẫn xuất có thể được xác định dựa trên quy trình này.
HOSO 1 = HOSO MANV=MANV NHANVIEN 1 HOSO2 = HOSO MANV=MANV NHANVIEN2
Các phép nửa kết được sử dụng để lựa chọn các bộ HOSO thỏa mãn điều kiện kết nối với NHANVIEN 1 hoặc NHANVIEN 2, từ đó xác định các bộ HOSO thuộc chi nhánh 1 hoặc chi nhánh 2 theo thứ tự tương ứng.
Quan hệ HOSO có thể được tái tạo bằng phép hợp
Để thỏa mãn điều kiện đầy đủ của phân đoạn ở trên, thì tất cả các mã nhân viên trong quan hệ HOSO đề phải có trong quan hệ NHANVIEN.
Điều kiện tách biệt được đáp ứng khi một bộ của quan hệ HOSO không trùng lặp với hai bộ của quan hệ NHANVIEN ở hai đoạn khác nhau Điều này dễ dàng thực hiện do MANV là khóa của quan hệ NHANVIEN.
Ví dụ: Cho quan hệ toàn cục như sau
NHANVIEN (MANV, TENNV, CHUCVU, LUONG, CHINHANH)
Phân đoạn ọc quan hệ nd ày có thể được xác định như sau:
NHANVIEN 1 = MANV, TENNV, CHUCVU, CHINHANH(NHANVIEN)
Sự phân đoạn này có thể phản ánh một tổ chức mà tiền lương được quản lý riêng biệt.
Tái tạo quan hệ NHANVIEN có thể được thực hiện bằng phép kết như sau: NHANVIEN = NHANVIEN 1 MANV = MANVNHANVIEN 2
Các đoạn được tạo ra từ các phép phân đoạn trước đó thể hiện các mối quan hệ, cho phép chúng ta áp dụng các phép phân đoạn này theo cách đệ quy Mỗi lần phân đoạn cần phải đáp ứng các điều kiện chính xác Ví dụ, hãy xem xét mối quan hệ toàn cục.
Phân đoạn NHANVIEN bao gồm các trường thông tin như MANV, TENNV, CHUCVU, LUONG và CHINHANH Để tạo ra phân đoạn ổn hợp, chúng ta áp dụng phương pháp phân đoạn theo chiều dọc và sau đó thực hiện phân đoạn ngang dựa trên trường CHINHANH.
NHANVIEN 1 =chinhanh= 1 MANV, TENNV, CHUCVU, CHINHANH(NHANVIEN) NHANVIEN 2 =chinhanh >1 AND chinhanh 5 MANV,TENNV,CHUCVU,CHINHANH(NHANVIEN)
NHANVIEN 4 =MANV, TENNV, LUONG(NHANVIEN)
Tái tạo quan hệ NHANVIEN được xác định bởi biểu thức
Tổ ng k ết chương 1
Chương một cung cấp cái nhìn tổng quan về lý thuyết thiết kế cơ sở dữ liệu phân tán, bao gồm các khái niệm cơ bản về cơ sở dữ liệu phân tán và hệ quản trị của chúng Bài viết phân biệt giữa cơ sở dữ liệu tập trung và phân tán, đồng thời trình bày các phương pháp phân đoạn dữ liệu như phân đoạn ngang chính, phân đoạn ngang dẫn xuất, phân đoạn dọc và phân đoạn hỗn hợp Cuối cùng, chúng ta sẽ đi sâu vào thiết kế phân đoạn và thiết kế định vị cho cơ sở dữ liệu phân tán thuần nhất.
KẾ CƠ SỞ DỮ LIỆU PHÂN TÁN THUẦN NHẤT
Giới thiệu
Mặc dù kinh nghiệm về thiết kế hệ thống phân tán còn hạn chế, nhưng nghiên cứu về vấn đề này chủ yếu từ quan điểm kỹ thuật Bài viết sẽ tập trung vào các khía cạnh đặc thù của cơ sở dữ liệu (CSDL) phân tán, không đề cập đến các vấn đề thiết kế trong CSDL tập trung Trong CSDL phân tán, việc thiết kế lược đồ toàn cục và các CSDL vật lý cục bộ tại mỗi địa điểm là rất cần thiết Hơn nữa, thiết kế CSDL phân tán còn đối mặt với hai vấn đề mới đáng lưu ý.
Thiết kế phân đoạn trong cơ sở dữ liệu (CSDL) liên quan đến việc xác định các quan hệ toàn cục và phân chia chúng thành các phân đoạn ngang, dọc hoặc hỗn hợp Trong khi đó, thiết kế định vị tập trung vào việc ánh xạ các đoạn dữ liệu vào hình ảnh vật lý và xác định việc nhân bản các đoạn này Để thực hiện thiết kế CSDL phân tán, điều quan trọng nhất là nắm bắt yêu cầu của người dùng, hay nói cách khác, hiểu rõ yêu cầu của ứng dụng.
Tần suất chạy được ứng dụng
Số lượng, loại v ự phân tán của các truy xuất trong mỗi ứng dụngà s
Mục tiêu thiết kế cơ sở dữ liệu phân tán là tối ưu hóa tính cục bộ trong xử lý dữ liệu, đưa dữ liệu gần hơn với ứng dụng sử dụng Để đảm bảo mức độ sẵn sàng cao cho các ứng dụng chỉ đọc, hệ thống cần lưu trữ nhiều bản sao của thông tin giống nhau Hơn nữa, hệ thống phải có khả năng chuyển đổi sang bản sao khác khi bản chính trở nên không khả dụng.
Sau đây chúng ta sẽ xem xét các phương pháp tiếp cận để thiết kế CSDL phân tán
Các phương pháp tiếp cận
Có hai cách tiếp cận khác nhau để thiết kế phân tán dữ liệu: cách tiếp cận trên xu ng và cách tiố ếp cận dưới lên.
2.2.1 Phương pháp thiết kế từ trên xuống
Trong phương pháp tiếp cận từ trên xuống, chúng ta bắt đầu bằng việc thiết kế lược đồ tổng thể của cơ sở dữ liệu (CSDL), sau đó phân đoạn và định vị các đoạn tại các vị trí cụ thể, cuối cùng là tạo ra hình ảnh vật lý cho hệ thống Các bước thiết kế bao gồm việc xác định cấu trúc dữ liệu và cách thức tổ chức thông tin một cách hiệu quả.
Phân tích yêu cầu để xác định môi trường hệ thống là bước quan trọng để nhận diện nhu cầu dữ liệu và xử lý dữ liệu Tài liệu yêu cầu đóng vai trò đầu vào cho hai hoạt động thiết kế: thiết kế khung nhìn và thiết kế ý niệm Thiết kế khung nhìn tập trung vào việc định nghĩa giao diện cho người sử dụng cuối, trong khi thiết kế ý niệm khảo sát và phân tích các hoạt động của hệ thống nhằm xác định các kiểu thực thể và mối liên kết giữa chúng, cũng như các chức năng hoạt động của hệ thống Quá trình thiết kế bao gồm hai bước cơ bản.
Thiết kế phân đoạn: xác định các quan hệ toàn cục được phân chia thành các phân đoạn ngang, dọc hoặc hổn hợp như thế nào.
Thiết kế định vị đoạn: xác định các đoạn được ánh xạ vào các hình ảnh vật lý như thế nào và xác định việc nhân bản các đoạn.
Thiết kế phân đoạn và thiết kế định vị là hai yếu tố quan trọng trong thiết kế cơ sở dữ liệu phân tán Mặc dù chúng là những vấn đề khác biệt, nhưng không thể xác định được sự phân đoạn và định vị tối ưu nếu giải quyết chúng một cách độc lập, do chúng có mối liên hệ chặt chẽ với nhau.
2.2.2 Phương pháp thiết kế từ dưới lên
Phương pháp thiết kế trên xuống rất hiệu quả trong việc xây dựng hệ thống mới, đặc biệt khi kết hợp các cơ sở dữ liệu (CSDL) hiện có từ môi trường tập trung và phân tán thành một CSDL thống nhất Khi tích hợp các CSDL này, chúng ta có thể áp dụng cách tiếp cận từ dưới lên để thiết kế dữ liệu phân tán, tập trung vào việc hợp nhất các lược đồ hiện tại thành một lược đồ toàn cục Mục tiêu của việc tích hợp này là thống nhất các định nghĩa dữ liệu chung và giải quyết các mâu thuẫn giữa các biểu diễn khác nhau cho cùng một dữ liệu.
Khi các cơ sở dữ liệu (CSDL) hiện tại được kết hợp thành một CSDL phân tán sử dụng nhiều hệ quản trị cơ sở dữ liệu (DBMS) khác nhau, độ phức tạp trong việc tích hợp dữ liệu tăng lên Điều này đòi hỏi phải thực hiện chuyển đổi giữa các biểu diễn khác nhau Một trong những phương pháp khả thi là thực hiện chuyển đổi một-một giữa các cặp DBMS khác nhau Tuy nhiên, trong các nguyên mẫu của hệ thống không đồng nhất, cách tiếp cận chủ yếu là chọn một mô hình dữ liệu chung và chuyển đổi tất cả các lược đồ khác nhau của các DBMS phức tạp thành một dạng biểu diễn duy nhất.
Trong chương này, chúng ta không thảo luận về phương pháp thiết kế từ dưới lên, mà chỉ tập trung vào thiết kế cơ sở dữ liệu phân tán thuần nhất, thường ưu tiên phương pháp thiết kế từ trên xuống.
Thiết kế phân đoạn
Mục đích của thiết kế phân đoạn là xác định các đoạn không giao nhau, tạo thành các đơn vị phân tán phù hợp cho việc định vị dữ liệu Thiết kế này bao gồm việc gom nhóm các bộ trong trường hợp phân đoạn ngang hoặc các thuộc tính trong trường hợp phân đoạn dọc, dựa trên các đặc tính chung theo quan điểm định vị.
2.3.1 Thiết kế phân đoạn ngang
Phân đoạn ngang là phương pháp chia một quan hệ thành các tập hợp con Mỗi đoạn được tạo thành từ các bộ của quan hệ đó Để thực hiện phân đoạn ngang chính, ta sử dụng các vị từ đã được định nghĩa trên quan hệ Ngược lại, phân đoạn ngang dẫn xuất thực hiện việc chia một quan hệ dựa vào các vị từ được định nghĩa trên một quan hệ khác.
2.3.1.1.Các yêu cầu thông tin của phân đoạn ngang
1 Thông tin về cơ sở dữ ệuli
Thông tin về Cơ Sở Dữ Liệu (CSDL) liên quan đến lược đồ ý niệm toàn cục, trong đó các quan hệ của CSDL được kết nối với nhau thông qua các phép kết Các mối liên kết này được biểu diễn bằng các quan hệ trong mô hình quan hệ, giúp đơn giản hóa việc biểu diễn các mô hình phân tán Các đường liên kết giữa các đối tượng CSDL, tức là các quan hệ, xác định quan hệ chủ ở gốc và quan hệ bộ phận ở ngọn, thể hiện sự kết nối giữa các quan hệ trong CSDL.
Trong cơ cấu tổ chức, các thuật ngữ thường được sử dụng bao gồm "quan hệ nguồn" cho quan hệ chủ và "quan hệ đích" cho quan hệ bộ phận.
Hình 2.2 Biễu diễn các mối liên kết giữa các quan hệ
2 Thông tin về ứng dụng
Các ứng dụng cung cấp thông tin định tính để phân đoạn và thông tin định lượng chủ yếu liên quan đến các mô hình định vị.
Thông tin định tính cơ bản bao gồm các vị từ trong truy vấn của người sử dụng Trong nghiên cứu này, chúng ta sẽ tập trung vào các ứng dụng quan trọng Giả sử chúng ta cần phân đoạn ngang một quan hệ R(A1, A2,…, An), trong đó Ai là thuộc tính được định nghĩa trên miền D Dưới đây là các định nghĩa liên quan.
Một vị từ đơn giản (simple predicate) pj được định nghĩa trên R với dạng: pj: Ai θ value, trong đó θ là một trong các phép so sánh như =, ≠, , ≤, ≥, và value được chọn từ miền của Ai (value ∈ Di).
Ký hiệu Pr là tập hợp các vị từ đơn giản được định nghĩa trên quan hệ R Các phần ử của Pt r được ký hiệu là pj.
Các truy vấn của người dùng thường chứa nhiều vị từ phức tạp, được hình thành từ sự kết hợp của các vị từ đơn giản Trong đó, tổ hợp mà chúng ta chú ý đặc biệt là vị từ giao tối thiểu.
Một vị từ giao tối thiểu (minterm predicate) mj trong một tập hợp các vị từ đơn giản Pr = {p1, p2, …, pm} là sự kết hợp của tất cả các vị từ trong Pr, có thể ở dạng thông thường hoặc phủ định Điều này đảm bảo rằng qj không bị mâu thuẫn, với qj = p* ∧ ∧ pi, trong đó 1 < i < m và p*i có thể là pi hoặc phủ định của pi, đồng thời qj không được bằng false.
2.3.1.2.Thiết kế phân đoạn ngang chính
Phân đoạn ngang là quá trình chia các bộ trong một quan hệ toàn cục thành các tập hợp con dựa trên thuộc tính của quan hệ đó Mỗi tập hợp con được gọi là một đoạn ngang và có thể được xác định thông qua việc biểu diễn mỗi đoạn như một phép chọn từ quan hệ toàn cục.
Ví dụ: Cho một quan hệ toàn cục là:
NHANVIEN (MANV, TENNV, CHUCVU, LUONG, CHINHANH): quan hệ này chứa dữ liệu về nhân viên của công ty
DUAN (MADA, TENDA, NGANSACH): quan hệ này chứa dữ ệu về li các dự án mà công ty đang phát triển
HOSO (MANV, MADA, CONGVIEC, THOIGIAN): quan hệ này chứa dữ liệu về hồ sơ của nhân viên được phân công thực hiện dự án.
MANV TENNV CHUCVU LUONG CHINHANH
Hình 2.3 Ví dụ lược đồ toàn cục trong phân đoạn ngang
Phân đoạn ngang có thể được xác định theo cách sau đây:
DA1 Tin học hóa quản lý đào tạo 50000000
DA2 Phần mềm kế toán 23000000
DA3 Bồi dưỡng tin học CBQL 10000000
NHANVIEN1= chinhanh=1 (NHANVIEN) NHANVIEN 2 = chinhanh=2 (NHANVIEN)
Sự phân đoạn trên được coi là đầy đủ khi '1' và '2' là tất cả các giá trị khả thi của thuộc tính CHINHANH Nếu không, chúng ta sẽ không xác định được các bộ dữ liệu tương ứng với các giá trị khác của CHINHANH thuộc về đoạn nào.
Điều kiện tái tạo thì được thỏa mãn dễ dàng thông qua phép hợp:
Điều kiện tách biệt được thỏa mãn vì MANV là khóa
Các phân đoạn ngang chính được xác định thông qua việc lựa chọn các quan hệ toàn cục, đảm bảo rằng mỗi bộ quan hệ chỉ được đưa vào một phân đoạn duy nhất, từ đó đảm bảo tính đúng đắn của phân đoạn.
Việc thiết kế phân đoạn ngang chính cần xác định tập hợp các vị trí chọn đầy đủ và tách biệt Các bộ phận của đoạn phải được tham chiếu lẫn nhau trong tất cả các ứng dụng.
Cho quan hệ R, các đoạn ngang R i của nó là: Ri = Fi (R); 1 i n và
F i là điều kiện chọn của đoạn Ri
Ví dụ: Phân đoạn quan hệ DUAN thành DUAN1 và DUAN2 dùng các vị từ cơ bản NGANSACH 1000000 và NGANSACH < 1000000
Ta có DUAN 1 = NGANSACH < 1000000(DUAN)
DUAN 2 = NGANSACH 1000000 (DUAN) Nhưng các vị từ cơ bản có thể thay đổi khi các ứng dụng hoạt động
Ví dụ: Thêm vào một bộ mới có NGANSACH = 5000000
Như vậy ta phải xem xét là đặt nó vào DUAN2 hay thêm vào DUAN3 và hạn chế DUAN 2
Một đoạn ngang Ricủa quan hệ R bao gồm các bộ của R thỏa mãn từ giao tối thiểu qj Việc lựa chọn các vị từ không thể dựa vào các quy tắc chính xác, vì
Bước đầu tiên trong bất kỳ giải thuật phân đoạn nào là xác định một tập hợp các vị từ đơn giản, với hai đặc tính quan trọng là tính đầy đủ và tính cực tiểu.
Thiết kế định vị
2.4.1 Đặt vấn đề về bài toán định vị
Bài toán định vị dữ liệu đã được phân tích trong ngữ cảnh của việc định vị tập tin, với nhiều mô hình khác nhau nhằm tối ưu hóa cho các tập tin dựa trên các giả thiết và mục tiêu đa dạng Một cách tiếp cận đơn giản là xem mỗi đoạn dữ liệu như một tập tin riêng biệt, nhưng phương pháp này không thực sự hiệu quả Nhiều bài toán vẫn chưa được giải quyết thỏa đáng, do đó cần đánh giá sự phân tán dữ liệu để tối ưu hóa các ứng dụng Tuy nhiên, điều này yêu cầu tối ưu hóa tất cả các ứng dụng quan trọng cho mỗi định vị dữ liệu, trong khi việc tối ưu hóa truy vấn là một thách thức lớn trong bài toán định vị dữ liệu.
Bài toán định vị liên quan đến việc tìm kiếm sự phân bố tối ưu của một tập hợp các đoạn F={F1, F2, , Fn} tại một mạng gồm các nơi S={S1, S2, , Sm}, nơi các ứng dụng Q={q1, q2, , qq} đang hoạt động.
Một trong những vấn đề quan trọng cần thảo luận là định nghĩa về tính tối ưu Tính tối ưu có thể được xác định thông qua hai chỉ số đo lường khác nhau.
Chi phí tối thiểu: Hàm chi phí bao gồm các chi phí lưu trữ mỗi đoạn Fitại
Chi phí truy vấn F i tại vị trí S j, chi phí cập nhật F i tại tất cả các nơi lưu trữ và chi phí truyền dữ liệu cần được xem xét Bài toán định vị đặt ra mục tiêu tìm một lược đồ định vị nhằm tối ưu hóa và giảm thiểu hàm chi phí này.
Chiến lược định vị hiệu suất nhằm duy trì hiệu suất tối ưu, với hai chiến lược nổi bật là tối thiểu hóa thời gian phản hồi và tối đa hóa thông lượng hệ thống.
Hầu hết các mô hình hiện có đều theo hai hướng tối ưu khác nhau, nhưng để nghiên cứu sâu hơn, cần xem xét hiệu suất và chi phí vào tiêu chí "tính tối ưu" Điều này có nghĩa là chúng ta nên phát triển các lược đồ định vị nhằm trả lời các truy vấn của người sử dụng với thời gian nhanh nhất và chi phí xử lý thấp nhất Tương tự, việc tối đa hóa thông lượng hệ thống cũng cần được xem xét Tuy nhiên, lý do chính khiến các mô hình như vậy chưa được phát triển là do tính phức tạp của chúng.
Xét một trường hợp đơn giản trong bài toán định vị, chúng ta sẽ tập trung vào đoạn đơn Fk, với các giả thiết và định nghĩa cần thiết để mô hình hóa vấn đề này.
Giả sử Q có thể được điều chỉnh để xác định các truy vấn cập nhật và truy vấn chỉ đọc, đồng thời định nghĩa các tập hợp liên quan đối với đoạn đơn Fk.
T={t 1 , t 2 , , t m } với ti là lưu lượng chỉ đọc (read-only traffic) tại nơi Si đối với Fkvà
U={u1, u2, , um} với ui là lưu lượng cập nhật (update traffic) ại nơi St iđối với Fk.
Giả định rằng chi phí truyền thông giữa hai địa điểm Si và Sj là không thay đổi cho mỗi đơn vị truyền thông Thêm vào đó, có sự khác biệt giữa các lần cập nhật và các lần đọc, từ đó có thể xác định các tập hợp sau đây.
Gọi chi phí lưu trữ đoạn ở Si là di Do đó, chúng ta có thể định nghĩa D={d 1 , d 2 , , d m } cho chi phí lưu trữ của đoạn Fktại tất cả các nơi.
Giả sử không có các ràng buộc về khả năng cho các nơi hoặc các liên kết truyền thông.
Bài toán định vị có thể được hiểu là bài toán tối ưu hóa chi phí, trong đó chúng ta cần xác định tập hợp T S để chứa các bản sao của đoạn này Trong phần tiếp theo, Xilà sẽ thay đổi quyết định để đặt một đoạn sao cho hiệu quả nhất.
Có nhiều lý do khiến việc đặt vấn đề đơn giản không phù hợp cho thiết kế cơ sở dữ liệu phân tán, những lý do này tồn tại trong tất cả các mô hình định vị tập tin trước đây trên các mạng máy tính.
Chúng ta không thể xem các đoạn như những tập tin độc lập, vì việc xác định vị trí của một đoạn có thể ảnh hưởng đến các quyết định liên quan đến các đoạn khác Điều này là do chi phí truy xuất đến các đoạn còn lại có thể thay đổi, chẳng hạn như do phép kết phân tán Vì vậy, cần chú ý đến mối quan hệ giữa các đoạn để tối ưu hóa quá trình truy xuất.
Truy xuất dữ liệu trong các ứng dụng mô hình hóa rất đơn giản, khi yêu cầu từ người sử dụng được phát sinh và toàn bộ dữ liệu cần thiết để đáp ứng yêu cầu này được chuyển đến vị trí đó Tuy nhiên, trong các hệ thống cơ sở dữ liệu phân tán, quy trình truy xuất dữ liệu trở nên phức tạp hơn nhiều so với mô hình hóa đơn giản.
Việc "truy xuất tập tin từ xa" yêu cầu phải mô hình hóa mối quan hệ giữa việc định vị và xử lý truy vấn một cách chính xác.
Tổng kết chương 2
Chương 2 trình bày về các cách tiếp cận để thiết kế CSDL phân tán trong đó phương pháp thiết kế từ trên xuống thường được dùng trong thiết kế CSDL phân tán thuần nhất, bàn luận v ổng hợp các phươnà t g pháp cũng như các giải thuật trong thiết kế phân đoạn ngang như các phương pháp dùng tập vị từ để mô tả, trong thiết kế phân đoạn dọc như giải thuật năng lượng liên kết với các phương pháp tách biệt, gom tụ, bàn luận về mô hình thiết kế định vị CSDL phân tán thuần nhất.
K THU T KHAI PHÁ D LI U 49 Ỹ Ậ Ữ Ệ 3.1 Tổng quan về phát hiện tri thức v à khai phá d ữ liệu
Phát hiện tri thức
Phát hiện tri thức trong cơ sở dữ liệu là quá trình nhận diện các mẫu hoặc mô hình có tính hợp lệ, mới mẻ, hữu ích và dễ hiểu Khai phá dữ liệu là bước quan trọng trong quy trình này, sử dụng các thuật toán chuyên dụng để tìm kiếm các mẫu và mô hình trong dữ liệu, đồng thời tuân thủ các quy định về hiệu quả tính toán chấp nhận được.
Mục đích của việc phát hiện tri thức và khai phá dữ liệu là tìm ra các mẫu và mô hình ẩn giấu trong cơ sở dữ liệu, giúp làm sáng tỏ thông tin quý giá bị che khuất bởi khối lượng dữ liệu khổng lồ.
Quá trình phát hiện tri thức
Quá trình phát hiện tri thức có thể được hình dung qua sơ đồ sau:
Hình 3.1 Quá trình phát hiện tri thức Trong đó:
Làm sạch dữ liệu (Data cleaning) là quá trình loại bỏ nhiễu, bao gồm các bộ dữ liệu không bình thường, không tuân theo quy luật, nguyên tắc hay mô hình dữ liệu, thường được gọi là các phần tử ngoại lai Đồng thời, quá trình này cũng nhằm xử lý dữ liệu không nhất quán để đảm bảo tính chính xác và đáng tin cậy của thông tin.
Lựa chọn dữ liệu là quá trình quan trọng giúp xác định và trích xuất những dữ liệu phù hợp từ cơ sở dữ liệu, phục vụ cho nhiệm vụ phân tích hiệu quả.
Chuyển đổi dữ liệu (Data transformation): Dữ liệu được chuyển đổi hay được hợp nhất về dạng thích hợp cho việc khai phá.
Khai phá dữ liệu là một quá trình quan trọng, trong đó các phương pháp thông minh được sử dụng để trích xuất các mẫu dữ liệu hữu ích.
Đánh giá mẫu (Pattern evaluation): Dựa trên một số độ đo nào đó xác định lợi ích thực sự, độ quan trọng của các mẫu biểu diễn tri thức.
Biểu diễn tri thức là giai đoạn quan trọng trong việc sử dụng các kỹ thuật hiển thị nhằm truyền tải tri thức đến người dùng một cách hiệu quả.
Khai phá d ữ liệu
3.1.3.1.Khai phá dữ liệu là phần cốt lõi của quá trình phát hiện tri thức
Khai phá dữ liệu, xuất hiện vào cuối những năm 80, là một tập hợp các kỹ thuật nhằm phát hiện thông tin hữu ích và giá trị tiềm ẩn trong khối lượng dữ liệu lớn Quá trình này giúp phân tích và giải thích dữ liệu một cách bán tự động, đồng thời tìm ra các mẫu hình có tính chính quy trong tập dữ liệu.
3.1.3.2.Mục đích chính của khai phá dữ liệu
Khai phá dữ liệu được thực hiện qua nhiều giai đoạn và sử dụng nhiều kỹ thuật nhằm hai mục đích chính dự đoán (prediction) và mô tả (description).
Khai phá dữ liệu mô tả là quá trình xác định các tính chất và đặc điểm chung của dữ liệu trong cơ sở dữ liệu hiện có Các kỹ thuật chính trong khai phá dữ liệu mô tả bao gồm phân cụm (clustering), tóm tắt (summarization), trực quan hóa (visualization), phân tích sự phát triển và độ lệch (evolution and deviation analysis), cũng như phân tích luật kết hợp (association rules).
Dự đoán là quá trình suy luận từ dữ liệu hiện có để đưa ra những phán đoán chính xác, đồng thời khám phá các quy luật kết hợp trong một tập dữ liệu lớn nhằm hỗ trợ quyết định Các kỹ thuật chính trong dự đoán bao gồm phân lớp (classification) và hồi quy (regression).
3.1.3.3.Kỹ thuật khai phá dữ liệu
Khai phá dữ liệu được thực hiện qua nhiều giai đoạn và sử dụng nhiều kỹ thuật ụ thể ta C tìm hiểu một số phương pháp sau:
Phân lớp dữ liệu là một phương pháp nhằm dự đoán nhãn lớp cho các mẫu dữ liệu Quá trình này thường được chia thành hai bước chính: đầu tiên là xây dựng mô hình, sau đó là sử dụng mô hình đã xây dựng để thực hiện phân lớp dữ liệu.
Hồi quy là một phương pháp phân tích dữ liệu nhằm dự đoán các giá trị liên tục, khác với phân lớp dữ liệu chỉ dự đoán các giá trị rời rạc Phương pháp này giúp xây dựng bản đồ biến để dự đoán giá trị thực của các mục trong tập dữ liệu.
Phân cụm (Clustering) là phương pháp nhằm nhóm các đối tượng tương tự trong tập dữ liệu thành các nhóm, đảm bảo rằng các đối tượng trong cùng một nhóm có sự tương đồng cao, trong khi các đối tượng thuộc nhóm khác thì không Khác với phân lớp dữ liệu, phân cụm không yêu cầu phải định nghĩa trước các mẫu, do đó có thể xem đây là hình thức học bằng quan sát, trong khi phân lớp là học bằng ví dụ.
Trong phương pháp này, chúng ta không thể dự đoán kết quả của các nhóm khi bắt đầu quá trình Do đó, việc có một chuyên gia trong lĩnh vực đó để đánh giá các nhóm thu được là rất cần thiết.
Phương pháp phân cụm thường được sử dụng trong các lĩnh vực về phân đoạn thị trường, phân đoạn khách hàng, nhận dạng mẫu, phân loại trang Web…
Ngoài ra phân cụm dữ ệu cli òn có thể được sử dụng như một bước tiền xử lý cho các thuật toán khai phá dữ liệu khác.
3.1.3.4.Các ứng dụng trong khai phá dữ liệu
Khai phá dữ liệu (KPDL) đang được ứng dụng rộng rãi trong nhiều lĩnh vực như marketing, tài chính, ngân hàng, bảo hiểm, khoa học, y tế, an ninh và internet Nhiều tổ chức và công ty lớn trên thế giới đã áp dụng KPDL vào hoạt động sản xuất kinh doanh, mang lại lợi ích to lớn, như Bảo hiểm y tế Australia đã phát hiện ra các xét nghiệm không hợp lý Các công ty phần mềm hàng đầu như Oracle và IBM cũng chú trọng nghiên cứu và phát triển kỹ thuật KPDL, với Oracle tích hợp công cụ KPDL vào Oracle9i và IBM tiên phong trong phát triển ứng dụng như Intelligence Miner.
Khai phá dữ liệu ngày càng trở nên quan trọng trong việc phân tích và quản lý thị trường, cũng như trong việc phân tích rủi ro và các sai hỏng Nó đóng vai trò thiết yếu trong việc khai thác Web, khai thác văn bản và phân tích số liệu, giúp các doanh nghiệp đưa ra quyết định chính xác hơn.
Luật kết hợp và thuật toán Apriori
Tập I={i1,i2, ,in} bao gồm n mục phân biệt i1,i2,…,in mỗi mục (item) được hiểu như mỗi thuộc tính trong cơ sở dữ liệu.
Tập X I với k=|X| được gọi là k-tập_mục (tập mục có lực lượng bằng k)
Ví dụ tập {i 1 , i 2 } là 2-tập_mục
Tập T được gọi l à một giao tác Ví dụ như tập các mặt hàng chứa trong một hóa đơn mua hàng.
Gọi D l ập tất cả các giao tác.à t
Định nghĩa: Cho X là một tập mục, độ hỗ trợ của X l ỉ lệ phần trăm à t giữa các giao tác có chứa X đối với tổng số giao tác có trong D.
Độ hỗ trợ của X kí hiệu là sup p ( X ) và
4 Tập mục phổ biến (frequent itemsets)
Tập mục phổ biến được định nghĩa là những tập mục có độ hỗ trợ tối thiểu bằng hoặc lớn hơn một giá trị nhất định, được gọi là ngưỡng hỗ trợ, ký hiệu là minssup.
3.2.1.2.Một số tính chất liên quan đến tập mục phổ ếnbi
1 0 sup p ( X ) 1 (Độ hỗ trợ của một tập mục có giá trị nằm trong đoạn từ không đến một)
Giả sử X, Y là các tập mục nếu XY thì sup p ( X ) sup p ( Y ) vì tất cả giao tác của D nếu chứa Y thì cũng chứa X.
Nếu tập mục B là một tập mục phổ biến trên D với sup(B) ≥ min sup, thì mọi tập con A của B cũng sẽ trở thành tập mục phổ biến trên D Điều này xảy ra vì mọi giao tác trong D chứa B cũng sẽ chắc chắn chứa A.
2 Bao hàm của tập mục không phổ biến cũng l ập mục không phổ biến: Nếu à t tập B không thỏa mãn độ hỗ trợ tối thiểu trên D, nghĩa là sup p (B)< min sup thì mọi tập A chứa B đều l ập mục không phổ biến và t ì giao dịch không chứa B thì chắc chắn không chứa A.
1 Luật kết hợp: Luật kết hợp là một quan hệ có dạng X Y , với X, Y I và X Y , trong đú X được gọi là tiền đề và Y là hệ quả của luật Luật kết hợp có 2 thông số quan trọng là độ hỗ trợ và độ tin cậy.
2 Độ hỗ trợ của luật
Định nghĩa: Độ hỗ trợ của luật kết hợp X Y , kí hiệu là
( sup p X Y : là tỉ lệ phần trăm giữa các giao tác chứa X Y và tổng số các giao tác chứa trong cơ sở dữ liệu.
Độ hỗ trợ của luật thể hiện phạm vi ảnh hưởng của luật trong toàn bộ cơ sở dữ liệu Cụ thể, nếu độ hỗ trợ của luật được xác định là 30%, điều này có nghĩa là trong tổng số giao tác, có 30% giao tác chứa tập X∪Y.
3 Độ tin cậy của luật
Định nghĩa: Độ tin cậy của một luật kết hợp X Y , kí hiệu
( X Y conf là tỉ lệ phần trăm giữa số giao tác chứa XY và số giao tác chứa X
Độ tin cậy của luật là chỉ số thể hiện mức độ chính xác và khả năng tin cậy của luật trong phạm vi ảnh hưởng của nó, được xác định bởi độ hỗ trợ Nó cho thấy mối tương quan giữa hai tập mục X và Y trong dữ liệu, giúp đánh giá hiệu quả của luật trong việc phân tích và dự đoán.
Khi nói rằng luật X Y có độ tin cậy 80% và độ hỗ trợ 15%, điều này có nghĩa là 80% các giao dịch hỗ trợ cho X cũng đồng thời hỗ trợ cho Y, trong khi tỷ lệ giao dịch chứa cả X và Y trong cơ sở dữ liệu chỉ là 15%.
Khai phá các luật kết hợp trong cơ sở dữ liệu D là quá trình tìm kiếm tất cả các luật dạng (X ⇒ Y) với độ hỗ trợ và độ tin cậy đạt mức tối thiểu đã định Các luật X ⇒ Y này phải có độ hỗ trợ lớn hơn hoặc bằng giá trị sup p min, tức là sup p (X ∪ Y) ≥ min sup p, đảm bảo rằng cả X và Y đều là các mục phổ biến.
3.2.3 Bài toán tìm luật kết hợp
Khai thác luật kết hợp gặp khó khăn do số lượng lớn các luật cần xem xét trong cơ sở dữ liệu ngày càng mở rộng Số lượng luật tăng theo lũy thừa của tập mục I, nhưng không cần khai thác tất cả các luật Các luật cần được giới hạn bởi ngưỡng hỗ trợ và ngưỡng tin cậy, cho phép chia bài toán thành hai phần: đầu tiên là tìm tất cả các tập mục phổ biến Z thỏa mãn min sup, tiếp theo là xác định tập luật X=Z\YY có độ tin cậy lớn hơn hoặc bằng ngưỡng tin cậy từ tất cả các tập mục phổ biến Z Các luật thu được sẽ thỏa mãn độ hỗ trợ ở cả hai vế điều kiện và hệ quả khi đạt yêu cầu min conf.
Để tìm tất cả các luật kết hợp trên cơ sở dữ liệu giao tác D, chúng ta cần thực hiện các bước sau: Cho trước một tập mục các I, một cơ sở dữ liệu các giao tác D và các ngưỡng hỗ trợ min sup p và ngưỡng tin cậy min conf Mục tiêu là tìm tất cả các luật kết hợp trên D thỏa mãn hai điều kiện: mức hỗ trợ sup p (X Y) lớn hơn hoặc bằng min sup p và mức tin cậy conf (X Y) lớn hơn hoặc bằng min conf.
Hai giai đoạn cơ bản của thuật toán khai phá dữ liệu
Phần nhập: I, D, min sup p , min conf
Phần xuất: Các luật thỏa min sup p và min conf
1) Tìm tất cả các tập mục phổ biến trong D (tìm tất cả các tập mục có độ hỗ trợ lớn hơn hoặc bằng min sup p ).
2) Sinh các luật từ các tập mục phổ biến sao cho độ tin cậy của luật lớn hơn hoặc bằng độ tin cậy tối thiểu.
Vậy thuật toán tìm luật kết hợp thực hiện qua 2 giai đoạn:
1) Tìm các tập mục phổ biến.
2) Sinh luật từ các tập mục phổ biến ở giai đoạn 1.
Thuật toán Apriori, được đề xuất bởi Rakesh Agrawal, Tomasz Imielinski và Arun Swami vào năm 1993, là công cụ quan trọng trong việc tìm kiếm các tập mục phổ biến Đây là nền tảng cho sự phát triển của các thuật toán tìm luật kết hợp sau này.
L k là tập hợp các k-tập mục phổ biến, tức là những tập mục có độ hỗ trợ lớn hơn hoặc bằng ngưỡng tối thiểu min sup p và có số lượng phần tử bằng k Mỗi phần tử trong tập mục này bao gồm hai trường: một trường lưu trữ tập mục của giao dịch và một trường chứa số đếm hỗ trợ cho tập mục đó.
C k : tập các k-tập_mục ứng cử (candidate itemset), là các tập mục có lực lượng bằng k, mỗi phần tử của tập này cũng có 2 trường như trong tập L k
Thuật toán Apriori xác định tất cả các tập mục phổ biến Lk thỏa mãn ngưỡng hỗ trợ tối thiểu min sup p Trong giai đoạn đầu, thuật toán xác định các tập mục 1-ập_mục và độ hỗ trợ tương ứng, từ đó tạo ra tập C1 là tập ứng cử cho tập mục 1-ập_mục Các tập mục có độ hỗ trợ lớn hơn hoặc bằng min sup p sẽ được chọn làm tập mục phổ biến L1 Ở giai đoạn tiếp theo, thuật toán sử dụng các tập mục phổ biến Lk-1 để tìm các tập mục ứng viên Ck thông qua phương pháp kết nối và cắt tỉa, được trình bày trong thủ tục apriori_gen() Cuối cùng, dựa vào tập mục ứng viên Ck, thuật toán xác định các tập mục phổ biến tiếp theo.
L k+1 là tập hợp các mục phổ biến có (k+1) mục, được hình thành bằng cách loại bỏ những tập mục không đạt ngưỡng hỗ trợ Quá trình này tiếp tục cho đến
Phân cụm dữ liệu
Phân cụm (clustering) là quá trình nhóm các đối tượng tương tự thành các nhóm hay lớp đối tượng có đặc điểm gần gũi nhau Một lớp (cluster) bao gồm các đối tượng dữ liệu mà trong đó các đối tượng có sự tương đồng cao và ít tương tác khác nhau so với các đối tượng thuộc lớp khác Độ tương đồng giữa các đối tượng được xác định theo một tiêu chuẩn nhất định, tùy thuộc vào ngữ cảnh và được xác định trước.
Trong quá trình phân cụm, chúng ta không biết trước tính chất của các lớp mà phải dựa vào mối quan hệ giữa các đối tượng để tìm ra sự giống nhau Việc này được thực hiện thông qua các độ đo đặc trưng cho mỗi nhóm, giúp xác định các đặc điểm chung của các đối tượng trong phân cụm.
Phân cụm dữ liệu là một công cụ quan trọng trong phân tích mẫu không có nhãn, được ứng dụng rộng rãi trong các giải pháp học máy, khai thác dữ liệu, phân loại văn bản và phân đoạn hình ảnh.
Hình 3.2 Các giai đoạn gom cụm 3.3.2 Đo độ tương tự
Sự tương đồng giữa các cụm là yếu tố quan trọng trong việc phân tích, trong khi đo khoảng cách giữa hai mẫu trong không gian đặc trưng là cốt lõi của các phương pháp gom cụm Khoảng cách Euclidean thường được sử dụng để đo lường các đặc trưng này.
Với trường hợp đặc biệt p =2 của Minkowski metric
Khoảng cách Euclidean thường được dùng để định giá trạng thái gần của các đối tượng trong không gian hai chiều hoặc ba chiều
3.3.3 Các giải thuật phân cụm
Có nhiều thuật toán phân cụm khác nhau, và việc chọn lựa thuật toán thích hợp phụ thuộc vào kiểu dữ liệu cũng như mục đích sử dụng của người dùng Các kỹ thuật phân cụm thường được chia thành hai cách tiếp cận chính: phương pháp phân hoạch và phương pháp phân cấp.
Tìm sự tương đồng giữa các mẫu
Phương pháp phân hoạch (Partitioning methods) là kỹ thuật xác định số nhóm (k) trước và tính chất của từng nhóm Sau đó, các thuật toán sẽ tìm cách phân bổ dữ liệu vào các nhóm phù hợp nhất Một số thuật toán tiêu biểu trong phương pháp này bao gồm K-MEANS, K-MEDOID, và CLARANS.
Phương pháp K-MEANS là một kỹ thuật phân cụm phổ biến, được J B MacQueen giới thiệu vào năm 1967 K-MEANS có khả năng điều chỉnh linh hoạt để phù hợp với từng bài toán cụ thể, giúp tối ưu hóa quá trình phân tích dữ liệu Phương pháp này được ứng dụng rộng rãi trong thực tiễn, mang lại hiệu quả cao trong việc nhóm các đối tượng tương đồng.
Thu t toán K-MEANS bao g m các bậ ồ ước sau:
Bước đầu tiên trong quá trình phân cụm là chọn các điểm trung tâm (center) hoặc điểm nhân (seed) Ví dụ, thuật toán MacQueen sử dụng các điểm dữ liệu đầu tiên làm điểm trung tâm Trong nhiều trường hợp, việc chọn các điểm nhân có khoảng cách không gian lớn giữa chúng sẽ giúp cải thiện hiệu quả của quá trình phân cụm.
Bước 2: Xác định các điểm dữ liệu còn lại trong các lớp sao cho việc chia đó là thích hợp nhất Điều này có thể thực hiện một cách đơn giản bằng cách chia điểm dữ liệu vào lớp nào gần với điểm đó nhất Khoảng cách được đo bằng chính khoảng cách từ điểm dữ liệu đến nhân của lớp.
Bước 3: Tính lại đ ểi m tâm c a các lủ ớp Một cách n giđơ ản để tính ại đ ểm l i tâm c a l p là xác ủ ớ định trung bình cộng c a tủ ất cả các đ ểmi trong l p ớ
Lặp lại quá trình từ bước 2 cho đến khi không còn sự thay đổi về các điểm đã được xác định, nghĩa là các điểm tâm không thay đổi trong một sai số cho phép.
Có th mô tể ả th ật toán K means như sau:u -
Phần nhập: ập X = {x1, x2, , xn} RT m
Số lượng các cụm k cần phân chia
Phần xuất: c1, c2, , ck là các cụm.
While không có thay i đổ do
Thuật toán K-MEANS (hoặc CLARANS) rất đơn giản, dễ hiểu và dễ áp dụng Tuy nhiên, nhược điểm lớn của K-MEANS là hiệu suất kém khi áp dụng với dữ liệu có nhiều biến Thêm vào đó, các thuật toán này không thể hoạt động hiệu quả với cơ sở dữ liệu có tỉ lệ dữ liệu nhiễu cao Phương pháp phân cụm theo kiểu phân cấp (Hierarchical methods) có thể là một giải pháp thay thế cho những hạn chế này.
Phương pháp phân cụm theo hính thế là một kỹ thuật nhóm các đối tượng dựa trên cây phân cấp Có hai loại phương pháp phân cụm chính: phương pháp phân cụm theo kiểu từ dưới lên (bottom up) và phương pháp phân cụm từ trên xuống (top down) Ngoài ra, phương pháp dựa vào mật độ (Density-based methods) cũng là một lựa chọn quan trọng trong phân cụm dữ liệu.
Các phương pháp phân cụm thường dựa vào khoảng cách giữa các đối tượng, tuy nhiên, chúng gặp khó khăn khi xác định các lớp có hình dạng phức tạp Phương pháp phân cụm dựa vào mật độ có khả năng phát hiện các lớp với hình dạng bất kỳ Ý tưởng chính của phương pháp này là xây dựng một lớp khi mật độ của các điểm trong một khu vực nào đó đủ cao; nếu mật độ dưới ngưỡng, các điểm đó sẽ được coi là nhiễu Phương pháp này giúp cải thiện khả năng phân tích các dữ liệu có cấu trúc phức tạp hơn.
Phương pháp chia lớp dữ liệu vào chia lưới là một kỹ thuật tối ưu hóa không gian, giúp phân chia thành một số ô lưới xác định Phương pháp này cho phép thực hiện các thao tác chia lưới trên cấu trúc dữ liệu một cách hiệu quả Ưu điểm chính của phương pháp này là thời gian xử lý nhanh, không phụ thuộc vào số lượng đối tượng dữ liệu mà chỉ phụ thuộc vào số lượng ô lưới trong không gian lượng tử.
Có nhiều phương pháp phân cụm và mỗi phương pháp đều có các thuật toán tương ứng Tùy thuộc vào từng bài toán cụ thể, chúng ta có thể áp dụng các thuật toán khác nhau Mỗi thuật toán sẽ đáp ứng được một số vấn đề nhất định trong việc tìm kiếm tri thức.
Tổng kết chương 3
Chương 3 đã trình bày được khái quát các nội dung về phát hiện tri thức, các quá trình phát hiện tri thức, mối quan hệ giữa khai phá dữ liệu và phát hiện tri thức Ngoài ra còn tìm hiểu khai phá luật kết hợp là giai đoạn quan trọng khai phá dữ liệu Khai phá luật kết hợp trong cơ sở dữ liệu chia thành hai giai đoạn: tìm tất cả các tập mục phổ biến trong cơ sở dữ liệu, sau đó sinh các luậ ết hợp t k trên các tập mục phổ biến vừa tìm Chương 3 đặc biệt đã tìm hiểu được thuật toán Apriori - thuật toán cơ bản tìm các tập mục phổ biến và thuật toán sinh luật kết hợp Ngoài ra chương này nghiên cứu kỹ thuật khai phá dữ liệu là phân cụm dữ liệu, tìm hiểu các phương pháp phân cụm và đặc biệt là nghiên cứu thuật toán k-mean là phương pháp phổ biến và được sử dụng cho vấn đề thiết kế phân đoạn mà chương sau sẽ trình bày tiếp theo.
DỤNG CÁC KỸ THUẬT KHAI PHÁ D LI U TRONG Ữ Ệ THIẾT KẾ CƠ SỞ DỮ LIỆU PHÂN TÁN THUẦN NHẤT
Giới thiệu
Thiết kế cơ sở dữ liệu phân tán rất phức tạp do nhiều yếu tố tổ chức và kỹ thuật Trong hệ thống đa nơi, các vấn đề kỹ thuật mới xuất hiện, như việc kết nối các điểm làm việc qua mạng và tối ưu hóa việc phân tán dữ liệu Về mặt tổ chức, việc phân quyền trở nên quan trọng khi hệ thống phân tán thay thế cho hệ thống tập trung, có thể dẫn đến xung đột trong công tác tổ chức.
Mặc dù kinh nghiệm thiết kế hệ thống phân tán còn hạn chế, nhưng đây là lĩnh vực nghiên cứu sâu rộng Quan điểm toán học về cơ sở dữ liệu giúp phân tán dữ liệu hiệu quả qua mạng máy tính, được thể hiện trong hệ thống file phân tán và gần đây là trong cơ sở dữ liệu phân tán.
Thiết kế cơ sở dữ liệu phân tán thuần nhất bao gồm việc xây dựng lược đồ toàn cục và thiết kế các cơ sở dữ liệu vật lý cục bộ tại từng vị trí Điều này đặt ra những thách thức mới trong việc thiết kế cơ sở dữ liệu phân tán.
Thiết kế phân đoạn xác định các quan hệ toàn cục được phân chia thành các phân đoạn ngang, phân đoạn ọc như thế nd ào.
Thiết kế định vị đoạn đóng vai trò quan trọng trong việc ánh xạ các đoạn vào hình ảnh vật lý và xác định cách nhân bản các đoạn Để xây dựng các lược đồ hiệu quả, cần xem xét kỹ lưỡng các yêu cầu của ứng dụng, vì lược đồ phải hỗ trợ ứng dụng một cách tối ưu Trong thiết kế cơ sở dữ liệu phân tán, việc hiểu rõ các yêu cầu của ứng dụng là cần thiết, đặc biệt đối với các ứng dụng quan trọng, tức là những ứng dụng được thực hiện thường xuyên Do đó, chúng ta cần chú ý đến vị trí chạy ứng dụng và tần suất thực hiện tại từng địa điểm.
Thiết kế phân đoạn dọc với kỹ thuật ứng dụng luật kết hợp
Phân đoạn dọc là một kỹ thuật thiết kế cơ sở dữ liệu (CSDL) nhằm tối ưu hóa truy cập các giao dịch của người dùng Kỹ thuật này chia nhỏ một quan hệ thành các quan hệ con, mỗi quan hệ con chứa một tập hợp các thuộc tính của quan hệ gốc Do các giao dịch CSDL thường chỉ cần truy cập một phần thuộc tính nhất định, việc phân chia này giúp rút ngắn thời gian truy cập, mang lại hiệu quả cao hơn cho người dùng.
Phân đoạn đồ thị là một bài toán hóc búa trong lĩnh vực phân tích dữ liệu, liên quan đến việc phân chia các đoạn đồ thị thành các nhóm khác nhau Số lượng các đoạn đồ thị có thể phân ra được tính bằng số Bell B(m), với B(m) tăng nhanh theo số m Cụ thể, B(5) đạt khoảng 115.000, B(10) khoảng 10^9, và B(20) ước tính lên đến 10^23 Do đó, bài toán này thường sử dụng các thuật toán heuristic để tìm ra giải pháp tối ưu Hai phương pháp chính được nghiên cứu là phương pháp nhóm và phương pháp tách, trong đó phương pháp tách cho thấy sự tối ưu hơn Để giải quyết vấn đề này, luận văn đã áp dụng thuật toán Apriori, một cách tiếp cận tự nhiên để mô tả mối liên kết giữa các thuộc tính trong cơ sở dữ liệu, giúp tìm ra giải pháp phù hợp và hỗ trợ người thiết kế trong việc quyết định phân đoạn đồ thị một cách logic và hiệu quả hơn.
4.2.1 Phương pháp phân đoạn dọc dựa trên luật kết hợp Đã có nhiều nghiên cứu đóng góp to lớn về các vấn đề phân đoạn dọc trong hơn hai thập kỷ qua như việc phân chia CSDL được ứng dụng trong các hệ CSDL tập trung (Ceri, Navathe, & Wiederhold, 1983; Cornell & Yu, 1990; Hoffer & Severance, 1976; Ng, Gorla, Law, & Chan, 2003; Song & Gorla,
Trong các hệ cơ sở dữ liệu phân tán, thiết kế Data Warehouse và cơ sở dữ liệu hướng đối tượng, nhiều nghiên cứu đã được thực hiện để giải quyết các vấn đề liên quan đến phân đoạn dữ liệu Hoffer và Severance (1976) đã phát triển một giải thuật nhằm xử lý các vấn đề phân đoạn dọc thông qua việc sử dụng mối ràng buộc tiềm tàng giữa các thuộc tính tương tự trên các mẫu giao dịch Nghiên cứu này sau đó đã được mở rộng bởi Navathe, Ceri, Wiederhold, và Dou (1984), với một giải thuật phân đoạn dựa trên mối quan hệ giữa các thuộc tính trong phân đoạn và các truy xuất cơ sở dữ liệu.
Chu và Leong (1993) đã phát triển một phương pháp phân tích dựa trên các giao dịch thay vì các thuộc tính Trong khi đó, Song và Gorla (2000) áp dụng giải thuật phát sinh để giải quyết vấn đề phân đoạn dọc.
Theo Ozsu & Valduriez (1996), vấn đề phân đoạn dọc được giải quyết thông qua thuật toán năng lượng liên kết, dựa vào các giá trị tương quan thuộc tính Phương pháp này gom các thuộc tính có mối tương quan lớn với nhau để phân chia quan hệ Tuy nhiên, việc đo lường mối tương quan giữa các thuộc tính để xác định mức độ liên kết chặt chẽ của chúng là một thách thức phức tạp Điều này bao gồm việc tính toán số lần truy xuất các thuộc tính trong mỗi lần ứng dụng tại các trạm và đo tần suất ứng dụng ở các địa điểm khác nhau.
Trên thực tế, người thiết kế hoặc người sử dụng không dễ dàng xác định được các giá trị này
Luận văn này trình bày một hướng nghiên cứu mới, áp dụng phương pháp phát hiện luật kết hợp để biểu diễn mối tương quan giữa các thuộc tính Mục tiêu là giải quyết vấn đề phân đoạn dọc trong cơ sở dữ liệu tập trung, đồng thời mở rộng ứng dụng trong thiết kế cơ sở dữ liệu phân tán và cơ sở dữ liệu hướng
Luật kết hợp, một kỹ thuật của Datamining (Agarwal & Srikant, 1994), được định nghĩa bởi Agarwal, Mannila, Srikant, Toivonen, & Verkamo, 1996 và được trình bày chi tiết trong luận văn (mục 3.1).
Phương pháp phân đoạn dọc được đề xuất trong luận văn bao gồm ba bước chính Đầu tiên, các giao dịch thực hiện ứng dụng trên cơ sở dữ liệu sẽ được đưa vào Tiếp theo, chi phí thực hiện các giao dịch sẽ được tính toán Cuối cùng, thuật toán phân đoạn dựa trên thuật toán Apriori sẽ được áp dụng để thực hiện phân đoạn dọc các tập thuộc tính trong quan hệ đã đưa vào.
Các giao dịch trong cơ sở dữ liệu bao gồm các thao tác truy vấn (SELECT), xóa dữ liệu (DELETE), hiệu chỉnh dữ liệu (UPDATE) và thêm mới dữ liệu (INSERT).
Theo Yu, Chen, Heiss, & Lee (1992) trong cơ sở dữ liệu quan hệ thường có 75.9% SELECT, 4.7% DELETE, 7.7% UPDATE và 11.7% INSERT khi thử nghiệm
Tỉ lệ tương quan của các giao dịch là 1-5, 6-10 và 11-15 thuộc tính 65%, 24% và 11% [21]
Số lượng dữ liệu truyền tải và truy xuất thường được đánh giá theo phương pháp lược đồ phân đoạn, như đã được nghiên cứu trước đây (Cheng et al, 2002; Cornell & Yu, 1990; Fung et al, 2002; Gorla, 2001) Nghiên cứu này không xem xét chi phí sắp xếp truy xuất và lưu trữ dữ liệu Nếu có n mẩu tin được phân chia vào m block và k record thỏa mãn truy vấn giống nhau trên m block, số block được truy cập cho truy vấn được tính bằng m(1 - (1 - 1/m)k) (Yao, 1977) Trong phân đoạn CSDL, công thức tính cho mỗi segment truy xuất bởi query q được áp dụng, do đó chi phí cho xử lý truy vấn q phụ thuộc vào độ tin cậy fregq của truy vấn đó.
Segmentqj = Số phân đoạn j yêu cầu bởi q
Mi = Số được truy cập trong phân đoạn i.
Kq = Số bộ giá trị thỏa truy vấn q
T = Tổng số các bộ giá trị
Li = Kích thước của phân đoạn tính bằng byte
Tương tự chi phí cho xử lý giao dịch q insert/delete được đánh giá như sau:
4.2.2 Giải thuật phân đoạn a Phân tích giải thuật
Cho A và B là thuộc tính của một quan hệ.
Nếu độ tin cậy của luật A->B vượt quá mức tối thiểu min-conf, thì luật A->B đủ mạnh để cho phép nhóm A và B vào cùng một phân đoạn.
Giá trị độ tin cậy của (A,B) = freq (A,B)/Max (freq(A), freq(B))
Giá trị độ tin cậy sẽ cao hơn khi có ít giao dịch yêu cầu chỉ thuộc tính A hoặc B, hoặc khi có nhiều giao dịch yêu cầu cả hai thuộc tính A và B Do đó, để tăng cường độ tin cậy, cần thiết lập mức hỗ trợ tối thiểu (min supp) cho cả thuộc tính A và B trong cùng một phân đoạn.
Giải thuật đưa các bước sau:ra
Phát hiện tập mục phổ biến, chọn lọc tập mục, phát hiện các phân đoạn và chọn lựa lược đồ phân đoạn tối ưu
Phát hiện tập mục phổ biến:
Tập mục phổ biến l à tập hợp các thuộc tính có độ hỗ trợ tối thiểu min_sup Trong các giao dịch tìm kiếm, chỉ các thuộc tính trong mệnh đề SELECT được xem xét Đối với giao dịch INSERT/DELETE, tất cả các thuộc tính trong quan hệ đều được tính đến.
Tập mục phổ biến được xác định thông qua giải thuật Apriori và tần suất giao dịch trên cơ sở dữ liệu Độ hỗ trợ của tập ứng cử Ck được tính bằng tổng số truy vấn thường xuyên Tập Lk được hình thành từ các mục có độ hỗ trợ lớn hơn giá trị tối thiểu min_sup.
Chọn lọc tập mục là quá trình quan trọng trong việc phát sinh các luật kết hợp từ các tập mục phổ biến trong Lk, với độ tin cậy được tính toán chính xác.
Tập mục phổ biến nào có độ tin cậy nhỏ hơn độ tin cậy tối thiểu min_conf sẽ bị loại bỏ
Thiết kế phân đoạn ngang dựa trên kỹ thuật phân cụm dữ liệu
Trong thiết kế cơ sở dữ liệu phân tán, việc phân đoạn dữ liệu và định vị trên các trạm hệ thống là rất quan trọng, trái ngược với thiết kế cơ sở dữ liệu tập trung chỉ dựa vào mô hình dữ liệu logic và vật lý Phân đoạn ngang là quá trình chia một quan hệ thành các quan hệ con, mỗi quan hệ con chứa một tập con các bộ của quan hệ ban đầu Quá trình này bao gồm hai phần: phân đoạn ngang chính và phân đoạn ngang dẫn xuất Nhiều phương pháp đã được phát triển để thực hiện phân đoạn ngang, trong đó có các kỹ thuật gộp nhóm khai thác dữ liệu.
Nhiều tác giả hiện nay đã đề xuất các phương pháp phân đoạn và định vị cho cơ sở dữ liệu quan hệ, đồng thời cung cấp mô hình hướng đối tượng Giải thuật
QN={Q1,… ,Qn} /* tập các truy vấn đối với lớp C.
1 Tính các yêu cầu tại mỗi trạm đối với mỗi thể hiện để tạo cấu trúc ma trận yêu cầu các thể hiện (row) IRM
2 Tính chi phí tại mỗi trạm đối với mỗi thể hiện đưa vào ma trận chi phí. Độ giới hạn chi phí : độ đo chi phí của định vị một thể hiện đơn đến một trạm Chi phí định vị của thể hiện Ii đến trạm h đo bởi chi phí truy xuất phương thức mi từ tất cả các query tại trạm h’, khác trạm h
3 Phân cụm mỗi dòng đến các trạm có chi phí là thấp nhất
Lược đồ phân đoạn ngang và lược đồ định vị phân đoạn cho phép xác định vị trí của các phân đoạn trên các trạm Phương pháp này bắt đầu bằng cách tìm trạm có chi phí thấp nhất để định vị các thể hiện, cho phép thực hiện cả phân đoạn và định vị trong một bước Mặc dù phương pháp này cung cấp cách tiếp cận cho việc phân đoạn và định vị trên các trạm, việc xác định chi phí cho từng thể hiện trong các truy xuất của ứng dụng tại các trạm vẫn là một thách thức và khó thực hiện trong thực tế.
Bài viết này tập trung vào việc áp dụng các kỹ thuật khai thác dữ liệu để khai thác giá trị tiềm ẩn trong cơ sở dữ liệu, đặc biệt là sử dụng phương pháp phân cụm k-means Kỹ thuật này giúp phân chia các bộ giá trị (mẫu tin) trong quan hệ thành các đoạn phù hợp với các ứng dụng mà người dùng đang sử dụng.
4.3.2 Phương pháp phân đoạn ngang dựa trên kỹ thuật phân cụm
Có nhiều phương pháp phân cụm dữ liệu, trong đó một số phương pháp bắt đầu bằng cách xem tất cả các mẫu tin như một nhóm lớn, sau đó chia thành các nhóm nhỏ hơn và đánh giá kết quả ở mỗi bước để đạt được kết quả tốt nhất Ngược lại, một số phương pháp khác lại xem mỗi mẫu tin là một nhóm riêng biệt, rồi dần dần kết hợp các nhóm lại cho đến khi chỉ còn một nhóm lớn chứa tất cả các mẫu tin, đồng thời cũng thực hiện đánh giá để tối ưu hóa kết quả.
Mô hình vector toán học
Cho Q={q 1 ,…., q t } là tập các truy vấn muốn thực thi trên các phân đoạn Pred = {p 1 ,…,p q } là tập các vị từ cơ bản định nghĩa trên Q
Pred(R) ={p Pred p áp đặt điều kiện đến 1 thuộc tính của R}
Cho vị từ p R 1 A 1 A n value, p Pred(R)
Gọi t = {t1, t2, …, tm} là tập các bộ giá trị (mẫu tin) của R, và Pred(R) {p 1 ,…,p n }
Ta kết hợp một vector điều kiện ai= (ai1, … , ais) và tạo ma trận điều kiện cho quan hệ R, CM(R) = {a ij , 1 i m, 1 j n} trong đó a ij =
aij alj m l alj alj alj alj
Mỗi dòng i trong CM(R) là vector điều kiện của ti, ti T
Nếu p j (t i ) = FalseNếu p j (t i ) = TrueNếu p j (t i ) = False
Từ CM(R), chúng ta có được vector đặc trưng cho tất cả các bộ giá trị của quan hệ R Mỗi dòng ti được biểu diễn bởi vector w i = (w i1, wi2, , win), trong đó mỗi thành phần wij là tỷ lệ giữa số dòng trong R liên quan đến vị từ pj.
Pred(R) Ma trận này được gọi là VM(R).
Các đối tượng sẽ được phân nhóm trong các phân đoạn dựa trên độ tương tự cao giữa các đối tượng trong cùng một nhóm, trong khi độ tương tự với các nhóm khác sẽ thấp Độ tương tự giữa các đối tượng được xác định thông qua các hàm khoảng cách, áp dụng cho các vector đặc trưng mô tả các đối tượng.
Chúng ta sử dụng khoảng cách Euclide để đo độ tương tự giữa các đối tượng: d E (we i ,we j ) =
2 ớ; we i , we j là các vector đặc trưng của ti, t j
Trong bài viết này, chúng ta định nghĩa R và wei = (v1, v2, , vn), trong đó v đại diện cho giá trị của các thuộc tính của R tại dòng i Để so sánh hai dòng ti và tj, chúng ta thiết lập một phương pháp để đo lường độ tương tự giữa chúng.
Giải thuật phân đoạn k-means
Giải thuật k-means sử dụng tham số k để phân chia tập m đối tượng thành k cụm, đảm bảo sự tương tự cao trong mỗi cụm và sự tương tự thấp giữa các cụm Độ tương tự của các cụm được đo lường dựa trên các giá trị có ý nghĩa của các đối tượng trong tập dữ liệu.
Thuật toán k-means bắt đầu bằng cách chọn ngẫu nhiên k đối tượng làm điểm khởi tạo cho tâm cụm Sau đó, mỗi đối tượng còn lại sẽ được phân loại vào cụm mà nó có sự tương đồng cao nhất, tức là khoảng cách giữa đối tượng đó và tâm cụm gần nhất Cuối cùng, tâm cụm mới sẽ được tính toán lại và các đối tượng sẽ được phân tán dựa trên vị trí của tâm.
Việc xử lý này sẽ được lặp lại cho đến khi không còn sự thay đổi nào về lớp của các điểm dữ liệu, tức là điểm tâm sẽ ổn định trong một sai số cho phép.
Các bước thực hiện như sau:
Bước 2: Đánh giá từng dòng dựa trên mức độ tương đồng với các tâm đã chọn Sau đó, phân chia các dòng vào các cụm dựa trên mức độ tương đồng cao nhất với tâm.