Chào các bạn! Vì nhiều lý do từ nay Truyen2U chính thức đổi tên là Truyen247.Pro. Mong các bạn tiếp tục ủng hộ truy cập tên miền mới này nhé! Mãi yêu... ♥

csdl pt

tai sao phai phan manh

lam the nao de thuc hien pm

Tập trung dữ liệu

tất cả các dữ liệu được tập trung một chỗ.

có 3 nhược điểm

dữ liệu k sẵn sàng cho người sử dụng truy nhập từ xa

chi phí truyền thông lớn, thường làm cực đại việc truy nhập dữ liệu tới nơi tập trung

toàn bộ hệ thống ngừng khi cơ sở dữ liệu bi sự cố

Chia nhỏ dữ liệu

csdl đc chia thành các phần nhỏ liên kết nhau(k trùng lặp)

mỗi phần dữ liệu đc đưa đến các trạm 1 cách thích hợp để sử dụng

{

Tổ hợp phép chọn xác định với phép tích Descartes thành phép kết nối:

phép kết nối, đặc biệt là phép kết nối bằng có chi phí thực hiện thấp hơn

so với phép tích Descartes trên cùng hai quan hệ. Nếu kết quả của tích

Descartes RxS là đối số của phép chọn, và phép chọn lại có liên quan đến

phép so sánh giữa các thuộc tính của R và S thì ta đưa về phép kết nối để

giảm chi phí.

vd dai so quan he

SELECT TENNV

FROM NHANVIEN, PHANCONG

WHERE NHANVIEN.MSNV=PHANCONG.MSNV

AND PHANCONG.MSDA=”P1”

AND TGIAN=12 OR TGIAN=24

Viết dưới dạng chuẩn hội:

NHANVIEN.MSNV=PHANCONG.MSNV ^ PHANCONG.MSDA=”P1” ^

(TGIAN =12 V TGIAN=24)

}

PHÂN MẢNH DỮ LIỆU

Nhắc lại các phép toán đại số quan hệ và ngôn ngữ SQL

 Tại sao cần phải phân mảnh?

 Làm thế nào để thực hiện phân mảnh?

Trong suốt phân mảnh. Việc truy cập tới dữ liệu thường được xác định trên

các quan hệ con  được gọi

là các mảnh (fragment). Việc phân mảnh (ngang, dọc, hỗn hợp) làm tăng

hiệu năng, tính sẵn sàng, độ tin cậy của CSDL PT. Trong suốt phân mảnh

che dấu sự phân đoạn đối với người dùng.

Định nghĩa về csdl phân tán

1 cơ sở dữ liệu được nói là phân tán nếu các bảng của nó được lưu trữ ở các nơi khác nhau, một hoặc nhiều bảng của nó được sao chép và các bản sao chép của chúng được lưu trữ ở các nơi khác nhau; một hoặc nhiều các bảng của nó được phân mảnh và các phân mảnh được lưu trữ ở các nơi khác nhau,… Bình thường, một cơ sở dữ liệu được phân tán nếu không phải tất cả các dữ liệu của nó được định vị ở một nơi.

 Tại sao nên phân mảnh dữ liệu?

Cho phép thực hiện nhiều giao dịch đồng thời.

Cho phép thực hiện song song một câu truy vấn tin bằng cách chia nó thành một tập các truy vấn con hoạt tác trên các mảnh.

Sự phân mảnh dữ liệu

Cách đơn giản nhất để phân mảnh dữ liệu là lưu trữ các bảng độc lập tại những nơi khác nhau. Nếu các giao tác khác nhau truy xuất đến các phần khác nhau của bảng và cả ở những nơi khác nhau, việc thực thi này có thể được cải thiện bằng cách lưu các phần của bảng tại nơi nào giao tác tương ứng sẽ truy xuất. . Theo hướng tiếp cận này các phần của bảng trên được gọi là mảnh phân tán.

Việc phân tán các mảnh dữ liệu của bảng mang lại nhiều thuận lợi. Ví dụ, thời gian để xử lý một truy vấn trên toàn bộ bảng có thể giảm bớt khi dùng kỹ thuật phân tán, lúc này câu truy vấn sẽ được thực thi trên từng mảng dữ liệu đặt những nơi khác nhau.

(Một giao tác (transaction) là một chuỗi một hoặc nhiều câu lệnh SQL được kết hợp lại với nhau thành một khối công việc.)

2 loại pm ngang pb nhau bởi các vị từ

vd(

Dưới đây là một số vị từ đơn giản có thể định nghĩa được .

p1: chức vụ=" Kỹ sư điện"

p2: chức vụ =" Phân tích hệ thống "

p5 : Lương ≤ 3 0000

p6: Lương > 30000

:

Phân mảnh ngang chia một quan hệ r theo các bộ, vì vậy mỗi mảnh là một

tập con các bộ t của quan hệ r.

Phân mảnh nguyên thuỷ (primary horizontal fragmentation) của một quan

hệ được thực hiện dựa trên các vị từ được định nghĩa trên quan hệ đó.

Ngược lại phân mảnh ngang dẫn xuất (derived horizontal fragmentation ) là

phân mảnh một quan hệ dựa vào các vị từ được định trên một quan hệ khác.

Như vậy trong phân mảnh ngang tập các vị từ đóng vai trò quan trọng.

vd

Pr={Địa điểm "Montreal", Địa điểm="New York", Địa

điểm="Paris", Ngân sách ≤ 200000 } thì Pr không đầy đủ vì có một số bộ của

DA không được truy xuất bởi vị từ Ngân sách ≥ 200000.

Vì thế chúng ta sẽ dùng một tập hợp gồm các vị từ đầy đủ làm cơ sở của

phân mảnh ngang nguyên thủy.

MỘT SỐ YÊU CẦU PHÂN MẢNH NGANG:

TÍNH ĐẦY ĐỦ

TÍNH TÁI THIẾT LẠI

TÍNH TÁCH BIỆT

MỘT SỐ YÊU CẦU VỚI PHÂN MẢNH DỌC:

-TÍNH ĐẦY ĐỦ

-TÍNH TÁI THIỆT LẠI

-CHIA SẺ KHÓA CHÍNH

{

a.Tính đầy đủ: Nếu một quan hệ R được phân rã thành các mảnh R1, R2, ..., Rk thì mỗi mục dữ liệu có trong R phải có trong ít nhất một mảnh Ri nào đó.

b. Tính tái thiết được:

Nếu một quan hệ R được phân rã thành các mảnh R1, R2, ..., Rk thì phải tồn tại một toán tử  sao cho R = (Ri), i.

Toán tử  thay đổi tùy theo từng loại phân mảnh.

Trong thực tế khi các mảnh được phân mảnh ngang thì  là phép hợp, phân mảnh dọc thì  là phép nối và phân mảnh hỗn hợp thì  là phép nửa nối .

c. Tính tách biệt:

Nếu một quan hệ R được phân mảnh ngang thành các quan hệ R1, R2, ..., Rk và mục dữ liệu ti nằm trong mảnh Ri thì nó sẽ không nằm trong một mảnh Rk, ki.

Tiêu chuẩn này bảo đảm các mảnh ngang phải được tách rời nhau.

Nếu quan hệ được phân mảnh dọc thì thuộc tính chung phải được lặp lại trong mỗi mảnh. Do đó, trong trường hợp phân mảnh dọc tính tách biệt chỉ được định nghĩa trên các trường không phải là thuộc tính chung của quan hệ.

Tính nhất quán trong cơ sở dữ liệu

• Lưu trữ dữ liệu thống nhất

• Tránh được tình trạng trùng lặp thông tin

• Có cơ chế điều khiển truy xuất dữ liệu hợp lý

• Tránh được việc tranh chấp dữ liệu

• Bảo đảm dữ liệu luôn đúng tại mọi thời điểm

}

pmngang chinh

Create table MPLS_EMPS as

Select *

From EMP

Where Loc = ‘Minneapolis’;

Create table LA_EMPS as

Select *

From EMP

Where Loc = ‘LA’;

-> toan cuc

Select * from MPLS_EMPS

Union

Select * from LA_EMPS)

Union

Select * from NY_EMPS;

pmngang dan xuat

Create table 1_EMPS as

Select *

From EMP

Where Sal <40000;

Create table 2_EMPS as

Select *

From EMP

Where Sal >40000;

->toan cuc

Select * from 1_EMPS

inner join

Select * from 2_EMPS

pm doc

Create table EMP_SAL as

Select EmpID, Sal

From EMP;

Go

Create table EMP_NON_SAL as

Select EmpID, Name, Loc, DOB, Dept

From EMP;

->toan cuc

Select EMP_SAL.EmpID, Sal, Name, Loc, DOB, Dept

From EMP_SAL, EMP_NON_SAL

Where EMP_SAL.EmpID = EMP_NON_SAL.EmpID;

Sự phân mảnh lai dùng một sự kết họp giữa ngang và dọc sự phân mảnh để sinh ra các phân mảnh chúng ta cần.

VD

pm doc

use test01

Create view hs_1

as

Select hoten, diachi

From hocsinh;

Go

Create view hs_2

as

Select hoten,ngaysinh, lop

From hocsinh;

//toan cuc

select hs_1.hoten,hs_1.diachi,hs_2.ngaysinh,hs_2.lop

from hs_1,hs_2

where hs_1.hoten=hs_2.hoten

//-> du thua giua cac bang

// yeu cau

Mô hình hđ cua csdl pt

tại mỗi nơi có tính độc lập, tính nhất quán

thông thường sử dụng phép toán đại số quan hệ

đối với mỗi  nơi đều có pt quản trị riêng

dữ liệu có thê p/hoạch 2 cách chính pm ngang doc

p/m dl:

pm tiết kiệm đường truyền, tận dụng tài nguyên csdl pt

thích hợp với việc thực hiện các phép toán đại số

mỗi cách phân hoạch tương ứng với 1 dạng bài toán khác nhau

pm ngang: tác động trên từng vùng

 p.m dọc các dữ liệu có tác động tất cả

-pm hỗn hợp

-> y/cau' bai toán mà xác định dạng phân mảnh nào

   dựa trên sơ đồ vật lý của hệ dữ liệu phân tán

----------------- het -----------------------

Bạn đang đọc truyện trên: Truyen247.Pro

Tags: