MySQL vs. PostgreSQL

Werbung:
Das heisst dann doch aber, das die Mehrzahl der Datenbankexperten (in Summe von Programmierern, Admins und Anwendern) keine Ahnung hat ODER hat auch beim Marktanteil Postgres inzwischen MySQL/MariaDB marginalisiert?

Ich denke MySQL ist immer noch verbreiteter. Ein Grund ist sicherlich dass selbst heute viele Web-Hoster eben nur MySQL anbieten. Vor 10 Jahren hat man überhaupt nichts anderes bekommen und viele PHP Anwendungen (Wordpress etc) wurden deswegen ausschließlich für MySQL entwickelt.

Ich persönlich denke, dass die Verfügbarkeit von MySQL auf Windows auch seinen Teil dazu beigetragen hat. MySQL hat es den Entwickler halt sehr leicht gemacht lokal eine komplette Umgebung mit Apache, PHP und MySQL aufzusetzen. Das war lange Zeit bei Postgres nicht der Fall. Auch wenn Windows für den produktiven Betrieb keine wirklich große Rolle spielt - die Entwickler beeinflussen durchaus (zumindest indirekt) solche Infrastrukturentscheidungen.

Und viele Admins und Programmierer bleiben halt einfach bei MySQL - "es reicht doch" ist meistens die Antwort. Und sehr häufig wird die Datenbank auch nicht als technologisch wichtig angesehen ("Wir nehmen eh' ein ORM, da spielt das Datenbanksystem keine Rolle").

Häufig werden solche Entscheidungen auch gar nicht nach technischen Aspekten gefällt, sondern es entscheiden Manager (die von Technik keine Ahnung haben) aufgrund von Kriterien wie z.B. auf "Popularität", Verfügbarkeit von kommerziellen Support Angeboten (mit garantierten Reaktionszeiten). Auch das hat sich aber sehr stark geändert in den letzten Jahren.

Das ist so ähnlich wie die Entscheidung für IBM, Oracle oder SAP - wenn dabei was schief geht ist es halt ein Fehler des Anbieters. Wenn man aber ein "Nischenprodukt" wählt (auch wenn diese Einschätzung subjektiv ist), und es geht etwas schief, dann ist der Entscheider Schuld - nicht das Produkt oder der Hersteller. Also riskieren sie halt nichts und nehmen das "was alle nehmen". In den 90er gab es einen Spruch "Nobody ever got fired for choosing IBM"

Ich denke aber, das hat sich in den letzten 5 Jahren deutlich verändert. Die großen Cloud-Anbieter haben alle Postgres im Angebot (Microsoft hat z.B. Citus aufgekauft und investiert da ziemlich - sie beteiligen sich auch an der Entwicklung) und sogar Firmen wie Percona die sehr lange ausschließlich MySQL "gemacht" haben, mischen auf dem dem Postgres Markt mit.

Wenn heute auf Stackoverflow oder Reddit jemand nach einer Empfehlung bzgl einer Datenbank fragt wird wesentlich häufiger Postgres empfohlen als MySQL. Sehr häufig sogar wenn nicht explizit nach einer OpenSource Lösung gefragt wurde. Das war vor 5 oder 10 Jahren noch anders.

Zusätzlich kommt noch die GPL Lizenz dazu - da ist man ganz schnell in einer Grauzone, ob ein Projekt ein "derivative Work" ist oder nicht. Und bevor ich da teure Anwälte beauftrage das zu klären oder eine Klage riskiere, nehme ich lieber das Produkt welches die liberalere Lizenz hat. Wenn das auch noch technologisch besser ist, umso besser
 
Zusätzlich kommt noch die GPL Lizenz dazu - da ist man ganz schnell in einer Grauzone, ob ein Projekt ein "derivative Work" ist oder nicht. Und bevor ich da teure Anwälte beauftrage das zu klären oder eine Klage riskiere, nehme ich lieber das Produkt welches die liberalere Lizenz hat. Wenn das auch noch technologisch besser ist, umso besser

Ich bevorzuge selbst ebenfalls 'liberalere' LIzenzen, z.B. MIT oder Apache, das es jedoch bei der GPL "Grauzonen" gäbe halte ich für ein Gerücht. Ich habe auch keinerlei Sorge bezüglich einer Klage.
 
... ach und, da hier Viele engagiert diskutiert haben, ist es vielleicht von Interesse Folgendes zu sagen:
ich habe (aus heutiger, November 2021, Sicht "hatte") dem Auftraggeber Postgres vorgeschlagen, aber die Entscheidung fiel dagegen, maßgeblich weil der Auftraggeber zusätzliche Kosten gehabt hätte um innerhalb seiner Firmen-IT Fähigkeiten nur Nutzung von Postgres aufzubauen.
(das meint nicht das Postgres diesbezüglich mehr Kosten verursacht als MySQL, es meint lediglich das es sich in Praxis kaum rechnet aus einer IT-Umgebung, welche hinsichlich Datenbanken bisher zu 100% auf MySQL setzt, eine Umgebung zu machen die (schätzungsweise) aus 95% MYSQL und 5% Postgres besteht)
 
das es jedoch bei der GPL "Grauzonen" gäbe halte ich für ein Gerücht.

Nachdem die Java IDE von Oracle an die Apache Foundation übergeben wurde, kam die Diskussion auf, ob NetBeans zusammen mit einer Java Runtime (GPL Lizenz, gehört Oracle) als Bundle zur Verfügung gestellt werden darf. Die Anwälte der Apache Foundation waren der Meinung das geht nicht, da die GPL mit der Apache Lizenz nicht kompatibel ist. Das Bundle wäre aber ein "derivative work" im Sinne der GPL, was zur Folge hätte, dass NetBeans auch mit der GPL veröffentlicht werden müsste (was die Apache Foundation natürlich nicht will).

Wenn Du die Grauzonen entdecken willst, dann kannst Du ja mal verschiedenen Meinungen im Netz suchen zum Thema "derivative work".

Wenn das alles 100% "in-house" entwickelt und eingesetzt wird, spielt das überhaupt keine Rolle. Wenn aber eine Anwendung z.B. die MySQL Libraries statisch linked (also als Teil der Anwendung ausliefert), wird es sehr wohl als "derivative work" angesehen - zumindest in der Meinung mancher Anwälte.

Ich habe auch keinerlei Sorge bezüglich einer Klage.
Wenn Du in das Visier von Oracle kommst, dann solltest Du Dir schon Sorgen machen. Selbst wenn am Schluss rauskommt, das der Einsatz bei Dir oder Deinem Kunden konform mit der Lizenz ist, kann so ein Prozess einen kleinen Betrieb ganz schnell ruinieren.

Aber das muss jeder für sich selber entscheiden.

weil der Auftraggeber zusätzliche Kosten gehabt hätte um innerhalb seiner Firmen-IT Fähigkeiten nur Nutzung von Postgres aufzubauen.
Das ist ein durchaus valider Grund.
 
Wenn Du die Grauzonen entdecken willst, dann kannst Du ja mal verschiedenen Meinungen im Netz suchen zum Thema "derivative work".

Das hat nur nichts mit "Grauzone" zu tun, sondern es ist ein gutes Recht des Urhebers das zu fordern. Wohlgemerkt: ich finde 'liberalere' Lizenzen besser als übermäßig starkes Copyleft, aber deswegen ist es doch nicht unfair oder 'trickreich' (="Grauzone") wenn andere Entwickler/Urheber andere Lizenz-Regeln bevorzugen.

Oder auch anders gesagt: wenn ich GPL-Software als Ausgangsbasis für eine Programmierung nutze, dann ist doch mein Herangehen nicht Dasjenige das ich versuche mir zu überlegen wie ich möglichst weitgehend gegen den 'Geist' der GPL verstossen kann, ohne mit den Buchstaben der GPL juristisch in Konflikt zu kommen, sondern ich respektiere den 'Geist' der GPL.

wird es sehr wohl als "derivative work" angesehen - zumindest in der Meinung mancher Anwälte

Ja und? Das meine Arbeit als "derivative work" angesehen werden könnte ist doch garkein Problem. Du darfst das dann gerne unter GPL nutzen, ich habe nichts dagegen und der Kunde für den ich arbeite wohl ebenfalls nicht, weil eine maßgebliche Rahmenbedingung für dieses Projekt ist nur freie Software einzusetzen.

Wieso stellt die GPL hierbei auch keinerlei Interessenkonflikt dar?
Weil es um eine gewöhnliche Datenbankanwendung geht und die Tatsache das Dritte diese unter GPL nutzen könnten, aus Kundensicht keinerlei Verlust darstellt, weder monetär noch bezüglich knowhow.
 
Werbung:
Wenn es ein "derivative work" ist, musst Du aber Deine Software auch unter GPL veröffentlichen (incl der Sourcen).

"muss" (und nicht "sollte" o.ä.), also doch klar geregelt.

Entschuldige bitte, nur ich promote hier wirklich NICHT die GPL (die ich ja garnicht besonders mag) sondern argumentiere nur gegen die Aussage "Grauzone", denn auch wenn ich die GPL nicht besonders mag, so halte ich sie doch für ausgesprochen klar und rechtssicher.

Vielleicht verstehen wir ja nur "Grauzone" anders?
Für mich steht diese Vokabel jedenfalls für "rechtsunsicher" (ggf. auch heruntergestuft bis 'geringfügig rechtsunsicher' o.ä.) und aber sicher nicht für: 'evtl. lizenzrechtlich unzweckmäßig für einen bestimmten technischen Zweck' o.ä..
 
Zurück
Oben