Báo cáo đồ án môn học Quản lý thông tin IE103 UIT: Tìm hiểu Oracle

Báo cáo đồ án Oracle IE103 UIT, đề tài Quản lý thông tin. Tài liệu tham khảo đầy đủ gồm file báo cáo và source code cho sinh viên.

Chuyên ngành

Quản Lý Thông Tin

Người đăng

Ẩn danh

Thể loại

báo cáo đồ án

2022

96
11
0

Phí lưu trữ

35 Point

Mục lục chi tiết

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

BẢNG PHÂN CÔNG, ĐÁNH GIÁ THÀNH VIÊN

1. Chương 1: Tổng quan

1.1. Lịch sử ra đời và phát triển

1.2. Cơ sở dữ liệu

1.3. Hệ quản trị cơ sở dữ liệu

1.4. Hệ quản trị cơ sở dữ liệu Oracle

2. Chương 2: Các đặc trưng của hệ quản trị cơ sở dữ liệu Oracle

2.1. Đặc trưng

2.2. Khả năng lưu trữ

2.3. Đồng hành và nhất quán

2.4. Backup và Restore dữ liệu

2.5. Cơ sở dữ liệu phân tán

2.6. Khả năng xử lý dữ liệu

2.7. Kiến trúc của Oracle

2.7.1. System Global Area

2.7.2. Thành phần vật lý

2.7.3. Redo Log File

2.7.4. Thành phần logic

2.8. Tính năng của Oracle

2.8.1. Tính năng mở rộng và hiệu suất

2.8.2. Tính năng quản lý

2.8.3. Tính năng sao lưu và phục hồi cơ sở dữ liệu

2.8.4. Tính năng sẵn có cao

2.8.5. Tính năng kinh doanh thông minh

2.8.6. Tính năng bảo mật

2.8.7. Tính toàn vẹn và kích hoạt

2.8.8. Tính năng tích hợp thông tin

3. Chương 3: Quy trình thực hiện hệ quản trị Oracle

3.1. Hướng dẫn cài đặt

4. Chương 4: Các câu lệnh SQL trong Oracle

4.1. Ngôn ngữ định nghĩa dữ liệu (Data Definition Language-DDL)

4.1.1. Các kiểu dữ liệu trong Oracle

4.1.2. Các thao tác trên cấu trúc bảng

4.2. Ngôn ngữ thao tác dữ liệu( Data Manipulation Language-DML)

4.2.1. Thêm dữ liệu vào bảng

4.2.2. Sửa dữ liệu trong bảng

4.2.3. Xóa dữ liệu trong bảng

4.3. Ngôn ngữ điều khiển dữ liệu( Data Control Language-DCL)

4.3.1. Ngôn ngữ điều khiển dữ liệu

4.4. Truy vấn dữ liệu

4.4.1. Câu truy vấn tổng quát

4.4.2. Truy vấn con(Subquery)

4.4.3. Các toán tử so sánh và logic

4.4.4. Các loại hàm trong SQL

4.4.4.1. Các hàm kiểu số
4.4.4.2. Các hàm kiểu chuỗi
4.4.4.3. Các hàm kiểu ngày
4.4.4.4. Các hàm gom nhóm

4.5. Lập trình PL/SQL

5. Chương 5: Ứng dụng/ Kết quả thực nghiệm/So sánh-Đánh giá

5.1. Kết quả thực nghiệm

5.2. So sánh và đánh giá

5.2.1. So sánh với MS SQL SERVER

5.2.2. So sánh với MongoDB

6. Chương 6: Kết luận

6.1. Hướng phát triển

TÀI LIỆU THAM KHẢO

DANH MỤC HÌNH ẢNH

Tóm tắt

I. Tổng quan đồ án Oracle IE103 Nền tảng quản lý thông tin

Đồ án Oracle IE103 tập trung nghiên cứu Hệ quản trị cơ sở dữ liệu Oracle, một trong những nền tảng mạnh mẽ và phổ biến nhất thế giới. Oracle Database, sản phẩm chủ lực của Oracle Corporation, là một hệ thống quản lý cơ sở dữ liệu quan hệ (RDBMS) được thiết kế cho điện toán lưới doanh nghiệp. Mục tiêu chính của hệ thống là lưu trữ, truy xuất và quản lý hiệu quả một lượng lớn dữ liệu trong môi trường đa người dùng. Báo cáo này cung cấp một cái nhìn toàn diện về Oracle, từ lịch sử hình thành, kiến trúc phức tạp cho đến các tính năng vượt trội về hiệu suất, bảo mật và khả năng phục hồi. Việc hiểu rõ Hệ quản trị cơ sở dữ liệu Oracle không chỉ là yêu cầu của môn học Quản lý Thông tin mà còn là kiến thức nền tảng quan trọng cho các kỹ sư công nghệ thông tin. Hệ thống này giải quyết các vấn đề cốt lõi của quản lý thông tin, bao gồm đảm bảo tính nhất quán dữ liệu, ngăn chặn truy cập trái phép và cung cấp các giải pháp sao lưu, phục hồi sau sự cố. Đồ án đi sâu vào phân tích các thành phần cấu tạo nên Oracle, quy trình cài đặt, các câu lệnh truy vấn và so sánh hiệu năng với các hệ quản trị cơ sở dữ liệu khác như MS SQL Server và MongoDB, từ đó đưa ra những đánh giá khách quan về ưu và nhược điểm của nền tảng này.

1.1. Lịch sử và sự phát triển của Oracle Database

Oracle Corporation được thành lập vào năm 1977 bởi Larry Ellison, Bob Miner và Ed Oates, ban đầu với tên gọi Software Development Laboratories (SDL). Công ty đã chứng minh tiềm năng thương mại của cơ sở dữ liệu quan hệ, một công nghệ còn non trẻ vào thời điểm đó. Phiên bản thương mại đầu tiên, Oracle v2, được phát hành vào năm 1979, đánh dấu sự ra đời của RDBMS đầu tiên trên thị trường. Trải qua nhiều thập kỷ, Oracle liên tục phát triển và cải tiến. Một bước ngoặt quan trọng là sự ra đời của Oracle Database 12c vào năm 2013 với kiến trúc đa thuê (multitenant), cho phép quản lý nhiều cơ sở dữ liệu riêng lẻ trong một cơ sở dữ liệu chứa duy nhất. Gần đây, Oracle đã chuyển sang lịch phát hành hàng năm, với các phiên bản được đặt tên theo năm như Oracle Database 18 và 19, nhằm cung cấp các bản cập nhật và sửa lỗi một cách thường xuyên hơn, thể hiện sự thích ứng với xu hướng phát triển phần mềm hiện đại.

1.2. Vai trò của hệ quản trị CSDL trong quản lý thông tin

Một cơ sở dữ liệu (Database) là tập hợp dữ liệu có tổ chức được lưu trữ trên máy tính. Hệ quản trị cơ sở dữ liệu (DBMS) là phần mềm đóng vai trò trung gian, cho phép người dùng định nghĩa, thao tác và quản lý dữ liệu một cách an toàn và hiệu quả. Có hai loại chính: cơ sở dữ liệu quan hệ (SQL) và phi quan hệ (NoSQL). Hệ quản trị cơ sở dữ liệu Oracle thuộc loại quan hệ, nơi dữ liệu được cấu trúc trong các bảng gồm hàng và cột. Ngôn ngữ truy vấn có cấu trúc (SQL) được sử dụng để tương tác với dữ liệu. Vai trò của Oracle là đảm bảo các nguyên tắc ACID (Atomicity, Consistency, Isolation, Durability), giúp duy trì tính toàn vẹn và độ tin cậy của các giao dịch, điều đặc biệt quan trọng trong các hệ thống doanh nghiệp yêu cầu độ chính xác cao.

1.3. Mục tiêu và phạm vi nghiên cứu của đồ án IE103

Mục đích chính của đồ án là cung cấp một cái nhìn tổng quan, chi tiết về Hệ quản trị cơ sở dữ liệu Oracle. Đề tài tập trung vào việc nghiên cứu cấu trúc, các đặc điểm và tính năng cốt lõi của Oracle. Phạm vi nghiên cứu bao gồm việc phân tích sâu về kiến trúc bộ nhớ (SGA, PGA) và các tiến trình nền. Ngoài ra, đồ án còn trình bày quy trình cài đặt, hướng dẫn sử dụng các câu lệnh SQLPL/SQL cơ bản. Một phần quan trọng của báo cáo là ứng dụng thực nghiệm, xây dựng một cơ sở dữ liệu mẫu để minh họa. Cuối cùng, đề tài thực hiện so sánh và đánh giá Oracle với các đối thủ cạnh tranh như MS SQL ServerMongoDB để làm rõ ưu, nhược điểm và vị thế của Oracle trong bối cảnh công nghệ hiện nay. Kết quả nghiên cứu giúp làm rõ tại sao Oracle được mệnh danh là một hệ thống "phức tạp nhưng mạnh mẽ".

II. Giải mã kiến trúc Oracle Bí quyết quản lý dữ liệu hiệu quả

Kiến trúc của Hệ quản trị cơ sở dữ liệu Oracle được thiết kế để tách biệt rõ ràng giữa cấu trúc logic và cấu trúc vật lý. Sự tách biệt này cho phép quản trị viên cơ sở dữ liệu (DBA) có thể quản lý việc lưu trữ dữ liệu vật lý mà không làm ảnh hưởng đến quyền truy cập vào các cấu trúc logic. Một hệ thống Oracle bao gồm hai thành phần chính: một Oracle Instance và một Oracle Database. Instance là tập hợp các tiến trình nền và cấu trúc bộ nhớ, trong khi Database là tập hợp các tệp vật lý lưu trữ dữ liệu. Kiến trúc này đảm bảo hiệu suất cao và độ tin cậy. Khi một người dùng kết nối và thực hiện một truy vấn, Oracle Instance sẽ xử lý yêu cầu đó bằng cách sử dụng các vùng bộ nhớ đệm để tăng tốc độ truy cập và các tiến trình nền để thực hiện các tác vụ như ghi dữ liệu vào đĩa và phục hồi hệ thống. Hiểu rõ kiến trúc Oracle là chìa khóa để tối ưu hóa hiệu năng, quản lý tài nguyên và khắc phục sự cố một cách hiệu quả. Các thành phần như System Global Area (SGA), các tiến trình nền, và cách tổ chức lưu trữ vật lý qua Data File, logic qua Tablespace đều phối hợp nhịp nhàng để tạo nên một hệ thống quản lý thông tin toàn diện.

2.1. Cấu trúc bộ nhớ System Global Area SGA và PGA

Cấu trúc bộ nhớ của Oracle là thành phần quan trọng quyết định đến hiệu suất. System Global Area (SGA) là một vùng bộ nhớ chia sẻ, được cấp phát khi Instance khởi động và được sử dụng bởi tất cả các tiến trình. SGA bao gồm nhiều thành phần con: Database Buffer Cache lưu trữ các khối dữ liệu được đọc từ đĩa gần đây nhất; Shared Pool chứa các câu lệnh SQL đã được phân tích và thông tin từ điển dữ liệu; và Redo Log Buffer ghi lại các thay đổi dữ liệu trước khi chúng được ghi vào tệp nhật ký. Bên cạnh SGA, mỗi tiến trình người dùng khi kết nối đến Oracle sẽ được cấp phát một vùng nhớ riêng gọi là Program Global Area (PGA). PGA chứa dữ liệu và thông tin điều khiển riêng cho mỗi tiến trình, ví dụ như vùng nhớ để sắp xếp dữ liệu. Việc quản lý và tinh chỉnh kích thước của SGA và PGA là một trong những nhiệm vụ quan trọng nhất của DBA.

2.2. Các tiến trình nền Background Processes quan trọng

Các tiến trình nền là những chương trình chạy tự động để thực hiện các tác vụ bảo trì và quản lý cho Oracle Database. Mỗi tiến trình có một nhiệm vụ riêng biệt. Database Writer (DBWn) chịu trách nhiệm ghi các khối dữ liệu đã thay đổi từ Database Buffer Cache vào các tệp dữ liệu vật lý. Log Writer (LGWR) ghi các bản ghi thay đổi từ Redo Log Buffer vào các tệp Redo Log. System Monitor (SMON) thực hiện phục hồi sau sự cố khi khởi động và dọn dẹp các phân đoạn tạm thời. Process Monitor (PMON) dọn dẹp tài nguyên khi một tiến trình người dùng thất bại, giải phóng các khóa và bộ nhớ. Cuối cùng, Checkpoint Process (CKPT) cập nhật thông tin trạng thái vào các tệp điều khiển và tệp dữ liệu, đánh dấu một điểm đồng bộ hóa giữa bộ nhớ và đĩa.

2.3. Cấu trúc lưu trữ vật lý và logic Data File Tablespace

Oracle quản lý lưu trữ dữ liệu thông qua hai cấp độ: vật lý và logic. Về mặt vật lý, cơ sở dữ liệu bao gồm ba loại tệp chính. Data File là nơi chứa dữ liệu thực sự của người dùng và ứng dụng. Redo Log File ghi lại tất cả các thay đổi được thực hiện đối với cơ sở dữ liệu, rất quan trọng cho quá trình phục hồi. Control File chứa các thông tin metadata về cấu trúc vật lý của cơ sở dữ liệu. Về mặt logic, đơn vị lưu trữ lớn nhất là Tablespace. Một Tablespace là một vùng chứa logic bao gồm một hoặc nhiều Data File. Bên trong Tablespace, dữ liệu được tổ chức thành các Segment (ví dụ: một bảng là một segment), Segment được tạo thành từ các Extent, và Extent là một tập hợp các Data Block liên tiếp. Data Block là đơn vị lưu trữ nhỏ nhất của Oracle.

III. Top 5 tính năng Oracle giúp tối ưu hiệu suất và bảo mật

Sức mạnh của Hệ quản trị cơ sở dữ liệu Oracle không chỉ nằm ở kiến trúc vững chắc mà còn ở bộ tính năng đa dạng, đáp ứng các yêu cầu khắt khe nhất của doanh nghiệp. Các tính năng này được thiết kế để tối ưu hóa hiệu suất, đảm bảo tính sẵn sàng cao, tăng cường bảo mật và đơn giản hóa công tác quản trị. Oracle cung cấp các cơ chế xử lý đồng thời tinh vi, cho phép hàng ngàn người dùng truy cập và sửa đổi dữ liệu cùng lúc mà không gây xung đột, đồng thời đảm bảo tính nhất quán. Các công cụ quản lý tự động, như Automatic Storage Management (ASM), giúp giảm bớt gánh nặng cho các quản trị viên. Bên cạnh đó, các giải pháp về sao lưu và phục hồi linh hoạt cho phép khôi phục dữ liệu nhanh chóng sau mọi loại sự cố, từ lỗi phần cứng đến sai sót của con người. Khả năng xử lý các loại dữ liệu phong phú, từ dữ liệu quan hệ truyền thống đến XML hay dữ liệu không gian, cũng là một điểm mạnh nổi bật. Bài viết này sẽ tập trung vào các tính năng cốt lõi giúp Oracle duy trì vị thế dẫn đầu trong nhiều năm.

3.1. Tính năng mở rộng và hiệu suất xử lý dữ liệu lớn

Oracle nổi tiếng với khả năng xử lý các tập dữ liệu cực lớn, có thể lên đến hàng trăm terabyte. Để đạt được hiệu suất cao, Oracle sử dụng nhiều kỹ thuật tiên tiến. Phân vùng dữ liệu (Partitioning) cho phép chia nhỏ các bảng và chỉ mục lớn thành các phần nhỏ hơn, dễ quản lý hơn. Điều này giúp cải thiện đáng kể tốc độ truy vấn vì Oracle chỉ cần quét các phân vùng liên quan thay vì toàn bộ bảng. Ngoài ra, nén dữ liệu (Data Compression) giúp giảm yêu cầu về không gian lưu trữ và tăng tốc độ I/O. Cơ chế thực thi song song (Parallel Execution) cho phép chia một tác vụ lớn thành nhiều tác vụ nhỏ hơn và thực hiện chúng đồng thời trên nhiều CPU, rút ngắn thời gian xử lý các truy vấn phức tạp và các hoạt động hàng loạt.

3.2. Cơ chế sao lưu phục hồi Backup Restore toàn diện

Khả năng phục hồi sau sự cố là một trong những yêu cầu quan trọng nhất đối với mọi hệ quản trị cơ sở dữ liệu. Oracle cung cấp một bộ công cụ mạnh mẽ để sao lưu và phục hồi. Quản trị viên có thể thực hiện sao lưu toàn bộ (full backup) hoặc sao lưu một phần (partial backup) cơ sở dữ liệu. Đáng chú ý, các hoạt động sao lưu này có thể được thực hiện trực tuyến (online backup) trong khi cơ sở dữ liệu vẫn đang hoạt động, giảm thiểu thời gian chết của hệ thống. Công cụ Recovery Manager (RMAN) tự động hóa quá trình sao lưu, phục hồi và nhân bản cơ sở dữ liệu. Cùng với các tệp Redo Log, Oracle có thể khôi phục cơ sở dữ liệu về một thời điểm cụ thể trước khi xảy ra lỗi, đảm bảo không mất mát dữ liệu đã được cam kết (committed transactions).

3.3. Giải pháp bảo mật và đảm bảo tính toàn vẹn dữ liệu

Bảo mật là ưu tiên hàng đầu của Oracle. Hệ thống cung cấp cơ chế kiểm soát truy cập đa lớp. Bảo mật hệ thống quản lý việc ai có thể kết nối với cơ sở dữ liệu, trong khi bảo mật dữ liệu kiểm soát quyền truy cập của người dùng trên từng đối tượng cụ thể như bảng, view. Quyền hạn được chia thành hai loại: quyền hệ thống (ví dụ: tạo bảng) và quyền đối tượng (ví dụ: đọc dữ liệu từ một bảng). Để đảm bảo tính toàn vẹn dữ liệu, Oracle sử dụng các ràng buộc toàn vẹn (integrity constraints) như khóa chính, khóa ngoại, và các quy tắc kiểm tra (check constraints) để thực thi các quy tắc kinh doanh. Ngoài ra, kích hoạt cơ sở dữ liệu (database triggers) là các đoạn mã PL/SQL tự động thực thi khi có một sự kiện DML xảy ra, giúp triển khai các logic nghiệp vụ phức tạp và kiểm tra dữ liệu nâng cao.

IV. Hướng dẫn cài đặt Oracle và SQL Developer cho người mới

Việc triển khai Hệ quản trị cơ sở dữ liệu Oracle đòi hỏi một quy trình cài đặt cẩn thận và cấu hình chính xác. Mặc dù được xem là phức tạp, các phiên bản gần đây của Oracle đã đơn giản hóa đáng kể quá trình này thông qua giao diện đồ họa trực quan. Hướng dẫn này sẽ tóm tắt các bước chính để cài đặt Oracle Database 19c, phiên bản phổ biến, trên hệ điều hành Windows. Sau khi cài đặt thành công cơ sở dữ liệu, người dùng cần một công cụ để tương tác, viết mã và quản lý các đối tượng. SQL Developer là một công cụ miễn phí do chính Oracle cung cấp, với đầy đủ tính năng để kết nối, truy vấn và phát triển trên Oracle Database. Phần này cũng sẽ giới thiệu sơ lược về các loại ngôn ngữ lệnh được sử dụng trong Oracle, bao gồm SQL để định nghĩa và thao tác dữ liệu, và PL/SQL để lập trình các logic phức tạp. Việc nắm vững các bước cài đặt và các câu lệnh cơ bản là bước khởi đầu quan trọng để làm việc hiệu quả với Oracle, tạo nền tảng cho việc xây dựng và quản lý các ứng dụng cơ sở dữ liệu mạnh mẽ.

4.1. Quy trình cài đặt Oracle Database 19c trên Windows

Quá trình cài đặt Oracle bắt đầu bằng việc tải về bộ cài đặt từ trang chủ của Oracle. Sau khi giải nén, người dùng chạy tệp setup.exe với quyền quản trị. Trình cài đặt sẽ hướng dẫn qua các bước cấu hình. Các lựa chọn quan trọng bao gồm: chọn "Create and configure a single instance database" cho một máy chủ độc lập, chọn "Server Class" cho môi trường máy chủ điển hình. Người dùng cần khai báo các thông số như Global database name và Oracle system identifier (thường là orcl). Một bước quan trọng là thiết lập mật khẩu quản trị cho các tài khoản hệ thống như SYS và SYSTEM. Trình cài đặt cũng cho phép cấu hình bộ nhớ, bộ ký tự (nên chọn Unicode AL32UTF8) và các tùy chọn phục hồi. Sau khi hoàn tất các bước, trình cài đặt sẽ tự động tạo cơ sở dữ liệu và khởi chạy các dịch vụ cần thiết. Kiểm tra trạng thái các dịch vụ Oracle trong services.msc là bước cuối cùng để xác nhận cài đặt thành công.

4.2. Các câu lệnh SQL cơ bản trong Oracle DDL DML DCL

Ngôn ngữ truy vấn có cấu trúc (SQL) là phương tiện chính để giao tiếp với Oracle Database. SQL được chia thành các nhóm lệnh với chức năng riêng. Ngôn ngữ Định nghĩa Dữ liệu (DDL) được dùng để tạo và quản lý cấu trúc các đối tượng, bao gồm các lệnh như CREATE TABLE, ALTER TABLE (để sửa đổi cấu trúc bảng), và DROP TABLE (để xóa bảng). Ngôn ngữ Thao tác Dữ liệu (DML) được sử dụng để làm việc với dữ liệu bên trong các bảng, với các lệnh quen thuộc là INSERT (thêm dữ liệu), UPDATE (sửa dữ liệu), và DELETE (xóa dữ liệu). Cuối cùng, Ngôn ngữ Điều khiển Dữ liệu (DCL) quản lý quyền truy cập dữ liệu, bao gồm GRANT (để cấp quyền cho người dùng) và REVOKE (để thu hồi quyền). Nắm vững các nhóm lệnh này là yêu cầu cơ bản để quản trị và khai thác dữ liệu trong Oracle.

4.3. Giới thiệu về lập trình PL SQL trong Oracle

PL/SQL (Procedural Language/SQL) là một phần mở rộng của SQL do Oracle phát triển. Nó kết hợp sức mạnh truy vấn dữ liệu của SQL với các cấu trúc lập trình thủ tục như biến, hằng, vòng lặp (FOR, WHILE), và câu lệnh điều kiện (IF-THEN-ELSE). Điều này cho phép các nhà phát triển viết các logic nghiệp vụ phức tạp trực tiếp bên trong cơ sở dữ liệu. Các đơn vị mã PL/SQL phổ biến bao gồm Procedures (thủ tục), Functions (hàm), Triggers (kích hoạt tự động khi có sự kiện), và Packages (gói nhóm các thủ tục và hàm liên quan). Việc sử dụng PL/SQL giúp giảm lưu lượng mạng giữa ứng dụng và cơ sở dữ liệu, đồng thời tăng cường hiệu suất và khả năng tái sử dụng mã.

V. Đánh giá Oracle So sánh hiệu năng với MS SQL MongoDB

Để đánh giá một cách toàn diện về Hệ quản trị cơ sở dữ liệu Oracle, việc so sánh nó với các hệ quản trị cơ sở dữ liệu phổ biến khác là cần thiết. Trong thị trường cơ sở dữ liệu quan hệ, MS SQL Server của Microsoft là đối thủ cạnh tranh trực tiếp và lâu đời. Cả hai đều là những hệ thống mạnh mẽ, hướng đến đối tượng doanh nghiệp, nhưng có những khác biệt cơ bản về hệ điều hành hỗ trợ, chi phí bản quyền và hệ sinh thái công cụ. Mặt khác, sự trỗi dậy của dữ liệu lớn và các ứng dụng web linh hoạt đã đưa MongoDB, một hệ quản trị cơ sở dữ liệu NoSQL hàng đầu, trở thành một lựa chọn thay thế hấp dẫn. Cuộc đối đầu giữa Oracle và MongoDB đại diện cho sự khác biệt giữa hai trường phái: mô hình quan hệ có cấu trúc chặt chẽ và mô hình tài liệu linh hoạt. Báo cáo đồ án IE103 đã thực hiện các so sánh này để cung cấp một góc nhìn đa chiều, giúp người đọc hiểu rõ hơn về điểm mạnh, điểm yếu và các trường hợp sử dụng phù hợp nhất cho từng nền tảng, từ đó khẳng định vị thế của Oracle Database trong môi trường công nghệ đa dạng ngày nay.

5.1. Phân tích ưu và nhược điểm khi so sánh với MS SQL Server

Khi so sánh Oracle DatabaseMS SQL Server, điểm khác biệt lớn nhất là nền tảng hệ điều hành. Oracle có truyền thống hỗ trợ đa nền tảng, chạy tốt trên cả Windows, Linux và các hệ thống Unix khác, mang lại sự linh hoạt cho doanh nghiệp. Trong khi đó, MS SQL Server hoạt động tốt nhất trong hệ sinh thái của Microsoft. Về mặt hiệu năng, Oracle thường được đánh giá cao hơn trong các hệ thống giao dịch trực tuyến (OLTP) quy mô rất lớn và các kho dữ liệu phức tạp. Tuy nhiên, MS SQL Server lại được xem là dễ sử dụng, quản trị và có chi phí bản quyền thường thấp hơn, làm cho nó trở thành lựa chọn hấp dẫn cho các doanh nghiệp vừa và nhỏ. Cả hai đều cung cấp bộ tính năng doanh nghiệp đầy đủ như bảo mật, sao lưu và phục hồi, nhưng cách tiếp cận và hệ sinh thái công cụ đi kèm có sự khác biệt.

5.2. Đối chiếu Oracle và MongoDB CSDL quan hệ vs NoSQL

Cuộc đối chiếu giữa Oracle và MongoDB là sự so sánh giữa hai mô hình dữ liệu khác nhau. Oracle là một RDBMS điển hình, yêu cầu dữ liệu phải tuân theo một lược đồ (schema) được định nghĩa trước. Điều này đảm bảo tính nhất quán và toàn vẹn dữ liệu cao, rất phù hợp cho các ứng dụng tài chính, ngân hàng. Ngược lại, MongoDB là một cơ sở dữ liệu NoSQL dạng tài liệu, lưu trữ dữ liệu dưới dạng các tài liệu JSON linh hoạt mà không cần lược đồ cứng. Điều này cho phép phát triển ứng dụng nhanh hơn và dễ dàng mở rộng theo chiều ngang (horizontal scaling). MongoDB thường được ưa chuộng trong các ứng dụng web hiện đại, phân tích dữ liệu lớn và IoT, nơi cấu trúc dữ liệu thường xuyên thay đổi. Oracle cũng đã bổ sung hỗ trợ cho JSON để cạnh tranh, nhưng cốt lõi vẫn là một hệ thống quan hệ.

5.3. Kết quả thực nghiệm và ứng dụng của Oracle trong đồ án

Trong khuôn khổ đồ án, một cơ sở dữ liệu quản lý bán hàng đã được xây dựng để minh họa các khái niệm. Hệ thống bao gồm các bảng như KHACHHANG, NHANVIEN, SANPHAM, HOADON, và CTHD (Chi Tiết Hóa Đơn). Các mối quan hệ khóa ngoại đã được thiết lập để đảm bảo tính toàn vẹn tham chiếu. Báo cáo đã trình bày các ví dụ cụ thể về việc sử dụng lệnh DDL để tạo bảng, lệnh DML để chèn dữ liệu vào các bảng này. Các câu truy vấn SQL phức tạp hơn, ví dụ như kết hợp nhiều bảng để lấy thông tin chi tiết về một đơn hàng, cũng đã được thực thi. Kết quả thực nghiệm cho thấy Hệ quản trị cơ sở dữ liệu Oracle hoạt động ổn định và hiệu quả trong việc quản lý dữ liệu có cấu trúc, đồng thời các công cụ như SQL Developer cung cấp một môi trường làm việc trực quan và mạnh mẽ cho cả việc phát triển và quản trị.

VI. Kết luận đồ án Oracle IE103 và xu hướng phát triển mới

Báo cáo đồ án môn học Quản lý thông tin IE103 đã hoàn thành mục tiêu đề ra là nghiên cứu sâu về Hệ quản trị cơ sở dữ liệu Oracle. Qua quá trình phân tích, có thể khẳng định Oracle là một hệ thống cực kỳ mạnh mẽ, toàn diện nhưng cũng không kém phần phức tạp. Kiến trúc đa lớp, bộ tính năng phong phú về hiệu suất, bảo mật và khả năng phục hồi đã lý giải tại sao Oracle luôn là lựa chọn hàng đầu cho các ứng dụng doanh nghiệp quy mô lớn và các hệ thống yêu cầu tính sẵn sàng cao. Mặc dù phải đối mặt với sự cạnh tranh từ các hệ quản trị cơ sở dữ liệu quan hệ khác và sự trỗi dậy của NoSQL, Oracle vẫn không ngừng đổi mới để duy trì vị thế của mình. Việc tích hợp các công nghệ mới và hỗ trợ các mô hình dữ liệu hiện đại cho thấy sự thích ứng của Oracle với bối cảnh công nghệ luôn thay đổi. Phần cuối cùng này sẽ tóm tắt lại những kết quả chính đạt được và phác thảo những hướng phát triển tiềm năng trong tương lai của Oracle Database, cho thấy nền tảng này vẫn sẽ tiếp tục đóng một vai trò quan trọng trong thế giới dữ liệu.

6.1. Tóm tắt các kết quả nghiên cứu chính của đề tài

Đồ án đã cung cấp một cái nhìn tổng quan chi tiết về Hệ quản trị cơ sở dữ liệu Oracle, từ lịch sử phát triển đến các phiên bản hiện đại. Cấu trúc bên trong của Oracle đã được phân tích kỹ lưỡng, bao gồm cấu trúc bộ nhớ (SGA) và các tiến trình nền, giúp làm rõ cơ chế hoạt động của hệ thống. Các tính năng nổi bật như phân vùng, nén dữ liệu, sao lưu/phục hồi, và bảo mật đã được trình bày, cho thấy sự phù hợp của Oracle cho môi trường doanh nghiệp. Quy trình cài đặt và các lệnh SQL cơ bản cũng được hướng dẫn, tạo nền tảng thực hành cho người mới bắt đầu. Qua việc so sánh với MS SQL ServerMongoDB, đề tài đã chỉ ra được điểm mạnh của Oracle trong các hệ thống đòi hỏi sự ổn định, toàn vẹn và hiệu năng xử lý giao dịch cao, đồng thời cũng nhận diện được những thách thức từ các đối thủ.

6.2. Hướng phát triển Tích hợp Oracle với Big Data và IoT

Để bắt kịp xu hướng công nghệ, Oracle đang tích cực mở rộng khả năng của mình. Hướng phát triển trong tương lai không chỉ dừng lại ở việc cải thiện hiệu năng của cơ sở dữ liệu quan hệ truyền thống. Oracle đang đầu tư mạnh vào việc tích hợp với các hệ sinh thái Big Data, cho phép người dùng truy vấn dữ liệu từ Hadoop hoặc các nguồn dữ liệu lớn khác trực tiếp thông qua SQL. Bên cạnh đó, các tính năng hỗ trợ Internet of Things (IoT)Machine Learning ngay trong cơ sở dữ liệu (in-database machine learning) đang được phát triển. Khả năng lưu trữ và xử lý dữ liệu dạng tài liệu JSON một cách tự nhiên (native) cũng là một bước đi chiến lược để cạnh tranh với các cơ sở dữ liệu NoSQL. Những nỗ lực này cho thấy Oracle đang chuyển mình để trở thành một nền tảng quản lý dữ liệu toàn diện, sẵn sàng cho các thách thức của kỷ nguyên số.

27/09/2025

Trích đoạn nội dung tài liệu

Đặt vấn đề Oracle được xem là hệ quản trị cơ sở dữ liệu phổ biến nhất thế giới. Oracle luôn dẫn đầu trong nhiều năm từ khi ra đời năm 1979. Điều có thể nói về Oracle là “hệ thống phức tạp nhưng mạnh mẽ”. Tuy nhiên, vì sao Oracle lại phổ biến đến như vậy, trong bài báo cáo sẽ làm rõ câu trả lời cho câu hỏi này.

Mục đích Có cái nhìn tổng quan về hệ quản trị cơ sở dữ liệu Oracle. Nghiên cứu cấu trúc, đặc điểm và tính năng của Oracle. Các quy trình thực hiện liên quan. Ứng dụng của Oracle, các kết quả chạy thực nghiệm, so sánh và đánh giá với các hệ quản trị cơ sở dữ liệu khác.

Nhằm đưa ra các ưu, nhược điểm và giải pháp cho đề tài. 13 | P a g e IE103 – Quản lý Thông tin Chương 2: Các đặc trưng của hệ quản trị cơ sở dữ liệu Oracle 2. Đặc trưng 2. Khả năng lưu trữ Oracle có khả năng đáng kể về nén và phân vùng dữ liệu mới đối với khả năng quản lý lưu trữ và vòng đời dữ liệu với chi phí hiệu qủa hơn.

Ngoài ra, Oracle còn tự động hóa nhiều hoạt động phân vùng dữ liệu thủ công và mở rộng phương pháp phân vùng theo khoảng giá trị, hash và liệt kê phân vùng hiện có để có khoảng đệm, tham chiếu và phân vùng ảo theo cột. Thêm vào đó, Oracle cung cấp một bộ hoàn chỉnh các lựa chọn phân vùng hỗn hợp cho phép quản lý lưu trữ được thực hiện theo các qui định kinh doanh. Xây dựng trên các khả năng nén dữ liệu đã có từ lâu, Oracle đã đưa đến khả năng nén dữ liệu tiên tiến cho cả dữ liệu có cấu trúc và không có cấu trúc được xử lý trong quy trình giao dịch, lưu trữ dữ liệu và các môi trường quản trị nội dung. Tỷ lệ nén tất cả các dữ liệu lớn từ 2 - 3 lần hoặc cao hơn có thể đạt được với khả năng nén tiên tiến mới.

Đồng hành và nhất quán Đồng hành (Concurrency): Vấn đề cần điều khiển tính ra vào, với các người dùng khi truy xuất cùng một đơn vị dữ liệu, sao cho tại cùng một thời điểm cho giản ước thời gian chờ là tối thiểu đến mức gần bằng 0. Nhất quán:  Đảm bảo dữ liệu nhất quán trong thời gian đọc.  Đảm bảo người đọc không chờ người viết và ngược lại.  Đảm bảo người viết phải chờ người viết khác nếu cùng cập nhật đến một đơn vị dữ liệu.

Bảo mật Đảm bảo tính an toàn nhờ các kiểm soát:  Quyền truy cập vào cơ sở dữ liệu.  Quyền trên cơ sở dữ liệu nào.  Quyền trên đối tượng nào trong cơ sở dữ liệu, bao gồm:  Quyền hệ thống: Cho phép tác động đến hệ thống là quyền rất mạnh.  Quyền đối tượng: Cho phép tác động lên một đối tượng cụ thể.

14 | P a g e IE103 – Quản lý Thông tin 2. Backup và Restore dữ liệu Trong khi Backup, cơ sở dữ liệu vẫn có thể hoạt động, cơ chế backup cần uyển chuyển. Cần backup với những lý do sau:  Xóa (Delete) nhầm dữ liệu.  Phát biểu nhầm các lệnh: Insert, Update.

 Mất mát do trộm cắp. Một cách khắc phục là tạo file backup gồm 2 dạng:  Full backup: Toàn bộ file tạo cơ sở dữ liệu.  Partial backup: Chỉ backup một phần file dữ liệu. Restore: Là quá trình khôi phục lại cơ sở dữ liệu ban đầu từ cơ sở dữ liệu được backup.

Thứ tự Restore phụ thuộc vào:  Kiểu backup.  Thời gian biểu (schedule). Cơ sở dữ liệu phân tán Dùng nhiều bộ xử lý chia tiến trình thành các tập công việc có liên quan, phân chia công việc cho các bộ xử lý khác cùng hợp tác làm việc. Oracle hỗ trợ cho công việc xử lý phân tán bằng kiến trúc Client/Server.

Client tập trung cho công việc ra yêu cầu trình bày dữ liệu. Server tiếp nhận các yêu cầu (Request) từ Client, xử lý và trả về kết quả cho Client. Cơ sở dữ liệu phân tán là một mạng cơ sở dữ liệu quản lý bởi nhiều server cơ sở dữ liệu, xuất hiện tới người dùng như là một cơ sở dữ liệu duy nhất. Dữ liệu trong cơ sở dữ liệu phân tán có thể truy xuất bổ sung đồng thời tại một thời điểm.

Khả năng xử lý dữ liệu Khả năng xử lý dữ liệu rất lớn, có thể lên đến hàng trăm terabyte mà vẫn đảm bảo tốc độ xử lý dữ liệu rất cao. Kiến trúc của Oracle Giống như các công nghệ cơ sở dữ liệu quan hệ khác, Oracle Database sử dụng cấu trúc bảng theo hàng và cột để kết nối các phần tử dữ liệu có liên quan trong các bảng khác nhau; kết quả là người dùng không phải lưu trữ cùng một dữ liệu trong nhiều bảng 15 | P a g e IE103 – Quản lý Thông tin để xử lý. Mô hình quan hệ cũng cung cấp một loạt các ràng buộc về tính toàn vẹn nhằm duy trì độ chính xác của dữ liệu; các thủ tục kiểm tra này là một phần trong việc tuân thủ đầy đủ các nguyên tắc về nguyên tử, tính thống nhất, độc lập và độ bền dữ liệu - viết ngắn gọn là ACID - được thiết kế để đảm bảo rằng độ tin cậy trong xử lý các giao dịch cơ sở dữ liệu. Cấu trúc của Oracle gồm 3 lớp trong mô hình kiến trúc bao gồm: Hình Các đặc trưng của hệ quản trị cơ sở dữ liệu Oracle.1: Cấu trúc của Oracle Storage (Lớp lưu trữ): Storage chứa các tập tin dữ liệu mà đã được lưu trữ ở các khu vực đĩa cứng của các máy chủ (hoặc một máy chủ).

Một số loại tập tin có trong OracleDB bao gồm: □ Init file (tập tin khởi đầu): chứa thông tin tên, vị trí, tham số của tập tin. □ Control file (tập tin điều khiển): chứa ngày - giờ, vị trí tạo CSDL. □ Database file (tập tin cơ sở dữ liệu): chứa dữ liệu thật sự của CSDL. □ Redo log file (tập tin lặp lại các thao tác): chứa những hành động như thêm, sửa, hủy của người lập trình.

Background processes (Lớp tiến trình nền): 16 | P a g e IE103 – Quản lý Thông tin Nhiệm vụ của lớp xử lý bên dưới là đảm bảo sự trùng khớp giữa chi tiết hiển thị trong bộ nhớ với Oracle Database. Lớp này chủ yếu được chia ra làm hai phần xử lý đó là: □ Database writer: đọc và ghi những dòng dữ liệu có sự thay đổi khi dữ liệu này trên vùng đệm bị đầy và giải phóng nó. □ Log writer: Những thông tin xảy ra trong khi thực thi giao tác thì sẽ được ghi nhận xuống tập tin log giúp đảm bảo an toàn hơn cho dữ liệu. Memory (Lớp bộ nhớ): Memory hay System Global Area giúp tăng tốc độ xử lý của Oracle bằng việc lưu trữ dữ liệu trên nhiều thành phần khác nhau.

Các vùng đệm tiêu biểu bao gồm: □ Dictionary Cache: Lưu trữ thông tin chung thường dùng. □ Database buffer cache: Vùng đệm lưu trữ cơ sở dữ liệu. □ SQL Area: vùng đệm lưu trữ lệnh SQL. Một phiên bản cơ sở dữ liệu Oracle được xây dựng dựa trên một tập hợp các bộ nhớ cache, được gọi là hệ thống toàn cầu (SGA), có chứa các bộ nhớ chia sẻ; phiên bản cũng bao gồm các tiến trình đang chạy ngầm để quản lý các chức năng I/O và giám sát các hoạt động của cơ sở dữ liệu với mục tiêu tối ưu hóa hiệu suất và độ tin cậy.

Các process trên máy khách riêng biệt chạy mã ứng dụng cho người dùng sẽ được kết nối với một phiên bản dữ liệu, trong khi các process máy chủ sẽ chịu trách nhiệm quản lý sự tương tác giữa các process máy khách và cơ sở dữ liệu. Mỗi process máy chủ sẽ được gán một vùng bộ nhớ riêng được gọi là khu vực chương trình chung, tách biệt với SGA. Oracle Instance Oracle instance bao gồm một cấu trúc bộ nhớ System Global Area (SGA) và các Background processes (tiến trình nền) được sử dụng để quản trị cơ sở dữ liệu. 17 | P a g e IE103 – Quản lý Thông tin Oracle instance được xác định qua tham số môi trường ORACLE_SID của hệ điều hành.

Hình Các đặc trưng của hệ quản trị cơ sở dữ liệu Oracle. System Global Area Oracle sử dụng cấu trúc vùng nhớ để lưu trữ thông tin trong hệ thống trong khi đang thực thi, như là mã nguồn của một chương trình đang chạy, thông tin về kết nối của các phiên làm việc, lưu vết dữ liệu vật lý trong quá trình xử lý,… Cấu trúc vùng nhớ của Oracle bao gồm SGA và PGA. SGA (System Global Area) là một thành phần cơ bản trong Oracle Instance và được cấp phát khi Instance khởi động. Thông tin lưu trữ trong SGA có thể được sử dụng bởi tất cả các Server Process và Background Process.

PGA (Program Global Area) được cấp phát cho User Process kết nối đến Oracle Server. Hình Các đặc trưng của hệ quản trị cơ sở dữ liệu Oracle.3: System Global Area SGA được cấp phát tại vùng nhớ ảo của máy tính đang chạy Oracle. SGA gồm có một số cấu trúc vùng nhớ dùng để chứa dữ liệu và quản lý các thông tin về Oracle Instance. SGA là một vùng nhớ chia sẻ, thông tin về Database có thể được truy xuất bởi các tiến trình đang làm việc trên Database đó.

Nếu có nhiều người dùng kết nối với một Instance thì SGA của Instance sẽ chia sẻ cho những người dùng đó. SGA bao gồm một vài cấu trúc bộ nhớ chính: □ Shared pool: Là một phần của SGA lưu các cấu trúc bộ nhớ chia sẻ. □ Database buffer cache: Lưu trữ các dữ liệu được sử dụng gần nhất. 18 | P a g e IE103 – Quản lý Thông tin □ Redo log buffer: Được sử dụng cho việc dò tìm lại các thay đổi trong cơ sở dữ liệu và được thực hiện bởi các background process.

Để chi tiết hơn, ta sẽ xem xét cụ thể từng thành phần. Share Pool Shared pool là một phần trong SGA và được sử dụng khi thực hiện phân tích câu lệnh (parse phase). Kích thước của Shared pool được xác định bởi tham số SHARED_POOL_SIZE có trong parameter file (file tham số). gồm có: Library cache và Data dictionary cache.

Hình Các đặc trưng của hệ quản trị cơ sở dữ liệu Oracle.4: Shared Pool Library Cache: Lưu trữ thông tin về các câu lệnh SQL được sử dụng gần nhất bao gồm: □ Nội dung của câu lệnh dạng text (văn bản). □ Parse tree (cây phân tích) được xây dựng tuỳ thuộc vào câu lệnh. □ Execution plan (sơ đồ thực hiện lệnh) gồm các bước thực hiện và tối ưu lệnh.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ