Khóa học quản trị mạng MCSA 2016

Check in khi đăng ký học tại PNH, giảm thêm 5% học phí

Khóa học MCITP-SA

Khóa học New CNAM 2016

Khóa học CCNP

Khóa học CEH

Quản trị hệ thống Oracle OCA 12c
Ms SQL Server và Oracle, giống và khác nhau
Ms SQL Server và Oracle có những điểm giống và khác nhau ra sao?

MS SQL Server và Oracle là 2 trong số các hệ thống quản lý cơ sở dữ liệu quan hệ (Relational Database Management Systems - RDBMS) hiệu quả. Vậy MS SQL Server và Oracle và gì, nên dùng cái nào? Bài viết dưới đây sẽ giúp bạn so sánh MS SQL Server và Oracle để đưa ra lựa chọn đúng đắn nhất cho mình.

Những tiến bộ của công nghệ đáp ứng được phần nào nhu cầu sử dụng các giao dịch trực tuyến cho người dùng. Cụ thể là mua sắm trực tuyến hoặc bất kỳ hình thức thanh toán hóa đơn nào hầu hết đều có thể thực hiện thông qua internet, dần dà, người dùng bắt đầu sử dụng cơ sở dữ liệu quan hệ (RDB) để cộng tác bằng cách sử dụng nhiều dữ liệu hơn mà không phải sắp xếp lại dữ liệu cho các mục đích khác nhau.

Để quản lý cơ sở dữ liệu quan hệ (RDB), các chuyên gia cơ sở dữ liệu đã tạo ra một giải pháp quản lý dữ liệu độc quyền cho các các sở dữ liệu quan hệ này, giải pháp này được gọi là hệ thống quản lý cơ sở dữ liệu quan hệ (Relational Database Management Systems - RDBMS).

Một số ví dụ về hệ thống quản lý cơ sở dữ liệu quan hệ - RDBMS như MS Access, Oracle, IBM DB2, MS SQL Server, Sybase và My SQL. Đó là một trong những RDBMS tốt nhất, đáp ứng nhu cầu của người dùng.

Ms SQL Server và Oracle là gì? nên dùng cái nào?

Cú pháp và ngôn ngữ truy vấn

Cả MS SQL Server và Oracle sử dụng ngôn ngữ truy vấn mang tính cấu trúc (Structured Query Language) để lấy dữ liệu từ các cơ sở dữ liệu tương ứng. MS SQL Server sử dụng T-SQL, nghĩa là Transact-SQL và Oracle sử dụng PL/SQL, tức là Procedural SQL.

Công Ty

MS SQL Server là sản phẩm của Microsoft Corporation và được biết đến với dịch vụ khách hàng thông qua các diễn đàn như MSDN và Connect Website, nơi người dùng có thể tiếp cận team dịch vụ khách hàng dễ dàng khi gặp phải bất kỳ vấn đề nào.

Ngay cả khi người dùng bị mắc kẹt, họ có thể dễ dàng liên hệ với kỹ thuật viên để được giúp đỡ. Ngược lại đội ngũ hỗ trợ khách hàng của Oracle không có nhiều kinh nghiệm như MS SQL Server. Ngoài ra Oracle có rất ít tài liệu dành cho người dùng muốn tự học chương trình, còn MS SQL Server thì khá nhiều tài liệu có sẵn.

Tính phức tạp của cú pháp

Các cú pháp được sử dụng trong MS SQL Server tương đối đơn giản và dễ sử dụng. MS SQL Server cho phép đóng gói procedure, đến mức độ nào đó.

Với Oracle, người dùng có thể tạo các gói bằng cách nhóm các procedure. Các cú pháp phức tạp hơn một chút nhưng cung cấp kết quả hiệu quả hơn.

Lỗi xử lý

MS SQL Server cung cấp các thông báo lỗi bằng một định dạng được xác định trước. Thông báo lỗi của Oracle được hiển thị rõ ràng hơn và xử lý dễ dàng hơn. Nhưng người dùng cần phải cẩn thận trong việc xác định các deadlock vì cả MS SQL Server và Oracle đều gây rắc rối cho người dùng trong trường hợp như vậy.

Hồ Sơ

MS SQL Server khóa toàn bộ khối hồ sơ được sử dụng trong một giao dịch và thực thi từng lệnh một. Vì hồ sơ bị chặn và không cho phép người khác sử dụng, MS SQL Server có thể tự do sửa đổi nó trước khi nhận được lệnh Commit. Oracle không bao giờ sửa đổi dữ liệu cho đến khi nhận được lệnh Commit từ DBA, trong suốt một giao dịch.

Roll Back

Trong một giao dịch trong MS SQL Server không được phép roll back, nhưng trong Oracle thì được phép.

Các Giao Dịch Không Thành Công

Trong trường hợp giao dịch thất bại, MS SQL Server phải đảo ngược tất cả các hoạt động đã được thực hiện cho giao dịch đó. Điều này là do MS SQL Server đã thực hiện những thay đổi bằng cách chặn hồ sơ.

Ngược lại Oracle không phải đảo ngược như vì tất cả những thay đổi đã được thực hiện trên bản sao chứ không phải trên bản gốc.

Truy Cập Đồng Thời Và Thời Gian Chờ

Trên MS SQL Server, khi đang thực hiện quá trình ghi không được phép đọc, và điều này dẫn đến tình trạng là thời gian chờ lâu.

Trong khi quá trình ghi đang diễn ra trên Oracle, nó cũng cho phép người dùng đọc bản sao cũ trước khi cập nhật. Do đó, Oracle có thời gian chờ ngắn hơn nhưng bạn không được phép ghi.

Hỗ Trợ Nền Tảng

MS SQL Server chỉ có thể chạy trên một nền tảng duy nhất là Windows. Do thiếu sự hỗ trợ nền tảng, nên MS SQL Server không phù hợp với các doanh nghiệp hoạt động trên toàn thế giới sử dụng các hệ điều hành khác nhau.

Oracle có thể chạy trên nhiều nền tảng khác nhau như UNIX, Windows, MVS và VAX-VMS. Nó cung cấp hỗ trợ nền tảng tốt, do đó, Oracle có thể được sử dụng trong các doanh nghiệp sử dụng nhiều hệ điều hành khác nhau.

Khóa Kích Thước

Khóa trang là một khái niệm trong MS SQL Server được sử dụng khi nó cần nhiều chuỗi của một trang được chỉnh sửa. MS SQL Server khóa các trang có cùng kích thước cho mỗi sửa đổi, nhưng các chuỗi chưa được chỉnh sửa cũng bị khóa theo mà không có lý do chính đáng. Vì vậy, người dùng khác phải đợi cho quá trình chỉnh sửa kết thúc. Ngược lại Oracle không khóa các trang nhưng thay vào đó nó tạo ra một bản sao trong quá trình chỉnh sửa, sửa đổi nội dung. Do đó, người dùng khác không cần phải chờ cho đến khi quá trình chỉnh sửa nội dung hoàn tất.

Phân Bố Bộ Nhớ Để Phân Loại

MS SQL Server sử dụng global memory allocation và không thể thay đổi bởi DBA khi phân loại hoặc bộ nhớ đệm cho hiệu suất tốt hơn. Với thiết lập này, những lỗi của người dùng có thể tránh được. Oracle sử dụng dynamic memory allocation, do đó hiệu suất được cải thiện, nhưng tỉ lệ xuất hiện lỗi của người dùng là cao khi bạn “xâm nhập” vào DB để cải thiện hiệu suất của nó.

Chỉ Mục

MS SGL Server có rất ít tùy chọn để phân loại các bảng với các chỉ mục. Lý do là bởi vì MS SGL Server thiếu Bitmap, các chỉ số dựa trên các chức năng, và key đảo ngược (reverse key). Oracle sử dụng Bitmap, các chỉ mục dựa trên các chức năng và các key đảo ngược, cung cấp các tùy chọn tốt hơn và hiệu suất tốt hơn.

Bảng Phân Vùng (Table Partition)

MS SQL Server không cho phép phân chia các bảng lớn, điều này khiến cho việc quản lý dữ liệu trở nên khó khăn. Tuy nhiên, khi nói đến tính đơn giản, MS SGL Server đứng ở vị trí đầu tiên. Oracle giúp cho việc quản lý dữ liệu dễ dàng hơn bằng cách cho phép phân vùng các bảng lớn.

Tối Ưu Hoá Truy Vấn

Tối ưu hóa các truy vấn trong MS SQL Server bị thiếu, nhưng trong Oracle thì có thể.

Triggers

Cả hai đều cho phép Triggers, nhưng trong MS SQL Server chủ yếu sử dụng After Triggers. Trong Oracle, cả Before Triggers và After Triggers được sử dụng như nhau. Việc sử dụng Triggers được yêu cầu trong các môi trường thời gian thực và sự hỗ trợ này để các cơ sở dữ liệu thích hợp hơn.

Liên Kết Các File Bên Ngoài

MS SQL Server sử dụng các máy chủ liên kết để đọc hoặc ghi các file bên ngoài. Ngược lại, Oracle sử dụng Java để làm điều đó.

Cả MS SQL Server và Oracle đều có một tùy chọn để liên kết các file như thế, chỉ có điều là cách tiếp cận khác nhau.

Giao Diện

Giao diện đơn giản và thân thiện với người dùng là tính năng tuyệt vời của MS SQL Server. Nó tự động tạo ra các dữ liệu thống kê và tự chỉnh. Ngoài ra, với nguồn dữ liệu có sẵn lớn, người dùng có thể dễ dàng tìm hiểu và tự học MS SQL Server. Ngược lại giao diện người dùng của Oracle phức tạp hơn một chút.

Sử Dụng Tốt Nhất

Khi so sánh MS SQL Server với Oracle: MS SQL Server là lựa chọn tốt nhất cho các cơ sở dữ liệu nhỏ hơn, bởi nó sẽ tốn rất nhiều thời gian cho các cơ sở dữ liệu có kích thước lớn hơn. Nếu bạn có nhiều thời gian và có thể chờ đợi được thì có thể lựa chọn MS SQL Server. Nếu không có thể lựa chọn Oracle vì nó hỗ trợ cơ sở dữ liệu lớn hơn.

BẢNG SO SÁNH MS SQL SERVER VÀ ORACLE

MS SQL Server

Oracle

Sử dụng T-SQL

Sử dụng PL/SQL

Thuộc Microsoft Corporation

Thuộc Oracle Corporation

Cú pháp đơn giản và dễ hiểu

Cú pháp phức tạp hơn một chút

Hiển thị thông báo lỗi ở một định dạng xác định trước

Hiển thị thông báo lỗi rõ ràng hơn

Lỗi giao dịch yêu cầu dữ liệu được sửa đổi trở lại bản gốc trước khi thực hiện quá trình ghi

Quá trình xử lý đơn giản hơn nhiều vì các thay đổi được thực hiện trên một bản sao

Các giá trị thay đổi trước khi nhận lệnh Commit

Các giá trị không đổi trước khi nhận lệnh Commit

Sử dụng tính năng chặn trang và không cho phép đọc trong quá trình chặn trang

Sử dụng bản sao của hồ sơ trong quá trình chỉnh sửa và cho phép đọc dữ liệu gốc trong quá trình chỉnh sửa

Roll Back không được cho phép trong một giao dịch

Roll Back được phép

Hỗ trợ khách hàng tốt

Hỗ trợ khách hàng tốt nhưng kỹ thuật viên không có nhiều kinh nghiệm

Chỉ chạy trên nền tảng Windows 

Chạy trên nhiều nền tảng khác nhau

Khóa các trang cùng kích thước

Kích thước khóa thay đổi theo nhu cầu

Sử dụng Global memory allocation và ít xâm nhập DBA. Do đó tỉ lệ lỗi người dùng thấp

Sử dụng Dynamic memory allocation và xâm nhập DBA nhiều hơn. Do đó tỉ lệ lỗi người dùng cao hơn

Không sử dụng Bitmap, các chỉ số dựa trên chức năng và key reverse 

Sử dụng Bitmap, các chỉ số dựa trên chức năng và key reverse

Tối ưu hóa truy vấn bị thiếu

Sử dụng tối ưu hóa truy vấn Star

Cho phép triggers và sử dụng After triggers

Sử dụng cả After và Before triggers

Sử dụng liên kết máy chủ để đọc và ghi các file bên ngoài

Sử dụng Java

Giao diện người dùng đơn giản

Giao diện phức tạp hơn

Phù hợp với các dữ liệu nhỏ

Phù hợp với các dữ liệu lớn

 

Học Oracle OCA được gì?

Những khóa học đào tạo Oracle OCA sẽ giúp học viên tiếp cận với những khái niệm và thuật ngữ của CSDL quan hệ, cung cấp các kỹ năng giúp cho học viên có thể truy vấn dữ liệu, thay đổi dữ liệu và tạo các đối tượng trong CSDL.

Nội dung chính của các khóa học đào tạo Oracle này nhằm trang bị cho học viên có được những kiến thức sâu sắc về cấu trúc và tổ chức dữ liệu trong Oracle Database, những phương pháp quản lý hiệu năng hiệu quả, các biện pháp bảo mật của CSDL, các chiến lược sao lưu và khôi phục khi gặp sự cố.

Qua những khóa học đào tạo Oracle này, học viên có thể vận hành một hệ thống Oracle Database y hệt như thực tế. Trong quá trình học, học viên sẽ được học cài đặt và vận hành Oracle database, các khái niệm về kiến trúc Oracle, các thành phần cấu thành Oracle Database, cũng như sự tương tác giữa chúng. Học việc sẽ thực hành các kỹ năng quản trị như: tối ưu hiệu năng, giám sát hệ thống, bảo mật Oracle dữ liệu, sao lưu dự phòng, quản lý tài khoản người dùng.

Các tin mới hơn
Các tin đã đưa