Bài thuyết trình Google File System nhằm giới thiệu về GFS, kiến trúc tổng quan, sự tương tác trong hệ thống, trách nhiệm của GFS-Master. Google File System là hệ thống quản lý tập tin phân tán được phát triển bởi Google.
AMBIENT/
Chủ đề:
Nội dung Text: Tiểu luận: Google File System
- THE GOOGLE FILE SYSTEM
GVHD: TS. Hồ Bảo Quốc
Nhóm học viên thực hiện:
• Dương Hữu Thành – 1212035
• Phạm Ngọc Vân Anh – 1212001
• Nguyễn Thanh Tòng – 1212039
- Nội dung
• Giới thiệu về GFS.
• Kiến trúc tổng quan.
• Sự tương tác trong hệ thống.
• Trách nhiệm của GFS-Master.
- GOOGLE FILE SYSTEM
- Giới thiệu về GFS
• Là một hệ thống quản lý tập tin phân tán (DFS)
được phát triển bởi Google.
• Được thiết kế để cung cấp khả năng truy xuất dữ
liệu hiệu quả và tin cậy dựa trên việc sử dụng một
hệ thống cluster lớn của các commodity
hardware.
• Phiên bản mới nhất có tên là Colossus.
(nguồn http://en.wikipedia.org/wiki/Google_File_System)
- Giới thiệu về GFS (cont.)
• Chỉ được sử dụng bởi Google.
• Không phải là một sản phẩm open source.
• Được xem như là một mô hình về DFS.
- KIẾN TRÚC TỔNG QUAN
- Các giả định (assumptions)
• Tỷ lệ lỗi (failure rate) của các thành phần cao.
• Số lượng và kích thước file lớn:
▫ Vài triệu file.
▫ Mỗi file > 100 MB
• Phần lớn thao tác trên file là thêm vào cuối
(append).
• Large streaming read.
- Các interface
• Create
• Delete
• Open
• Close
• Read
• Write
• Snapshot
• RecordAppend
- Thết kế tổng quan
• Mỗi file được chia ra và lưu trữ thành nhiều
chunk.
▫ Mỗi chunk 64 MB.
▫ Mỗi chunk được nhân bản (replica) thành 3 phần,
mỗi phần lưu trữ trên một chunk server.
• Một master server, nhiều chunk server và nhiều
client.
▫ Quản lý tập trung để đơn giản việc quản lý.
• Không caching data.
- Kiến trúc
- Single master server
• Đơn giản việc quản lý
• Các vấn đề:
▫ Master failure?
▫ Nghẽn cổ chai.
• Giải pháp
▫ Shadow master
▫ Tối thiểu hóa vai trò của master
Chỉ được dùng cho metadata.
Tăng kích thước chunk size.
Lease mechanism.
- Metadata
• Tên file và chunk
▫ Lưu ở cả master và chunk server
• Mapping giữ file và chunk
▫ Lưu ở cả master và chunk server
• Vị trí của các chunk.
▫ Hỏi chunk server khi master start hoặc chunk server tham
gia vào hệ thống.
• Được load lên RAM (64byte/ chunk, mỗi chunk 64MB
640 TB cần ít hơn 640MB)
▫ Truy xuất nhanh và dễ dàng
- Metadata (cont.)
• Operation log để log lại các thao thác chỉnh sửa
metadata.
▫ Là metadata bền vững duy nhất được lưu ở master
▫ Lưu trữ trên local disk.
▫ Được sao lưu tại các shadow master.
- SỰ TƯƠNG TÁC TRONG HỆ
THỐNG
- Thao tác thay đổi nội dung file
(mutation)
• Mutation = write hoặc là record append.
▫ Phải được thực hiện trên mọi replica.
- Lease
• Được thiết kế để giảm sự tham gia của master vào
các thao tác trên file.
• Master chọn một trong các replica và replica
được chọn trở thành primary replica.
• Primary replica sẽ thay thế master để tương tác
với client khi client yêu cầu một thao tác
mutation.
- Read
1. Application phát sinh ra read request
2. GFS client phiên dịch request đó và gửi cho
master.
3. Master trả về chunk handle và vị trí của một
trong các replica cho GFS client
- Read (cont.)
4. Client sử dụng chunk handle và location để gửi
request đến chunk server.
5. Chunk server gửi data về cho client.
6. Client chuyển data cho application.
- Write
1. Application phát sinh ra write request
2. GFS client dịch phiên dịch request đó và gửi
cho master.
3. Master trả về chunk handle và vị trí của tất cả
replica cho GFS client