9
votes

Comment SQL est-il devenu la langue de la base de données dominante?

Pour la plupart des tâches de programmation, vous avez la sélection de langues à choisir et de bonnes communautés fortes derrière beaucoup d'entre elles. Mais lorsque vous devez travailler avec une base de données, il n'y a vraiment qu'un seul choix viable de nos jours: SQL. Bien sûr, il existe différentes entreprises avec différentes implémentations et dialectes, mais vous recherchez toujours des choses avec xxx p> Ce n'était pas toujours de cette façon, cependant. À la fin du début des années 90, il n'y avait pas de moyen évident d'interagir avec une base de données. Mais aujourd'hui, il y a. Et avec la façon dont les langues informatiques ont tendance à proliférer plutôt que de converger, je trouve qu'un peu impair. Quels facteurs historiques et techniques ont conduit à la domination presque complète de SQL du domaine d'accès à la base de données?


0 commentaires

5 Réponses :


1
votes

0 commentaires

2
votes

Voici une référence de l'article de Codd Wikipedia - certains détails sur la manière dont SQL 'Gagné'.

Comité des innovations en informatique et en communication: Leçons de l'histoire: La montée des bases de données relationnelles.


0 commentaires

7
votes

C'est comme cette citation de Winston Churchill:

En effet, il a été dit que la démocratie est la pire forme de gouvernement, à l'exception de toutes ces formes qui ont été essayées de temps à autre.

Il y avait des technologies de base de données alternatives avant 1970 lorsque le modèle relationnel a été proposé pour la première fois. Il y a eu des alternatives tout le temps depuis lors, et il y a Nouvelles alternatives Aujourd'hui .

mais de toutes les alternatives, aucune solution en plus de SQL offre un bon équilibre pour:

  • Standardisation généralisée
  • Produits populaires et à vieillesse tels que Oracle
  • joue bien avec de nombreuses langues de programmation d'application
  • Prise en charge de la modélisation de données formelle, de l'intégrité de données forte, des transactions acides

0 commentaires

1
votes

Codd et Churchill de côté, SQL n'est pas une langue horriblement mauvaise pour définir et interroger des ensembles de données basés sur table. Comme dit un autre général, "il y a eu le premier avec le plus grand."


0 commentaires

0
votes

Un facteur est que les données persistent. Il est beaucoup plus difficile de remplacer / migrer les données d'une entreprise que ses applications. Les applications peuvent aller et venir, codées dans le dernier langage "saveur du mois", mais la plate-forme de base de données vit. Ceci est un peu comme un effet QWERTY. Bien que la disposition du clavier QWERTY soit connue pour être inefficace, elle persiste car il y aurait un coût énorme pour passer à autre chose.

Deuxièmement, il existe une domination massive du marché par Oracle et IBM (et plus récemment Microsoft). Bien qu'ils ne soient pas d'accord sur tous les détails, ils n'ont pas eu bénéficié d'une interface non-SQL à leurs bases de données. J'utilisais Ingres dans le début des années 90 lorsque SQL a été poussé par SQL.

Troisièmement, les développeurs d'applications (en particulier les goûts de SAP et Oracle) d'avoir une plate-forme standard (ish) à siéger.

Je suppose que le côté retournement à cette question est de savoir pourquoi avons-nous besoin / veulons tant de langages de programmation différentes?


0 commentaires