Professional Documents
Culture Documents
Ts. Nguyễn An Tế
Nguyễn Tiến Dũng
Nguyễn Thúy Ngọc
Nội dung trình bày
1. Tổ chức CSDL
2. Chỉ mục (index)
3. Ràng buộc dữ liệu
4. Tối ưu hóa câu truy vấn
5. Tổ chức CSDL trong SQL Server
1. Mở đầu
2. Tổ chức tập tin mẩu tin (File Record)
3. Các thao tác trên tập tin
4. Tổ chức tập tin không sắp thứ tự (Heap File)
5. Tổ chức tập tin có sắp thứ tự (Sorted File)
6. Kỹ thuật băm (hash)
7. RAID
8. SAN
Ts. Nguyễn An Tế - Nguyễn Tiến Dũng - Nguyễn Thúy Ngọc 20/09/2010 3
Mở đầu
● Primary storage
– Là dạng lưu trữ mà CPU (central processing unit) có thể
thao tác trực tiếp được
– Ví dụ như bộ nhớ chính của máy tính (computer main
memory), bộ nhớ được sử dụng cho cache
– Tốc độ truy cập nhanh nhưng có giới hạn về khả năng
lưu trữ, giá thành cao
● Secondary storage
– Là dạng lưu trữ mà CPU không thể thao tác trực tiếp
được (dữ liệu phải được chuyển vào primary storage)
– Ví dụ như các đĩa từ, đĩa quang, băng từ
– Tốc độ truy cập chậm hơn so với primary storage
– Khả năng lưu trữ cao hơn, giá thành thấp hơn
● Cache memory
– Chính là RAM nhưng lưu dữ liệu của những lần đọc
trước đó
– Khi chương trình cần đọc dữ liệu thì có thể đọc trong
cache trước (không cần thiết phải đọc lại từ secondary
storage). Dẫn đến việc thực thi chương trình sẽ nhanh
● Người thiết kế, người cài đặt CSDL và người quản trị
– Phải nắm được các kỹ thuật tổ chức lưu trữ
– Biết được ưu và khuyết điểm của các kỹ thuật này
● CSDL được tổ chức vật lý
– Là các tập tin chứa các mẩu tin (files of records)
– Mỗi mẩu tin được xem là một thực thể
– Ví dụ: mỗi mẩu tin là một sinh viên, có các thuộc tính
như mã số, họ tên, địa chỉ, …
1. Mở đầu
2. Tổ chức tập tin mẩu tin (File Record)
3. Các thao tác trên tập tin
4. Tổ chức tập tin không sắp thứ tự (Heap File)
5. Tổ chức tập tin có sắp thứ tự (Sorted File)
6. Kỹ thuật băm (hash)
7. RAID
8. SAN
Ts. Nguyễn An Tế - Nguyễn Tiến Dũng - Nguyễn Thúy Ngọc 20/09/2010 14
Tổ chức tập tin mẩu tin (file of records)
● Mẩu tin
– Mẩu tin là một thực thể và có các trường dữ liệu (field)
– Mỗi trường đều có kiểu dữ liệu
– Các kiểu cơ sở như chuỗi, số, ngày, luận lý
– Các kiểu đặc biệt như hình ảnh, âm thanh, phim, …
● Kiểu mẩu tin
– Tập hợp tất cả các tên trường cùng với kiểu dữ liệu của
nó được gọi là kiểu mẩu tin
● Tập tin
– Là tập hợp tuần tự các mẩu tin
– Nếu kích thước tất cả mẩu tin đều như nhau thì gọi là
mẩu tin có chiều dài cố định
– Ngược lại thì gọi là mẩu tin có chiều dài thay đổi
● Ví dụ
● Ví dụ
Dấu phân cách
● Ví dụ
Phân cách trường
Khối thứ i
Khối thứ i + 1
Khối thứ i
Khối thứ i + 1
● File header là gì ?
– Là thông tin mô tả cho tập tin. Bao gồm
– Địa chỉ của các khối lưu trữ trên đĩa
– Mô tả định dạng của bản ghi như kích thước các trường,
thứ tự các trường
1. Mở đầu
2. Tổ chức tập tin mẩu tin (File Record)
3. Các thao tác trên tập tin
4. Tổ chức tập tin không sắp thứ tự (Heap File)
5. Tổ chức tập tin có sắp thứ tự (Sorted File)
6. Kỹ thuật băm (hash)
7. RAID
8. SAN
Ts. Nguyễn An Tế - Nguyễn Tiến Dũng - Nguyễn Thúy Ngọc 20/09/2010 36
Các thao tác trên tập tin
● Đọc (get)
– Sao chép nội dung của mẩu tin hiện hành vào biến
chương trình
– Di chuyển mẩu tin hiện hành sang mẩu tin tiếp theo
(khối tiếp theo)
● Tìm tiếp (find next)
– Tìm mẩu tin kế tiếp thỏa mãn điều kiện tìm
– Khối chứa mẩu tin này sẽ được đọc vào bộ nhớ chính
– Mẩu tin tìm thấy trở thành mẩu tin hiện hành
Ts. Nguyễn An Tế - Nguyễn Tiến Dũng - Nguyễn Thúy Ngọc 20/09/2010 40
Các thao tác thực hiện ở mức thấp (tt.)
1. Mở đầu
2. Tổ chức tập tin mẩu tin (File Record)
3. Các thao tác trên tập tin
4. Tổ chức tập tin không sắp thứ tự (Heap File)
5. Tổ chức tập tin có sắp thứ tự (Sorted File)
6. Kỹ thuật băm (hash)
7. RAID
8. SAN
Ts. Nguyễn An Tế - Nguyễn Tiến Dũng - Nguyễn Thúy Ngọc 20/09/2010 42
Tổ chức tập tin không sắp thứ tự
● Đặc điểm
– Cách tổ chức đơn giản và cơ bản nhất
– Các mẩu tin lưu trữ theo thứ tự được thêm vào tập tin
– Tổ chức tập tin không sắp thứ tự còn được gọi là heap
file hay pile file
1. Mở đầu
2. Tổ chức tập tin mẩu tin (File Record)
3. Các thao tác trên tập tin
4. Tổ chức tập tin không sắp thứ tự (Heap File)
5. Tổ chức tập tin có sắp thứ tự (Sorted File)
6. Kỹ thuật băm (hash)
7. RAID
8. SAN
Ts. Nguyễn An Tế - Nguyễn Tiến Dũng - Nguyễn Thúy Ngọc 20/09/2010 46
Tổ chức tập tin có sắp thứ tự
● Đặc điểm
– Các mẩu tin được sắp thứ tự vật lý theo các giá trị của
một hoặc nhiều trường (trường sắp thứ tự)
– Nếu trường sắp thứ tự cũng là trường khóa thì được gọi
là khóa sắp thứ tự (giá trị phải là duy nhất)
– Tổ chức tập tin có sắp thứ tự còn được gọi là tập tin
sắp thứ tự hay tập tin tuần tự
● Ví dụ
Tên Ngày sinh Học bổng
Khối 1 Anh 10/09/1990 100,000
Bảo 20/01/1991 200,000
Bình 15/07/1990 100,000
Khối 2 Chi
Chung
Dũng
Khối …
1. Mở đầu
2. Tổ chức tập tin mẩu tin (File Record)
3. Các thao tác trên tập tin
4. Tổ chức tập tin không sắp thứ tự (Heap File)
5. Tổ chức tập tin có sắp thứ tự (Sorted File)
6. Kỹ thuật băm (hash)
7. RAID
8. SAN
Ts. Nguyễn An Tế - Nguyễn Tiến Dũng - Nguyễn Thúy Ngọc 20/09/2010 52
Kỹ thuật băm
● Băm là gì ?
– Kỹ thuật cho phép tìm kiếm nhanh theo một điều kiện
– Điều kiện là so sánh bằng trên một trường
– Dựa trên một hàm băm nhận vào một giá trị khoá và
trả về địa chỉ của khối đĩa (chứa mẩu tin có giá trị khoá)
– Khối đĩa được đọc vào bộ nhớ chính
– Việc tìm kiếm thực hiện trên bộ nhớ chính này
1. Mở đầu
2. Tổ chức tập tin mẩu tin (File Record)
3. Các thao tác trên tập tin
4. Tổ chức tập tin không sắp thứ tự (Heap File)
5. Tổ chức tập tin có sắp thứ tự (Sorted File)
6. Kỹ thuật băm (hash)
7. RAID
8. SAN
Ts. Nguyễn An Tế - Nguyễn Tiến Dũng - Nguyễn Thúy Ngọc 20/09/2010 58
Kỹ thuật RAID
● RAID là gì ?
– Từ viết tắt của Redundant Arrays of Independent Disks
– Là một hệ thống các đĩa cứng được ghép lại nhằm:
– Tăng cường tốc độ đọc/ghi dữ liệu
– Tăng cường khả năng chịu lỗi khi bị mất dữ liệu
– Hoặc kết hợp cả hai khả năng này
● RAID 0
– Cần ít nhất là hai ổ đĩa cứng (nên cùng loại)
– Dữ liệu được ghi thành nhiều phần trên nhiều ổ đĩa
(striping)
– Ưu điểm: tăng tốc độ đọc/ghi đĩa
– Khuyết điểm: tính an toàn thấp, nếu có một đĩa bị hư
thì xem như không phục hồi lại được dữ liệu
● RAID 1
– Cần ít nhất là hai ổ đĩa cứng
– Dữ liệu được ghi giống như nhau trên cả hai đĩa
(mirroring)
– Ưu điểm: tính an toàn cao, nếu có một đĩa bị hư thì vẫn
sử dụng được đĩa còn lại
● RAID 5
– Cải tiến của RAID 0 để tăng khả năng chịu lỗi
– Cần ít nhất là ba ổ đĩa cứng
– Dữ liệu được ghi theo ”striping with parity”. Nghĩa là:
– Dữ liệu được ghi thành hai phần trên hai ổ đĩa (striping)
– Ổ đĩa thứ ba sẽ ghi các parity
● Ví dụ: RAID 0
Số thập phân Số nhị phân
21 20
0 0 0
0 0
1 0 1
0 1
2 1 0
3 1 1 1 0
1 1
● Ví dụ: RAID 5
0 0 1
0 1 0
1 0 0
1 1 1
1. Mở đầu
2. Tổ chức tập tin mẩu tin (File Record)
3. Các thao tác trên tập tin
4. Tổ chức tập tin không sắp thứ tự (Heap File)
5. Tổ chức tập tin có sắp thứ tự (Sorted File)
6. Kỹ thuật băm (hash)
7. RAID
8. SAN
Ts. Nguyễn An Tế - Nguyễn Tiến Dũng - Nguyễn Thúy Ngọc 20/09/2010 65
SAN
● SAN là gì ?
– Từ viết tắt của Storage Area Network
– Là một hệ thống trong đó các thiết bị lưu trữ được tổ
chức thành một mạng riêng
– Là mạng có tốc độ cao dành riêng cho việc lưu trữ và
quản trị dữ liệu
– Cung cấp các kết nối giữa các server và các thiết bị lưu
trữ
1. Tổ chức CSDL
2. Chỉ mục (index)
3. Ràng buộc dữ liệu
4. Tối ưu hóa câu truy vấn
5. Tổ chức CSDL trong SQL Server
● Lựa chọn 1
– Mỗi index entry tương ứng với mỗi mẩu tin
– Địa chỉ trỏ đến địa chỉ của khối đĩa hoặc mẩu tin
● Lựa chọn 2
– Một index entry tương ứng với một khóa (chỉ lấy đại
diện)
– Danh sách địa chỉ trỏ đến các địa chỉ của các mẩu tin có
cùng giá trị khóa
● Lựa chọn 3
– Một index entry tương ứng với một khóa (chỉ lấy đại
diện)
– Địa chỉ trỏ đến địa chỉ của khối các địa chỉ các mẩu tin
1. Tổ chức CSDL
2. Chỉ mục (index)
3. Ràng buộc dữ liệu
4. Tối ưu hóa câu truy vấn
5. Tổ chức CSDL trong SQL Server