98 votes

Pourquoi utiliser la base de données Oracle ?

Je suis curieux de savoir pourquoi, pour des raisons techniques, vous avez choisi la base de données Oracle plutôt que les dernières versions de.. :
1) Microsoft SQL Server
2) MySQL
3) PostgreSQL

Quelles caractéristiques ou fonctionnalités justifient le coût supplémentaire. Je suis intéressé par les arguments techniques, pas par une guerre de religion. Un ami m'a posé cette question et j'ai toujours utilisé l'un des trois que j'ai cités. Je ne connaissais pas assez les bases de données Oracle pour pouvoir donner mon avis.

Merci.

51voto

user1016765 Points 217

Personne ne semble parler du coût du temps passé par les développeurs à travailler avec Oracle. La plupart des développeurs qui connaissent d'autres bases de données détestent Oracle, ceux qui ne le font pas supposent que tout le code des bases de données et/ou les outils ORM sont difficiles à utiliser.

Si je lançais une entreprise dont je pensais qu'elle allait atteindre les proportions d'Amazon, je pourrais envisager des solutions NoSQL, sinon je choisirais PostgreSQL, SQL Server (ou même Sybase maintenant) plutôt qu'Oracle à chaque fois. Je dis cela après avoir travaillé (en tant que développeur) avec Oracle pendant 2 ans - c'est terrible de travailler avec !

4 votes

Je ne suis pas d'accord ! Oracle est certainement l'une des meilleures implémentations de SGBDR. Il gère la mémoire de manière très efficace et peut gérer des opérations de JOIN complexes qui paralysent facilement MySQL et MsSQL. Oracle a une grande Architecture, cela le rend solide comme un roc car il est très facile d'organiser les données de différentes applications très bien. Je pense que le meilleur atout pour moi est le moteur SQL que possède Oracle, il est très avancé, ce qui en fait la seule base de données permettant d'exploiter un entrepôt de données ! D'autres fonctionnalités comme les vues matérialisées, le PL/SQL, etc. font qu'Oracle en a pour son argent.

8 votes

Je suis également d'accord - ayant travaillé à la fois avec Oracle 11gR2 et SQL Server 2008 R2 au cours des dernières années, il est absolument ridicule de constater combien de fois je me suis heurté au modèle de sécurité défectueux d'Oracle, à ses outils d'optimisation des performances peu intuitifs et à son optimiseur capricieux. Les économies que vous ferez en renonçant à une licence MS Win Server seront immédiatement absorbées par la perte de productivité.

4 votes

En tant qu'utilisateur principal de SQL Server et ayant développé une base de données à l'aide d'Oracle : Oracle est une douleur dans le a*se. Comme @Jasmine l'a mentionné, il est tellement limité dans ce que vous pouvez faire. Je déteste particulièrement le fonctionnement des variables et le fait que vous devez créer des déclencheurs et des séquences pour l'incrémentation automatique des ID. SQL Server est la définition de la façon dont une base de données devrait fonctionner. Heck, même MySQL est meilleur qu'Oracle. Bien sûr, les deux bases de données ont leurs limites, mais rien de comparable à ce qu'offre Oracle.

35voto

Robert Gould Points 29406

Seuls Oracle et SQLServer de Microsoft sont des logiciels fermés, et lorsque quelque chose ne va pas et que vous avez un problème, la réponse est juste un coup de téléphone (et de l'argent, bien sûr). Quoi qu'il en soit, MySQL et PostGre proposent plusieurs services de conseil aux entreprises, mais au final, ces consultants ne sont pas vraiment responsables du produit, car celui-ci appartient à tout le monde. C'est une bonne chose car vous pouvez corriger le code si vous êtes bon en C et en programmation de bas niveau, mais si vous ne l'êtes pas, trouver la solution peut devenir une chasse à l'oie sauvage.

Comme tout le monde n'est pas assez compétent et que les entreprises qui ont de l'argent préfèrent la sécurité (au sens commercial) des bases de données à source fermée, c'est la raison pour laquelle ces solutions n'ont pas disparu, outre le fait que leurs mises en œuvre sont solides et valent l'argent si vous en avez.

La plupart des gens qui utilisent Windows s'en tiendront à, vous l'avez deviné, SQLServer, mais si vous utilisez des variantes d'Unix, Oracle est votre solution à source fermée. Quoi qu'il en soit, j'utilise Oracle sur Solaris, mais si notre cible était Windows, j'utiliserais probablement SQLServer parce que les deux produits sont solides comme le roc, mais je crois que Microsoft a quelques astuces spéciales sous le capot pour obtenir les meilleures performances sous Windows.

7 votes

+1. Bonne réponse. J'ai toujours travaillé avec la devise "J'aime le meilleur de la race, mais le gratuit est très cool". J'essaie toujours de trouver un équilibre dans le choix d'une solution. Pour mon travail, j'utilise SQL Server. Pour mon travail personnel, j'utilise MySQL en ce moment.

11voto

3voto

TomHastjarjanto Points 4543

La vraie question est de savoir quel type d'application va être utilisé pour utiliser un SGBDR. Vous n'avez certainement pas besoin d'Oracle pour votre blog wordpress ou votre clone twitter. Mais si vous voulez faire de la business intelligence lourde, alors Oracle pourrait avoir certaines fonctionnalités qui peuvent aider à faire cela plus efficacement que les autres.

Ms sql server est très bien aussi, il a des tonnes de fonctionnalités. Si vous êtes sous linux et que vous avez besoin d'une base de données avec des fonctionnalités comme celles offertes par ms sql, alors oracle serait un bon choix.

3voto

Anonymous Points 11017

Pour n'en citer que quelques-uns :

  • Oracle Real Application Cluster - offre des fonctions de mise en grappe avancées
  • Oracle Data Guard - en bref, fournit des fonctions de veille physique et logique.
  • Oracle Exadata - met en œuvre le stockage sensible aux bases de données (qui peut effectuer le filtrage des prédicats, le filtrage de la projection des colonnes, le traitement des jointures, accélère la création des tablespaces). La solution est fournie avec des serveurs HP, une garantie complète 24 heures sur 24 et 7 jours sur 7, et d'autres éléments intéressants. Elle est très intéressante pour les applications à chargement de données très intensif (par exemple, grâce à la création indépendante de tablespaces).
  • Virtualisation Oracle

Et bien sûr, la magie de la marque ;)

Et quand il s'agit de choisir le SGBD ? En général, le choix est assez évident : Oracle ou le reste du monde. Après cela, vous pouvez réduire le choix en :

  • plate-forme (Windows uniquement ou non)
  • poids (sqlite, MySQL, PostgreSQL, ...)
  • le budget (coût initial de la licence, coût de la maintenance + support)
  • des perspectives d'évolution, par exemple :
    • Oracle Express -> Oracle
    • SQL Server Express -> MSSQL
  • perspectives commerciales - "produit sûr et bien connu" ou produit à code source ouvert (n'oubliez pas les guillemets autour de la première phrase). D'autres articles tendent à approfondir cet aspect.

15 votes

Ce serait bien si vous pouviez ajouter un petit mot sur ce que font ces fonctionnalités... pour ceux d'entre nous qui ne sont pas dans le coup, cela ressemble juste à un bingo de mots à la mode. ;)

6 votes

De plus, une grande partie de ce matériel n'est pas nécessaire aux petites et moyennes entreprises et ne justifie certainement pas (pour elles) son coût très élevé.

2 votes

Vous payez pour ce que vous utilisez... Les exemples que j'ai donnés sont intéressants pour des organisations plutôt grandes. Et comme je l'ai dit, le premier choix consiste généralement à décider si l'on opte pour Oracle ou pour autre chose.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X