Hằng ngày con người càng tạo ra nhiều dữ liệu. Nhu cầu lưu trữ, sử dụng, quản lý dữ liệu tăng lên hằng giờ. Tuy nhiên nếu dữ liệu bạn đang sử dụng phải đáp ứng được bốn nhu cầu sau, bạn nên lưu trữ nó trong cơ sở dữ liệu . 1/ Lưu trữ dữ liệu phải cần nhanh chóng và dễ dàng 2/ Hệ thống lưu trữ phải đáng tin cậy. 3/ Việc lấy ra dữ liệu phải được thực hiện nhanh chóng. 4/ Việc lấy ra dữ liệu có chọn lọc phải được thực hiện dễ dàng. Cơ sở dữ liệu ( Database) là gì? Database là một tập hợp thông tin có cấu trúc (http://en.wikipedia.org/wiki/Database). Theo định nghĩa này thì database có thể là danh bạ điện thoại, danh sách ngày lễ ... Trong môn này ta hiểu database là tập hợp các thông tin có cấu trúc, có khả năng dễ dàng truy cập, quản lý, thay đổi và được quản lý bởi hệ quản trị cơ sở dữ liệu. Database gồm hai thành phần: 1/ Data (dữ liệu) 2/ Metadata, cũng là dữ liệu, nhưng Metadata mô tả cấu trúc của dữ liệu (data). Giá trị ở database nằm ở cấu trúc dữ liệu. Để rõ hơn, tôi sẽ giới thiệu cho bạn một ví dụ sau: Vài năm trước, một số nhà khoa học đã tính toán, nếu tách toàn bộ nhân loại (human beings) thành các thành nguyên tử đơn lẻ như Nitơ, Oxy, Cacbon … Thì toàn bộ loài người chỉ đáng giá khoảng 20 ngàn (97 cent). Dĩ nhiên điều này là sai, vì các nguyên tử trong cơ thể con người liên kết với nhau, tạo thành các cấu trúc phức tạp, tạo ra giá trị hàng nghìn tỷ USD. Các cấu trúc phức tạp này được mô tả thông qua gen. Như vậy các dữ liệu đơn lẻ (data) giống như từng nguyên tử nhỏ, sẽ chả có giá trị gì. Nó thực sự có giá trị khi nó được đặt vào một cấu trúc, liên kết với nhau. Để hiểu rõ hơn về sự cần thiết của cấu trúc dữ liệu, ta sẽ tìm hiểu về file trắng (flat file). Ở thời kì đầu của CNTT, lúc cơ sở dữ liệu chưa phát triển, người ta sử dụng các file trắng như file txt, csv, chẳng hạn để lưu trữ dữ liệu. Để lưu trữ tên các khách hàng và địa chỉ ta có thể làm như sau. Bạn thấy, file này chỉ chứa dữ liệu, không có cấu trúc. Ưu điểm của file này là nhanh và nhẹ. Tuy nhiên, nếu muốn sử dụng file này, người sử dụng phải biết cột nào chứa dữ liệu nào, như cột một trong hình chứa tên, cột hai chứa địa chỉ. Chương trình sử dụng file này phải được viết cực kì chi tiết để đảm bảo dữ liệu được lưu, quản lý đúng. Ở một hệ thống nhỏ, sẽ không có vấn đề, tuy nhiên đối với hệ thống lớn, việc sử dụng flat file gần như là không thể. Khi bước vào hệ thống lớn, ta nên sử dụng dữ liệu có cấu trúc (database), khi biết cấu trúc của dữ liệu ta có thể dễ dàng quản lý, sử dụng dữ liệu. Nguồn: hocdai.com