Tại sao bạn sử dụng cơ sở dữ liệu Oracle? [đóng cửa]


97

Tôi tò mò vì lý do kỹ thuật tại sao bạn chọn cơ sở dữ liệu Oracle thay vì các phiên bản mới nhất của:
1) Microsoft SQL Server
2) MySQL
3) PostgreSQL

Những tính năng hoặc chức năng nào phù hợp với chi phí bổ sung. Tôi quan tâm đến các lập luận kỹ thuật, không phải một cuộc chiến tôn giáo. Một người bạn đã hỏi tôi điều này và tôi đã luôn sử dụng một trong 3 cách tôi đã liệt kê. Tôi không biết đủ về Cơ sở dữ liệu Oracle để đưa ra ý kiến.

Cảm ơn.

Câu trả lời:


48

Dường như không ai nói về chi phí dành cho các nhà phát triển thời gian làm việc với Oracle. Hầu hết các nhà phát triển biết bất kỳ db nào khác đều ghét Oracle, những người không cho rằng tất cả mã DB và / hoặc các công cụ ORM đều khó sử dụng.

Nếu tôi bắt đầu một doanh nghiệp mà tôi tin rằng sẽ mở rộng quy mô đến tỷ lệ của Amazon, tôi có thể xem xét các giải pháp NoSQL, nếu không, tôi sẽ chọn PostgreSQL, SQL Server (hoặc thậm chí là Sybase bây giờ) thay vì Oracle. Tôi nói rằng điều này đã làm việc (với tư cách là một nhà phát triển) với Oracle trong 2 năm - thật tồi tệ khi làm việc với!


3
tôi không đồng ý! Oracle chắc chắn là một trong những triển khai tốt nhất của RDBMS. Nó quản lý bộ nhớ rất hiệu quả và có thể xử lý các hoạt động JOIN phức tạp, dễ dàng làm tê liệt MySQL và MsSQL. Oracle có một Kiến trúc tuyệt vời, nó làm cho nó vững chắc bởi vì nó rất dễ dàng để tổ chức dữ liệu các ứng dụng khác nhau rất tốt. Tôi nghĩ điểm cộng tốt nhất cho tôi là SQL Engine mà Oracle sở hữu, nó rất tiên tiến, trở thành cơ sở dữ liệu duy nhất để vận hành một kho dữ liệu! Việc chạy các truy vấn phức tạp trên Oracle thật dễ dàng, các tính năng khác như Materialized Views, PL / SQL, v.v. làm cho Oracle có giá trị đồng tiền.
Muzaaya Joshua

7
Tôi cũng đồng ý - đã làm việc với cả Oracle 11gR2 và SQL Server 2008 R2 trong vài năm qua, thật nực cười khi tôi gặp phải mô hình bảo mật bị hỏng của Oracle, các công cụ điều chỉnh hiệu suất không trực quan và trình tối ưu hóa phức tạp. Bất kỳ khoản tiết kiệm nào bạn nhận được bằng cách bỏ qua giấy phép MS Win Server sẽ ngay lập tức bị tiêu hao bởi năng suất bị mất.
engil

3
Là người dùng chính của SQL Server và đã phát triển cơ sở dữ liệu sử dụng Oracle: Oracle là một khó khăn trong việc sử dụng * se. Giống như @Jasmine đã đề cập, nó rất hạn chế những gì bạn có thể làm. Tôi đặc biệt ghét cách hoạt động của các biến và thực tế là bạn phải tạo trình kích hoạt và trình tự cho các ID tự động tăng dần. SQL Server là định nghĩa về cách một cơ sở dữ liệu sẽ hoạt động. Heck, thậm chí MySQL còn tốt hơn Oracle. Tất nhiên cả hai cơ sở dữ liệu đều có những hạn chế của nó, nhưng không là gì so với những gì Oracle có.
RoyalSwish

4
Hơn nữa, PLSQL rất phức tạp và khó chịu.
RoyalSwish

1
Oracle đã hạn chế hỗ trợ sharding, hỗ trợ mở rộng hạn chế, các tính năng quản trị hạn chế, trợ giúp hỗ trợ hạn chế, hỗ trợ phân cụm có phần hạn chế (không vận chuyển nhật ký tổng thể) và rất nhiều khóa nhà cung cấp. Họ hiện đang cố gắng bắt kịp, nhưng tôi chưa bao giờ thấy nhiều lỗi như vậy. Tôi đã làm việc với một số bản phát hành alpha, bản beta và các hệ thống được tuyên bố là không phù hợp và không ổn định. Tôi vẫn chưa bao giờ thấy nhiều lỗi rõ ràng mà lẽ ra phải rõ ràng trước khi phát hành hoặc đôi khi thậm chí trước khi biên dịch.
jbo5112

32

Chỉ có Oracle và SQLServer của Microsoft là mã nguồn đóng, và khi có sự cố xảy ra và bạn gặp vấn đề, câu trả lời chỉ là một cuộc điện thoại (và tiền mặt nếu có). Dù sao thì MySQL và PostGre cũng có một số dịch vụ tư vấn doanh nghiệp nhưng cuối cùng thì những nhà tư vấn này không thực sự có uy tín đối với sản phẩm, vì sản phẩm thuộc về mọi người. Điều này thật tuyệt vì bạn có thể vào và sửa mã nếu bạn giỏi C và lập trình cấp độ tương đối thấp, nhưng nếu bạn không tìm ra giải pháp có thể trở thành một cuộc rượt đuổi ngỗng hoang.

Hiện tại vì không phải ai cũng đủ kỹ năng và những doanh nghiệp có tiền thích bảo mật (theo nghĩa kinh doanh) của cơ sở dữ liệu nguồn đóng, đó là lý do tại sao các giải pháp này vẫn chưa hết kinh doanh, bên cạnh thực tế là việc triển khai của chúng rất vững chắc. và đáng đồng tiền nếu bạn có nó.

Ok bây giờ cuối cùng sự khác biệt quan trọng nhất là giữa SQLServer và Oracle và sự khác biệt đó là hệ điều hành, hầu hết mọi người sử dụng Windows sẽ gắn bó với, bạn đoán nó, SQLServer, nhưng nếu bạn chạy trên Unix Oracle là giải pháp mã nguồn đóng của bạn. Dù sao thì tôi cũng sử dụng Oracle trên Solaris, nhưng nếu mục tiêu của chúng tôi là Windows, tôi có thể sẽ sử dụng SQLServer vì cả hai sản phẩm đều rất vững chắc, nhưng tôi tin tưởng Microsoft có một số thủ thuật đặc biệt để có được hiệu suất tốt nhất trên windows.


6
+1. Câu trả lời tốt. Tôi luôn làm việc với phương châm "Tôi thích nhất giống, nhưng miễn phí là rất tuyệt." Tôi luôn cố gắng cân bằng khi lựa chọn giải pháp. Đối với công việc hàng ngày của tôi, tôi sử dụng SQL Server. Trên MySQL nội dung của riêng tôi ngay bây giờ.
BuddyJoe

3

Câu hỏi thực sự là, loại ứng dụng nào sẽ được sử dụng để sử dụng RDMS. Bạn chắc chắn không cần oracle cho blog wordpress hoặc bản sao twitter của mình. Nhưng nếu bạn muốn thực hiện một số thông tin kinh doanh nặng, thì Oracle có thể có một số tính năng có thể giúp thực hiện điều đó hiệu quả hơn những tính năng khác.

Máy chủ Ms sql cũng rất tốt, nó có rất nhiều tính năng. Nếu bạn đang sử dụng Linux và bạn cần một cơ sở dữ liệu với các tính năng như ms sql cung cấp, thì oracle sẽ là một lựa chọn tốt.


3

Chỉ để kể tên một vài:

  • Oracle Real Application Cluster - cung cấp các tính năng phân nhóm nâng cao
  • Oracle Data Guard - nói ngắn gọn là cung cấp các tính năng dự phòng vật lý và logic.
  • Oracle Exadata - thực hiện lưu trữ nhận biết cơ sở dữ liệu (có thể thực hiện lọc vị từ, lọc chiếu cột, xử lý nối, đẩy nhanh việc tạo vùng bảng). Giải pháp đi kèm với máy chủ HP, bảo hành 24/7 đầy đủ và những điều tốt đẹp khác. Nó khá tốt cho các ứng dụng có tải dữ liệu chuyên sâu (ví dụ: nhờ tạo vùng bảng độc lập).
  • Ảo hóa Oracle

Và tất nhiên là điều kỳ diệu của thương hiệu;)

Và khi nói đến việc chọn RDBMS? Thông thường sự lựa chọn là khá rõ ràng - Oracle hoặc phần còn lại của thế giới. Sau đó, bạn có thể thu hẹp sự lựa chọn bằng cách:

  • nền tảng (chỉ dành cho cửa sổ hoặc không)
  • trọng lượng (sqlite, MySQL, PostgreSQL, ...)
  • ngân sách (chi phí giấy phép ban đầu, chi phí bảo trì + hỗ trợ)
  • quan điểm tiến hóa, ví dụ:
    • Oracle Express -> Oracle
    • SQL Server Express -> MSSQL
  • quan điểm kinh doanh - "sản phẩm an toàn, nổi tiếng" hoặc sản phẩm mã nguồn mở (ghi nhớ trích dẫn xung quanh cụm từ đầu tiên). Bài khác có xu hướng nhìn sâu hơn vào khía cạnh này.

14
Sẽ rất tuyệt nếu bạn có thể thêm một chút về những tính năng này làm gì ... đối với những người trong chúng ta không biết, nó chỉ nghe giống như bingo từ khóa. ;)
Nik Reiman

6
Không chỉ vậy, rất nhiều thứ này không cần thiết đối với các doanh nghiệp vừa và nhỏ, và chắc chắn không biện minh cho (đối với họ) chi phí quá lớn.
Dave Markle

1
Bạn trả tiền cho những gì bạn sử dụng ... Những ví dụ tôi đưa ra rất thú vị cho các tổ chức khá lớn. Và như tôi đã nói, lựa chọn đầu tiên thường là để quyết định xem nên sử dụng Oracle hay thứ gì khác.
Anonymous

Oracle RAC không phải là phân cụm nâng cao (và không có trong năm 2009), đó là phân cụm chìa khóa trao tay. Bởi vì nó yêu cầu bộ nhớ được chia sẻ, nó sẽ không mở rộng IO. Nó đã không mở rộng đến các cấp độ đám mây vào năm 2009 và trong thập kỷ qua, mọi thứ chỉ trở nên tồi tệ hơn đối với Oracle.
jbo5112

3

Tôi nghĩ đó là vì Oracle là RDMS đầu tiên hỗ trợ " sharding "


2
-1 Điều này có nghĩa là gì? * Cần trích dẫn. * Có nhiều phương pháp để triển khai sharding, bao gồm nhưng không giới hạn việc triển khai sharding trong lớp ứng dụng.
Jeeyoung Kim

Oracle không có sharding gốc cho đến ngày 12.2 (2016/2017). IIRC, MySQL đã đánh bại họ hơn một thập kỷ (các công cụ lưu trữ khác nhau).
jbo5112

1

Bạn biết đấy, chi phí của SQL Server và Oracle không quá xa nhau.

Trên thực tế, đối với các hệ thống nhỏ, chi phí của Oracle và Cơ sở dữ liệu miễn phí yêu thích của bạn là từ 0 (Oracle Express Edition) đến không lớn (5.800 đô la bộ xử lý vĩnh viễn cho Standard Edition One).

Đây là liên kết đến các khả năng của các phiên bản khác nhau trong 11g: http://www.oracle.com/database/product_editions.html .

Giá niêm yết có sẵn cho tất cả các vùng lãnh thổ tại http://store.oracle.com - tất nhiên, các công ty lớn thường không trả tiền bán lẻ;)


2
Tuy nhiên, chi phí của Postgres / MySQL và Oracle là ... (không phải tôi đặc biệt coi trọng một trong hai thứ đó)
annakata 11/02/09

+1 David, bạn có thể mở rộng câu trả lời của mình để có thể bao gồm một số hạn chế của Express Edition không?
BuddyJoe

@ annakata - XE miễn phí. SE1 rất rẻ.
David Aldridge

2
Các hạn chế chính của af Express (XE) là 4 GB dữ liệu, 1 GB RAM, 1 CPU.
Gary Myers

4
Điều này không giải thích cho chi phí duy trì cài đặt Oracle DB cao hơn nhiều so với MSSQL hoặc các đối thủ cạnh tranh khác của nó.
Monty Wild
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.