1. Trang chủ
  2. » Luận Văn - Báo Cáo

Vấn đề cấp phát và cập nhật các mảnh trong hệ phân tán

26 507 0
Tài liệu đã được kiểm tra trùng lặp

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Vấn đề cấp phát và cập nhật các mảnh trong hệ phân tán
Tác giả Phạm Đình Luật
Người hướng dẫn PGS. TS Lê Huy Thập
Trường học Học viện Công nghệ Bưu chính Viễn thông
Chuyên ngành Truyền dữ liệu và Mạng máy tính
Thể loại Luận văn thạc sĩ
Năm xuất bản 2012
Thành phố Hà Nội
Định dạng
Số trang 26
Dung lượng 329,56 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Các máy MIMD xử lý phân tán thông qua một số các bộ xử lý độc lập, chia sẻ tài nguyên chứa trong hệ thống bộ nhớ chính, mỗi bộ xử lý thực hiện độc lập, đồng thời và thực hiện các chương

Trang 1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

Trang 2

LỜI MỞ ĐẦU

Ngày nay, công nghệ thông tin (CNTT) đã trở thành một nhân tố không thể thiếu trong mọi lĩnh vực của đời sống xã hội Sự bùng nổ nhu cầu xây dựng các hệ thống thông tin, mà trước hết là các hệ thống thông tin quản lý đã thu hút sự quan tâm của nhiều nhà khoa học Các hệ thống cơ sở dữ liệu (CSDL) đã lần lượt xuất hiện Thập niên 60, xuất hiện Mô hình dữ liệu mạng (Network Data Model) và Mô hình dữ liệu phân cấp Mô hình dữ liệu quan hệ (Relation Data Model) được E.Codd đề xuất năm 1970 đánh dấu mốc phát triển quan trọng về cơ sở lý thuyết của các hệ thống CSDL Thập niên 80, là thập niên của các hệ thống CSDL hướng đối tượng cùng với sự phát triển rực rỡ của các bộ vi xử lý đáp ứng được yêu cầu tốc

độ tính toán ngày càng cao Những máy tính này có khả năng thực hiện tới hàng tỷ phép tính trong một giây đó là nhờ công nghệ tích hợp và chế tạo bộ vi xử lý Song về mặt vật lý mà nói, chúng ta không thể tích hợp mãi các vi mạch vào một con chip trên cùng một diện tích được mà chỉ đến một lúc nào đó khả năng tích hợp không còn nữa,

Trang 3

chính vì vậy các nhà sản xuất đã sản xuất ra những con chip đa xử lý Vì vậy một chiến lược được đặt ra theo hướng thứ hai là chia bài toán ra thành những công việc nhỏ để có thể chạy song song trên một hay nhiều bộ xử lý Nghĩa là tăng tốc độ tính toán bằng cách sử dụng đồng thời nhiều máy tính để bộ xử lý tính toán song song nhằm nâng cao hiệu năng tính toán, tiết kiệm thời gian, giảm chi phí, giải quyết được các vấn đề lớn hơn, phức tạp hơn và tăng khả năng xử lý đồng thời cao hơn

Lĩnh vực CNTT ở Việt nam tuy còn non trẻ nhưng nó phát triển nhanh chóng và góp phần không nhỏ trong công cuộc xây dựng, phát triển đất nước Nhiệm vụ của những cán bộ làm công tác trong lĩnh vực CNTT là phải đi trước, đón đầu những tiến bộ của khoa học kỹ thuật và xu hướng phát triển của thời đại nhất là trong lĩnh vực CNTT Chính

vì vậy, tôi đã lựa chọn đề tài:

“Cấp phát và cập nhật các mảnh trong hệ thống phân tán” để nghiên cứu thực hiện

Trang 4

CHƯƠNG I HỆ ĐA XỬ LÝ

1.1 Tổng quan hệ đa xử lý

1.1.1 Sơ đồ cấu trúc tổng quát của vi xử lý

Tùy thuộc vào các thế hệ khác nhau, các bộ vi xử

lý có thể có cấu trúc bên trong khác đi nhưng vẫn có một

số nguyên tắc hoạt động cơ bản nhất

Vi xử lý là một mạch số có thể thực hiện nhiều chức năng số khác nhau Nó sẽ thực hiện một bài toán, một công việc khi được cung cấp một chương trình Một chương trình là một chuỗi các tín hiệu nhị phân nối tiếp nhau, mỗi chuỗi nhị phân sẽ yêu cầu (cho phép) một chức năng của vi xử lý hoạt động Quá trình làm việc của vi xử

lý bao gồm hai chu kỳ chính lặp lại một cách liên tục đó là:

- Chu kỳ lấy các mã lệnh

- Chu kỳ thực hiện các chức năng mà lệnh yêu cầu

Tương ứng với hai chu kỳ trên có thể chia vi xử lý ra hai phần chính: Đơn vị thực hiện lệnh EU (Execution Unit),

và đơn vị giao tiếp BUS (Bus Interface)

1.1.2 Đa xử lý CMP (Chip multi processor)

 SIMD (Single Instrucstion stream, Multiple Data stream - Đơn chỉ thị đa dữ liệu)

Trang 5

Các máy tính loại SIMD gồm các bộ xử lý giống nhau, các bộ vi xử lý này cùng thực hiện một lệnh giống nhau để xử lý nhiều dòng dữ liệu khác nhau Mỗi bộ xử lý

có bộ nhớ dữ liệu riêng, nhưng chỉ có chung một bộ nhớ lệnh và một bộ xử lý điều khiển, bộ nhớ này đọc và thi hành các lệnh Tính song song trong các máy SIMD là tính song song của các dữ liệu

 MIMD (Multiple Instruction Stream, Multiple Data Stream)

Một hệ thống MIMD là một hệ thống nhiều bộ xử

lý và nhiều bộ nhớ, trong đó mỗi bộ xử lý có một đơn vị

xử lý riêng và thực hiện chương trình riêng Các máy MIMD xử lý phân tán thông qua một số các bộ xử lý độc lập, chia sẻ tài nguyên chứa trong hệ thống bộ nhớ chính, mỗi bộ xử lý thực hiện độc lập, đồng thời và thực hiện các chương trình riêng Các hệ thống MIMD thực hiện các phép toán theo dạng song song không đồng bộ, các nút hoạt động hợp tác chặt chẽ nhưng thực hiện độc lập Ví dụ trong hệ thống phục vụ đặt chỗ máy bay, việc đặt chỗ xảy

ra thường xuyên, liên tục và đồng thời, mỗi cuộc đặt chỗ cần một chương trình để thực hiện, các chương trình này

Trang 6

không bắt đầu song song từng lệnh một, do đó chúng ta có nhiều dòng chảy lệnh và nhiều dòng chảy dữ liệu

1.2 Ứng dụng đa xử lý dữ liệu

 Database server: Database server là dịch vụ kết nối

trực tiếp đến máy chủ chứa cơ sở dữ liệu Server là một máy chủ mà trên đó có cài đặt phần HQTCSDL như: SQL Server, MySQL, Oracle… dịch vụ Database server hoàn toàn đạt hiệu quả nếu hệ thống được thiết kê có bộ nhớ được chia sẻ kiểu kiến trúc MIMD UMA

 Web server: Web server là dịch vụ mà một máy

tính (máy chủ) trên đó cài đặt phần mềm phục vụ Web hay còn gọi là Web Server Dịch vụ Web Server sử dụng hệ thống bộ nhớ không chia sẻ MIMD NUMA

 Multimedia: Là kỹ thuật tích hợp trên một nền

thống nhất các dạng dữ liệu khác nhau với sự hỗ trợ của máy tính

 CAD/CAM:

CAD là các phần mềm thiết kế và các phần mềm vẽ

có sự trợ giúp của máy tính

CAM là một hoạt động cụ thể trong công nghệ chế tạo cơ khí Kết quả của CAM là cụ thể, đó là chi tiết cơ khí

Trang 7

1.3 Tổng quan về quản trị cơ sở dữ liệu phân tán

1.3.1 Khái niệm cơ sở dữ liệu phân tán

Hệ CSDL phân tán - DDBS System (DDBS): Là một tập hợp dữ liệu có liên đới logic và được phân bố trên các nút của một mạng máy tính

Hệ quản trị CSDL phân tán (DDBMS) là một hệ thống phần mềm cho phép quản lý các DDBS và làm cho việc phân tán trở nên vô hình đối với người sử dụng

Những gì có thể phân tán? đó là phân tán thiết bị

xử lý, phân tán chức năng, phân tán dữ liệu, và phân tán quyền điều khiển

Tại sao phải thực hiện phân tán? việc xử lý phân

tán nhằm thích ứng tốt hơn với việc phân bố ngày càng rộng rãi của các công ty, tổ chức; ứng dụng được sự phát triển của công nghệ máy tính hiện tại bao gồm: phần cứng, phần mềm)

1.3.2 Các đặc điểm chính của hệ cơ sở dữ liệu phân tán

1.3.2.1 Chia sẻ tài nguyên

1.3.2.2 Tính mở

Trang 8

Là dễ ràng mở rộng nâng cấp phần cứng và các thiết bị phần mềm với điều kiện là các thành phần này phải theo một tiêu chuẩn chung

1.3.2.3 Khả năng song song

+ Nhiều người sử dụng đồng thời ra các lệnh hay các tương tác với các chương trình ứng dụng

+ Nhiều tiến trình server chạy đồng thời, mỗi tiến trình đáp ứng yêu cầu từ các tiến trình Client khác

Trang 9

1.3.2.7 Đảm bảo tính tin cậy và nhất quán

Sự bí mật của dữ liệu phải được bảo vệ, các chức năng khôi phục hư hỏng phải được đảm bảo, ngoài ra yêu cầu nhất quán của dữ liệu cũng rất quan trọng trong thể hiện (Khi các thuộc tính dữ liệu là khác nhau thì các thao tác phải nhất quán)

1.3.3 Mục đích của việc sử dụng dữ liệu phân tán

- Đáp ứng nhu cầu nhanh nhất, hiệu quả nhất trong việc cập nhật và chia sẻ thông tin, cũng như các yêu cầu làm việc trong môi trường mạng Internet, tintranet phát triển rực rỡ như hiện tại, rất phù hợp cho các Công ty và các Tập đoàn mở rộng và phát triển trong xu thế toàn cầu hóa và hội nhập hóa

- Độ tin cậy và khả năng sử dụng nâng cao

- Khả năng phục hồi nhanh chóng

1.3.4 Kiến trúc cơ bản của hệ phân tán

1.3.5 Các yếu tố phức tạp của hệ quản trị cơ sở dữ liệu phân tán

Có ba yếu tố phức tạp chính như sau:

+ Dữ liệu có thể được nhân bản

+ Khi có sự cố làm gián đoạn, hư hỏng thì hệ thống phải đảm bảo rằng các tác dụng đó sẽ có ở trên dữ liệu và

Trang 10

tại (những) vị trí bị mất liên lạc sau khi hệ thống đã khôi phục lại hoạt động

+ Đồng bộ hoá các giao dịch trên nhiều vị trí sẽ khó khăn hơn so với hệ thống tập trung

1.3.6 Các vấn đề cần giải quyết khi xây dựng hệ cơ sở dữ liệu phân tán

+ Xử lý vấn tin phân tán;+ Quản lý thư mục phân tán;+ Điều khiển đồng thời phân tán;+ Quản lý khóa gài phân tán;+ Độ khả tín của hệ quản trị cơ sở dữ liệu phân tán;+ Hỗ trợ điều hành;+ Cơ sở dữ liệu đa chủng loại

1.4 Kết luận

Do sự phát triển mạnh mẽ của các hệ đa xử lý ngày càng nhanh, đòi hỏi người lập trình cũng có những hướng phát triển phần mềm một cách phù hợp đáp ứng việc tính toán giải quyết công việc nhanh, nâng cao được hiệu năng

xử lý của các hệ đa xử lý, tiết kiệm thời gian công sức, giảm nhiều chi phí, giải quyết được các vấn đề lớn hơn, phức tạp hơn và tăng khả năng xử lý đồng thời cao hơn…

Đòi hỏi phải xây dựng được các cơ sở dữ liệu trong

đó có cơ sở dữ liệu phân tán đáp ứng được việc hội nhập kinh tế toàn cầu, đáp ứng được việc phát triển mở rộng của các tổ chức kinh tế toàn cầu khi có các văn phòng, chi

Trang 11

nhánh khác nhau về địa lý nên việc lưu trữ thông tin trên

cơ sở dữ liệu phân tán là hiệu quả hơn cả Cơ sở dữ liệu phân tán là giải pháp tự nhiên khi tổ chức đã có sẵn cơ sở

dữ liệu và cần mở rộng cho các phổ dụng phổ quát hơn và giảm các chi phí truyền thông so với dữ liệu tập trung, đồng thời đáp ứng được việc truy nhập cơ sở dữ liệu của người sử dụng (được phép) đối với các vị trí khác Do vậy việc quản trị cơ sở dữ liệu có thể được thực hiện tự quản tại mỗi vị trí khác nhau

CHƯƠNG II CƠ SỞ DỮ LIỆU – DỮ LIỆU PHÂN TÁN

2.1 CSDL phân tán và Hệ quản trị cơ sở dữ liệu phân tán

2.1.1 Hệ quản trị cở sở dữ liệu

Hệ quản trị cơ sở dữ liệu bao gồm một tập các phần mềm (chương trình) sau:

+ Các chương trình quản lý dữ liệu phân tán

+ Chứa các chương trình để quản trị việc truyền thông dữ liệu

+ Các chương trình để quản trị cơ sở dữ liệu địa phương + Các chương trình quản trị từ điển dữ liệu

Trang 12

2.1.2 Kiến trúc hệ cơ sở dữ liệu phân tán

Hệ Peer-To-Peer

Trong Peer-To-Peer, việc tổ chức dữ liệu vật lý trên mỗi Workstation có thể khác nhau, như vậy phải có một định nghĩa riêng cho mỗi Workstation mà ta gọi là lược đồ nội tại cục bộ LIS (Local Internal Schema) Bức trang toàn cục về dữ liệu của cả công ty hay cả xí nghiệp,… được mô tả bởi lược đồ khái niệm toàn cục GCS (Global Conceptual Schema), nó được dùng để mô tả cấu trúc logic của dữ liệu được lưu tại các Workstation

2.1.3 Thiết kế cơ sở dữ liệu phân tán

Thiết kế một hệ thống máy tính phân tán cần phải chọn những vị trí đặt dữ liệu và chương trình trên một mạng máy tính, rất có thể phải kể luôn cả việc thiết kế hệ

Trang 13

thống mạng Đối với DDBMS, việc phân tán các ứng dụng đòi hỏi hai vấn đề:

- Phân tán hệ quản trị CSDL và phân tán các chương trình ứng dụng chạy trên hệ quản trị đó

- Phân tán dữ liệu

Việc tổ chức các hệ phân tán có thể được nghiên cứu dựa theo ba trục không gian vuông góc [Levin and Morgan, 1975]

 Mức độ chia sẻ (level of sharing): Có ba khả năng

là : 1- không chia sẻ, 2-chia sẻ dữ liệu, và 3- chia sẻ

dữ liệu lẫn chương trình

 Kiểu mẫu truy xuất (behavior of access pattern): Có hai chọn lựa là kiểu truy xuất tĩnh và kiểu truy xuất động

 Mức độ hiểu biết về kiểu mẫu truy xuất: Đòi hỏi người thiết kế hiểu càng rõ về thông tin truy xuất càng tốt, có hai trường hợp là: Biết một phần thông tin và biết thông tin một cách đầy đủ

Có hai chiến lược chính được xác định trong việc thiết kế các CSDL phân tán là tiếp cận từ trên xuống (top-down approach) và tiếp cận từ dưới lên (bottom-up approach)

Trang 14

a) Quán trình tiếp cận từ trên xuống

b) Quá trình thiết kế từ dưới lên

c) Các xu hướng hiện đại của hệ cơ sở dữ liệu phân tán

2.2 Cách phân mảnh và tái cấu trúc cơ sở dữ liệu phân tán

Để thuận lợi cho việc nghiên cứu, chúng ta xét cơ

sở dữ liệu quan hệ của công ty điện toán như sau:

Quan hệ EMP(ENO,ENAME,TITLE):

Trong đó EMP là Employee, ENO là Employee Number (

Mã số nhân viên), ENAME là Employee Name (tên nhân viên), TITLE(Chức vụ) và dữ liệu định nghĩa như sau:

Elect.Eng Syst.Anal Mech.Eng Programmer Syst.Anal Elect.Eng Mech.Eng Syst.Anal

Bảng 2.2a: Quan hệ EMP

Trang 15

- Quan hệ PROJ(PNO,PNAME, BUDGET):

Trong PNO là Project Number (mã số dự án); Pname- Project Name( Tên dự án) và BUDGET (Ngân sách dự án), LOC(Location = vị trí) Và dữ liệu giả định sau:

- Quan hệ ASG (ENO,PNO,DUR,RESP)

Trong đó ASG Assignment (Phân công nhiệm vụ): nhân viên làm tại dự án, thời gian làm, với nhiệm vụ, DUR

Trang 16

(Duration=thời gian) RESP (Responsibility=nhiệm vụ)

Và dữ liệu giả định như sau:

Manager Analyst Analyst Consultant Engineer Progammer Manager Manager Enginner Manager

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

Trước tiên, khi tạo khung nhìn của các ứng dụng thường chỉ là tập con của mối quan hệ, đơn vị truy xuất không phải là toàn bộ quan hệ Vì vậy đưa tập con của quan hệ ra khung nhìn là tốt nhất cho lên phân mảnh các quan hệ và phân tán đến nơi sử dụng khung nhìn sẽ là điều thích hợp nhất

Trang 17

Thứ hai là nếu các ứng dụng có các khung nhìn được định nghĩa trên một quan hệ cho trước, quan hệ đó lại nằm tại các vị trí khác thì có hai cách lựa chọn: Hoặc đơn vị phân tán là toàn bộ quan hệ không được nhân bản

và được lưu ở một vị trí; hoặc quan hệ được nhân bản cho tất cả các vị trí hoặc một số vị trí có chạy ứng dụng Chọn lựa đầu gây ra một số lượng lớn các truy xuất không cần thiết đến dữ liệu ở xa Còn ngược lại chọn lựa sau thực hiện nhân bản không cần thiết, gây ra nhiều vấn đề truy nhập và có thể làm lãng phí nhiều không gian lưu trữ

Cuối cùng, việc phân rã một quan hệ thành nhiều mảnh, mỗi mảnh được xử lý như một đơn vị, sẽ cho phép thực hiện nhiều lần giao dịch đồng thời và cho phép thực hiện song song một câu vấn tin bằng cách chia nó thành một tập các câu vấn con hoạt tác trên các mảnh V́ì thế việc phân mảnh sẽ làm tăng mức độ hoạt động đồng thời

và như thế làm tăng lưu lượng hoạt động của hệ thống Kiểu hoạt động đồng thời này chúng ta gọi là đồng thời nội vấn tin (intraquery nocurrency)

Trang 18

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

Thể hiện của các quan hệ chính là các bảng, vì thế vấn đề là tìm những cách khác nhau để chia một bảng thành nhiều bảng con khác nhau

2.2.3 Phân mảnh cơ sở dữ liệu phân tán thực hiện đến mức độ nào?

Phân mảnh dữ liệu thực hiện đến mức nào là một quyết định rất quan trọng, có ảnh hưởng tới hiệu năng vấn tin Mức độ phân mảnh có thể là thái cực không phân mảnh thành từng bộ phận (trường hợp phân mảnh ngang) hoặc thành từng thuộc tính ( trường hợp phân mảnh dọc)

2.2.4 Phương pháp phân mảnh cơ sở dữ liệu phân tán

2.2.4.1 Phân mảnh ngang và phân mảnh ngang dẫn xuất

a) Phân mảnh ngang nguyên thủy

b) Phân mảnh dọc

2.3 Bài toán qui hoạch toán học

2.3.1 Bài toán tối ưu tổng quát

Bài toán tối ưu tổng quát có dạng:

Ngày đăng: 17/02/2014, 09:46

HÌNH ẢNH LIÊN QUAN

Bảng 2.2b: Quan hệ PROJ - Vấn đề cấp phát và cập nhật các mảnh trong hệ phân tán
Bảng 2.2b Quan hệ PROJ (Trang 15)
Bảng 2.2c: Quan hệ PAY - Vấn đề cấp phát và cập nhật các mảnh trong hệ phân tán
Bảng 2.2c Quan hệ PAY (Trang 15)
Bảng 2.2d: Quan hệ ASG. - Vấn đề cấp phát và cập nhật các mảnh trong hệ phân tán
Bảng 2.2d Quan hệ ASG (Trang 16)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w