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

Tiểu luận môn cơ sở dữ liệu nâng cao Tìm hiểu hệ cơ sở dữ liệu phân tán

32 370 0

Đ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

Định dạng
Số trang 32
Dung lượng 1,15 MB

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

Nội dung

Trong đó các thông tin về cơ sở dữ liệu được trao đổi thông qua mạng máy tính với nhau... Theo một lẽ tự nhiên dữ liệu tại các chi nhánh khác nhau sẽ lưu trữ tại các nơi

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

CHƯƠNG TRÌNH ĐÀO TẠO THẠC SĨ CNTT QUA MẠNG

Tìm hiểu hệ cơ sở dữ liệu phân tán.

Bộ môn: Cơ sở dữ liệu nâng cao Giáo viên hướng dẫn: PGS.TS Đỗ Phúc Sinh viên: Trần Hoài Phong MSSV: CH1101027

Trang 2

MỤC LỤC

LỜI MỞ ĐẦU: 3

I.HÊÊ CƠ SỞ DỮ LIÊÊU PHÂN TÁN: 4

II.CÁC MÔ HÌNH KIẾN TRÚC CỦA HÊÊ CƠ SỞ DỮ LIÊÊU PHÂN TÁN: 8

III.THIẾT KẾ CƠ SỞ DỮ LIỆU PHÂN TÁN: 12

IV.CÀI ĐẶT THỬ NGHIỆM: 30

V.KẾT LUẬN: 31

TÀI LIỆU THAM KHẢO : 32

Trang 3

Lời mở đầu:

Trong những năm gần đây số lượng ứng dụng yêu cầu truy cập nhiều cơ sở dữ liệu đặt tại nhiều địa điểm khác nhau ngày một gia tăng

Một chiến lược kinh doanh thông thường của các tập đoàn kinh tế lớn hàng đầu thế giới là phát triển một cửa hàng bán lẻ với mạng lưới kho dọc khắp đất nước cũng như ở khắp nơi trên thế giới nhờ đó có thể tăng tốc khả năng đáp ứng sản phẩm kịp thời với tốc độ nhanh nhất cho nhu cầu của khách hàng Hệ cơ sở dữliệu phân tán được ra đời nhằm mục đích giúp các ứng dụng truy cập được cơ sở dữ liệu từ xa một cách thông suốt và nhanh nhất

Khi nào cần phân tán dữ liệu? Tại sao chúng ta không tập hợp tất cả dữ liệucủa danh nghiệp vào một vị trí trung tâm chủ chốt? Vì khi phân tán chúng ta có thểcân bằng tránh sự quá tải do tập trung quá nhiều băng thông truy cập cơ sở dữ liệu,ngoài ra phân tán còn giúp cho các nhà cài đặt hệ thống có thể dễ dàng bảo trì cũng như tăng khả năng tính bảo mật thông tin cho từng vị trí khi dữ liệu đã được phân tán Người dùng sẽ truy vấn dữ liệu ở hệ thống gần nhất qua đó có thể tiết kiệm được chi phí đồng thời giúp gia tăng tốc đô xử lý

Trong bài tiểu luận này, em sẽ trình bày một cái nhìn tổng quan về hệ cơ sởdữ liệu phân tán cũng như viết một ứng dụng đơn giản để mô tả rõ hơn về tác dụngcủa nó

Trang 4

Tuy nhiên mặc dù đã ra sức tìm hiểu cũng như với sự hướng dẫn cơ bản từ thầy nhưng với vốn kiến thức còn nhiều hạn chế nên nội dung bài tiểu luận này không thể tránh được những sai sót Mong thầy thông cảm và cuối cùng em xin cám ơn thầy đã dành thời gian đọc bài tiểu luận này.

I Hệ cơ sở dữ liệu phân tán:

1 Giới thiệu:

Hệ cở sở dữ liệu phân tán được ra đời dựa trên sự kết hợp của hai cách tiếp cận hoàn toàn trái ngược nhau về quá trình truy suất dữ liệu là hệ cơ sở dữ liệu và mạng máy tính Hệ cơ sở dữ liệu dẫn chúng ta vào một khuôn mẫu rằng cứ mỗi ứng dụng thường sẽ quản lý dữ liệu của riêng mình Điều này giúp độc lập dữ liệu , các chương trình không thể thay đổi dữ liệu trực tiếp mà đều phải thông qua hệ cơ sở dữ liệu

Một trong những mục tiêu chính của hệ cơ sở dữ liệu là mong muốn lưu trữlại toàn bộ hoạt động của doanh nghiệp theo hướng tập trung qua đó giúp kiểm soát chặt chẽ thông tin để bảo mật Ngược lại mạng máy tính là một công nghệ được phát triển theo chiều hướng đi ngược lại sự tập trung hoá Ban đầu sẽ rất khó để có thể hình dung được tại sao khi kết hợp lại có thể tạo ra một hệ thống mạnh mẽ hơn và đặc biệt có nhiều hứa hẹn hơn so với khi cả hai đứng riêng lẽ Mấu chốtchủ yếu của vấn đề này là hiểu được mục tiêu quan trọng nhất của cơ sở dữ liệu là tính toàn vẹn dữ liệu chứ không phải tập trung Có thể đạt được khả năng toàn vẹndữ liệu mà không cần nhất thiết phải tập trung hoá Và đó là chính xác những gì mà hệ cơ sở dữ liệu phân tán ra đời để cố gắng đạt được điều đó

2 Hệ cơ sở dữ liệu phân tán là gì?

Trang 5

Hệ cơ sở dữ liệu phân tán là một tập hợp nhiều cơ sở dữ liệu có liên quan nhau về mặt logic được phân tán thông qua mạng máy tính Trong đó hệ thống quản lý hệ cơ sở dữ liệu phân tán là hệ thống cho phép quản lý cơ sỡ dữ liệu phân tán và thực hiện công việc phân phối dữ liệu đến cho người sử dụng

Có một số nhận định cho rằng việc phân tán cơ sở dữ liệu về mặt vậy lý không phải là một vấn đề quá lớn Một số người cảm thấy thoải mái cho rằng nó cũng như phân tán cơ sở dữ liệu trong cùng một máy tính Tuy nhiên việc phân tánvề mặt vậy lý đối với cơ sỡ dữ liệu là rất khác Nó có thể tạo ra những vấn đề khó khăn không thể xảy ra khi làm việc trên cùng một máy tính Lưu ý là việc phân tánvề mặt vậy lý có thể không quá xa mà có thể là ngay trong phòng Trong đó các thông tin về cơ sở dữ liệu được trao đổi thông qua mạng máy tính với nhau

Ngoài ra với một hệ thống mặc dù có sư tồn tại của mạng nhưng nếu cơ sở dữ liệu chỉ tồn tại trong một nốt của mạng thì cũng không được xem là hệ cơ sở dữliệu phân tán Cơ sở dữ liệu chỉ tập trung trên một máy và tất cả các yêu cầu đều chuyển tới máy này nó không khác gì với cơ sở dữ liệu tập trung cho dù có thêm vấn đề về tốc độ truyền dẫn

Mô hình cơ sỡ dữ liệu tập trung dù có mạng máy tính

Trang 6

Mô hình cơ sở dữ liệu phân tán

3 Mục tiêu của hệ cơ sở dữ liệu phân tán?

Hệ cở sở dữ liệu phân tán giúp trong suốt cơ sở dữ liệu phân tán, tăng khả năng bảo mật đối với việc truy cập dữ liệu, cải hiện hiệu suất và có thể dễ dàng mởrộng hệ thống

3.1 Tính trong suốt:

Tính trong suốt của hệ cơ sở dữ liệu phân tán được hiểu theo nghĩa hệthống sẽ ẩn đi những xử lý chi tiết mà người sử dụng không cần phải quan tâm Vídụ một công ty có nhiều chi nhánh ở các nơi khác nhau như Boston, Paris, … Theo một lẽ tự nhiên dữ liệu tại các chi nhánh khác nhau sẽ lưu trữ tại các nơi khác nhau Dữ liệu tại paris sẽ lưu tại máy chủ ở Paris và tương tự đối với Boston Đây được gọi là quá trình phân mãnh Ngoài ra đôi khi cần thiết phải có sự lập lại dữ liệu tại nhiều nơi khác nhau để tăng hiệu suất … Đây gọi là sự trùng lắp

Trang 7

Tính trong suốt giúp cho người dùng chỉ quan tâm đến việc truy suất dữ liệu một cách bình thường mà không cần quan tâm đến việc phân mãnh cũng như trùng lắp dữ liệu… Mọi thứ đã có hệ thống xử lý

 Độc lập dữ liệu: giúp người dùng khi viết ứng dụng Họ sẽ không cần quan tâm dữ liệu cần dùng đang được lưu trữ ở đâu

 Trong suốt về mạng: như đã biết thì đối với cơ sở dữ liệu phân tán ngoài việc quan tâm đến dữ liệu Có một vấn đề quan trọng khác là hệ thống mạng Hệ cơ sở dữ liệu phân tán sẽ giúp cho người dùng về các hoạt động của mạng Thậm chỉ là che đi sự hiện diện của mạng máy tính trong quá trình hoạt động

 Trong suốt về sự trùng lắp: Ẩn đi quá trình trùng lắp dữ liệu đối với người sử dụng Việc trùng lắp dữ liệu giúp tăng hiệu suất, độ tin cậy cũng như tínhsẵn sàng của dữ liệu Ví dụ khi người dùng muốn truy cập một dữ liệu nào đó Dữ liệu này có thể được lưu trữ tại máy người dùng đó hoặc trên máy của người dùng khác Do đó nếu một trong hai máy có gặp vấn đề trục trặc bản sao còn lại vẫn có thể đáp ứng được nhu cầu của người dùng khác

 Trong suốt về phân mãnh: Như đã nói ở phần trên việc phân mãnh dữ liệu là cần thiết Nó giúp tăng hiệu năng, khả năng sẵn sàng cũng như độ tin cậy của hệ thống Ngoài ra sự phân mãnh còn làm giảm tính tiêu cực của sự trùng lắp Mỗi sự trùng lắp bây giờ không phải là toàn bộ dữ liệu mà chỉ một phần của

dữ liệu đó Có hai loại phân mãnh Phân mãnh ngang là trường hợp một bảng sẽ

được chia ra thành các bảng con mỗi bảng chứa tập hợp con các dòng của bảng

ban đầu Phân mãnh dọc là mỗi bảng con sẽ chứa một tập thuộc tính là con của

tập thuộc tính bảng ban đầu Trong suốt phân mãnh giúp ẩn đi quá trình xử lý của hệ thống đối với người dùng

3.2 Tính toàn vẹn:

Trang 8

Hệ cơ sở dữ liệu phân tán giúp dữ liệu có thể được nhân bản trong môi trường phân tán Việc nhân bản giúp tăng khả năng toàn vẹn của cơ sở dữ liệu Hệ

cơ sỡ dữ liệu phân tán chịu trách nhiệm chọn dữ liệu nào trong trường hợp người dùng truy cập và bảo đảm sẽ cập nhật trong tất cả các bản sao khi người dùng tiến hành cập nhật dữ liệu

Trong trường hợp nếu có một vị trí gặp trục trặc hệ cơ sở dữ liệu phân tán sẽ bảo đảm việc cập nhật được thực thi trong trường hợp vị trí đó được khắc phục

Ngoài ra việc đồng bộ giao tác cũng được quản lý chặt chẽ Bảo đảm trong trường hợp thất bại khi đang thực thi giao tác, dữ liệu sẽ được khôi phục lại tình trạng ban đầu kịp thời

Hệ cơ sở dữ liệu phân tán có rất nhiều mô hình ở đây em chỉ tập trung vào

ba mô hình sau

1 Mô hình client-server:

Mô hình client-server được đưa vào công nghệ máy tính đầu những năm

1990 và đã có những tác động cực kỳ đáng kể đến hệ cơ sở dữ liệu phân tán cũng như cách thức chúng ta làm việc với máy tính Ý tưởng vô cùng đơn giản và rõ ràng: đó là phân biệt các chức năng cần cung cấp đồng thời chia các chức năng làm hai loại là chức năng client và chức năng server Nó cung cấp một kiến trúc hai tầng giúp dễ dàng hơn trong việc quản lý

Trong hệ thống này server sẽ chịu trách nhiệm xử lý và tối ưu câu truy vấn, quản lý transaction và lưu trữ Client tương tác với người dùng và truyền câu truy vấn đến server mà không cần phải quan tâm đến việc tối ưu câu truy vấn Server sẽlàm phần lớn công việc và trả kết quả về cho client

Trang 9

Client gồm các tầng: giao diện tương tác với người dung, các chương trình ứng dụng, hệ quản trị cơ sở dữ liệu client, các phần mềm có chức năng truyền thong điệp.

Server gồm các tầng: Các phần mềm có chức năng truyền tin, tầng kiếm soát ngữ nghĩa của dữ liệu, tầng tối ưu hóa câu truy vấn, tầng quản lý cáco giao tác, tầng quản lý khôi phục, tần hổ trợ thực thi

Có nhiều dạng mô hình client server Ở đây chúng ta chỉ đề cập đến mô hình có nhiều server trong hệ thống Có một số trường hợp như client tự quản lý các kết nối với server thích hợp hoặc mỗi client chỉ biết được server của nó và sau đó sẽ giao tiếp với server khác trong trường hợp cần thiết

Mô hình client server được mở rộng ra để phân hóa chức năng tốt hơn: gồmmáy chủ client chịu trách nhiệm tương tác với người dung, máy chủ ứng dụng

Trang 10

dung để chạy ứng dụng và máy chủ cơ sở dữ liệu chịu trách nhiệm quản lý cơ sở dữ liệu Đây cũng chính là mô hình 3 lớp.

Mô hình máy chủ cơ sở dữ liệu, một dạng mở rộng của mô hình client server, có rất nhiều ưu điểm : việc tập trung vào việc quản lý dữ liệu sẽ giúp gia tăng độ tin cậy cũng như khả năng đáp ứng Hiệu suất quản lý cơ sở dữ liệu qua đócũng gia tăng một cách đáng kể…

2 Mô hình hệ phân tán ngang hàng:

Dữ liệu tại các máy khác nhau phải khác nhau do đó cần phải có lược đồ định nghĩa cho mỗi nút được gọi là lược đồ nội bộ (LIS) Còn cái nhìn tổng quát cho toàn bộ dữ liệu sẽ được mô tả trong lược đồ khái niệm toàn cục (GCS) ở mức độ toàn cục vì nó mô tả cấu trúc của tất cả dữ liệu trong toàn bộ nút

Để quản lý quá trình phân mãnh cũng như trùng lắp dữ liệu, các tổ chức về mặt cấu trúc của dữ liệu tại mỗi nút cần phải được mô tả trong lược đồ khái niệm cục bộ (LCS) Trong đó GCS là tập hợp của các LCS Cuối cùng ứng dụng của người dùng và các truy cập của người dùng tới cơ sở dữ liệu được hổ trợ bởi lược đồ ngọai giới (ECS)

Cấu trúc của hệ thống bao gồm hai phần Một phần chịu trách nhiệm quản lý các tương tác của người dùng, phần còn lại chịu trách nhiệm xử lý đối với việc lưu trữ Phần đầu tiên được gọi là bộ phận xử lý người dùng gồm bốn thành phần chính:

 The user interface handler: chịu trách nhiệm diễn dịch nhu cầu của người dùng đồng thời định dạng lại kết quả gửi lại

 The sematic data controller: đựa vào lược đồ khái niệm toàn cục để kiểm tra câu truy vấn của người dùng có thể thực hiện không

 The global query optimizer and decomposer: định ra chiến lược thực thi sao cho tốn ít chi phí nhất, và chịu trách nhiệm chuyển câu truy vấn toàncục thành câu truy vấn cục bộ bằng cách dùng lược đồ toàn cục, cục bộ

Trang 11

 The distributed execution monitor điều khiển thực thi câu truy vấn của người dùng

Phần thứ hai là phần xử lý dữ liệu bao gồm:

 Local query Processor: chịu trách nhiệm tìm đường đi ngắn nhất để truycập dữ liệu cần thiết

 Local recovery manager: chịu trách nhiệm bảo đảm các cơ sỡ dữ liệu ở cục bộ được toàn vẹn cho dù có lỗi xảy ra

 Runtime support processor: thực hiện truy cập trực tiếp tới cơ sở dữ liệuLưu ý hai phần trên không tương tự như mô hình client server Không có gợi ý nào nói rằng chúng nên đặt trên những máy khác nhau Tuy nhiên nên tách hệ thống truy cập dữ liệu riêng biệt với hệ thống xử lý thông tin người dùng

Trang 12

3 Mô hình hệ phân tán phức hợp

Mô hình hệ phân tán phức hợp mô tả trường hợp mô hình mỗi hệ cơ sở phân tán hoàn toàn tự trị và không có khái niệm hợp tác với nhau Chúng không biết đến sự tồn tại của nhau và làm sao để liên lạc với nhau

Sự khác biệt cơ bản giữa mô hình hệ phân tán phức hợp và hệ phân tán ngang hàng là mô tả của lược đồ khái niệm toàn cục (GCS) Trong hệ phân tán ngang hàng GCS mô tả cấu trúc của toàn bộ cơ sỡ dữ liệu Trong khi mô hình hệ phân tán phức hợp nó chỉ mô tả một vài cơ sở dữ liệu mà tùy vào mỗi hệ phân tán con muốn chia sẽ Mỗi hệ phân tán con sẽ có thể cho phép vài dữ liệu của chúng được truy cập bên ngoài thông qua lược đồ xuất khẩu (export schema)

Mô hình cấu trúc của hệ phân tán phức hợp cũng khác với hệ phân tán ngang hàng Sự khác nhau cơ bản nhất là tồn tại nhiều hệ cơ sở phân tán đầy đủ, mỗi hệ sẽ quản lý riêng cho mình một cơ sở dữ liệu khác nhau

Việc thiết kế hệ máy tính phân tán liên quan đến việc đưa ra sự lựa chọn nên đặt dữ liệu và chương trình ở vị trí nào trên hệ thống mạng máy tính Trong trường hợp hệ cơ sở dữ liệu phân tán, việc phân tán ứng dụng liên quan đến hai

Trang 13

vấn đề: phân tán chương trình chạy ứng dụng DBMS và phân tán chương trình chạy trên csdl

Việc tổ chức hệ thống phân tán được xem xét theo mô hình 3 chiều sau:

 Về mức độ chia sẽ: đầu tiên không có sự chia sẽ gì Mỗi ứng dụng và dữ liệu của nó được chạy riêng biệt Không có sự liên lạc với các ứng dụng khác và truy cập bất kì dữ liệu tại nơi khác Đây là một trong những đặc trưng ban đầu của mạng và không còn được phổ biến ngày nay Sau đó chúng ta tiến tới chia sẽ dữ liệu: mọi ứng dụng được nhân bản ra cho nhiều nơi nhưng dữ liệu thì không Mọi hoạt động của người dùng được quản lý tại nơi sử dụng khi cần dữ liệu thì dữ liệu sẽ được truyền thông qua mạng Cuối cùng là chia sẽ cả dữ liệu và chương trình nghĩa là

chương trình tại điểm nhận có thể đòi một dịch vụ nào đó tại nơi khác đồng thời có thể truy cập dữ liệu tại nơi thứ ba

 Về hình thức truy cập: có hai lựa chọn là mô hình truy cập của người dùng có thể tĩnh do đó họ không thay đổi trong tương lai trường hợp hai là có thể thay đổi Dễ dàng nhận thấy việc quản lý ở môi trường tĩnh sẽ dểdàng hơn nhiều so với trường hợp động Tuy nhiên sẽ khó tìm thấy được ở hiện thực ứng dụng phân tán nào đó dùng trường hợp tĩnh Do đó câu

Trang 14

hỏi đặt ra quan trọng không phải là động hay tĩnh mà là mức độ động bao nhiêu.

 Về mức độ hiểu biết: Trường hợp đầu tiên dĩ nhiên người thiết kế sẽ không biết được thông tin làm cách nào mà có thể truy cập được dữ liệu bên dưới Đây là mô hình về mặt lý thuyết nhưng rất khó đễ có thể thực hiện trong thực tế Các lựa chọn khác có tính thực tế hơn là người thiết kếcó được một phần hoặc đầy đủ thông tin

Có hai chiến lược để thiết kế hệ cơ sở dữ liệu phân tán là từ trên xuống và từdưới lên:

 Từ trên xuống:

Hành động được bắt đầu từ việc phân tích yêu cầu bao gồm xác định môitrường của hệ thống Đưa ra gợi ý về dữ liệu và tất cả các nhu cầu cần thiết cho cơ sở dữ liệu Yêu cầu cũng bao gồm việc xác định hệ thống để bảo đảm cho hệ cơ sở

Trang 15

dữ liệu phân tán đáp ứng được các tiêu chuẩn về hiệu năng tính sẵn sàng, độ tin cậy, khả năng kinh tế và khả năng mở rộng

Các tài liệu yêu cầu sẽ là đầu vào cho hai hoạt động song song: là thiết kế khung và thiết kế các khái niệm Thiết kế khung tập trung vào giao diện của ngườidùng Trong khi thiết kế khái niệm tập trung vào quá trình thiết kế loại thực thể và mối quan hệ giữa các thực thể

Lược đồ khái niệm toàn cục và mẫu truy cập thu được từ bước trên sẽ là đầu vào của việc thiết kế phân tán Nhiệm vụ của bước này là thiết kế lược đồ kháiniệm cục bộ bằng cách phân tán các thực thể khắc các nơi trong hệ thống phân tán

Thay vì phân tán các bảng phổ biến hơn người ta sẽ phân tán chúng thành các bảng phụ gọi là hiện tượng phân mãnh Việc thiết kế phân tán bao gồm hai bước là phân mãnh và tạo bản sao

Bước cuối cùng là thiết kế về mặt vật lý, sẽ khớp các lược đồ khái niệm cụcbộ tới các thiết bị lưu trữ trên các mạng tương ứng

Cần phải chú ý là việc thiết kế và phát triển đòi hỏi phải có một bước giám sát để bảo đảm phù hợp Kết quả giám sát này sẽ cho ra những phản hồi kịp thời

 Từ dưới lên:

Được thiết kế khi cơ sở dữ liệu phân tán được thiết kế trên cơ sở dữ liệu cósẵn Lược đồ mô tả toàn thể được tạo ra dựa trên sự thỏa hiệp của các mô tảcơ sở dữ liệu có sẵn

1 Các vấn đề khi thiết kế phân tán :

a Nguyên do phân mãnh:

Các ứng dụng thường dùng các tập con của các bảng Các ứng dụng khi truy cập chắc chắn không truy cập hết toàn bộ bảng mà thường chỉ truy cập một phần của bảng

Đối với ứng dụng cần truy cập các bảng tại các vị trí khác nhau Trong

trường hợp không sao lưu các bảng với nhau khi truy cập toàn bộ bảng sẽ gây lãngphí băng thông rất lớn Còn trong trường hợp có sao lưu các bảng với nhau sẽ gây

Trang 16

khó khăn trong quá trình cập nhật đồng thời không tốt trong trường hợp lưu trữ hạn chế

Cuối cùng việc phân mãnh bảng ra thành các bảng nhỏ giúp cho các câu truy vấn có thể truy suất song song một cách đồng thời Do đó việc phân mãnh giúp tăng tốc độ lưu thông của hệ thống

Tuy nhiên việc phân mãnh cũng gây ra nhiều khó khăn Trong trường hợp yêu cầu của các chương trình có sự xung đột lẫn nhau gây khó khăn cho việc phân mãnh các bảng Mà nếu thực hiện phân mãnh đòi hỏi phải có thuật toán nối bảng làm giảm hiệu năng xử lý Giảm thiểu việc phải nối các bảng là một trong những vấn đề cơ bản

Khó khăn thứ hai là việc kiểm soát ngữ nghĩa của dữ liệu Đặc biệt là trong vấn đề kiểm tra tính toàn vẹn Như là kết quả của phân mãnh các thuộc tính của bảng có thể bị chia ra nhiều bảng con đặt ở nhiều nơi Trong trường hợp này việc kiểm tra sự phụ thuộc cũng đòi hỏi phải tìm hết các dữ liệu ở một số nơi

b Các kiểu phân mãnh:

Có hai loại phân mãnh là phân mãnh ngang và phân mãnh dọc Ví dụ về phânmãng ngang

Phân mãnh ngang Trong ví dụ bảng project được phân làm hai bảng con mộtbảng chứa các project có ngân sách nhỏ hơn 200000$ và một bảng chức các

project còn lại

Ngày đăng: 10/04/2015, 13:22

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w