mysql vs postgresql 2018


Antwort 1:

Ein möglicher Grund für die schrittweise Übernahme ehemaliger MySQL-Benutzer durch PostgreSQL, die ich in den anderen Antworten noch nicht erwähnt habe, ist die Tatsache, dass es sich als Reaktion auf die Übernahme als „das einzig wahre freie und Open-Source-RDBMS“ bewirbt -over von MySQL durch die Oracle-Firma.

Dies ist natürlich etwas übertrieben (da der größte Teil des MySQL-Codes immer noch Open Source und kostenlos ist), aber ich kann mir vorstellen, dass MySQL für Leute, die nach einer Open Source-Lösung suchen, etwas weniger „interessant“ geworden ist. Darüber hinaus gibt es zwei Nebenwirkungen dieser Übernahme, die dieses verminderte Vertrauen in MySQL erklären können: (1) Die Entwicklung (in Bezug auf neue Funktionen) von MySQL hat sich seit der Übernahme von Oracle erheblich verlangsamt (obwohl es wie MySQL aussieht) 8.0 holt auf, aber zum jetzigen Zeitpunkt ist es noch nicht GA…); und (2) die Geburt von MariaDB, die mit MySQL um das „Erbe“ des Open-Source-Projekts „MySQL“ konkurriert. Dieses Gabeln scheint die Leute zum Zögern gebracht zu haben (und hat sie deshalb vielleicht dazu gebracht, über PostgreSQL nachzudenken, wer weiß ...)

In der Vergangenheit war der MySQL-Ansatz immer pragmatisch: Implementieren Sie, was die Benutzer benötigen, auch wenn der SQL-Standard dies noch nicht beschreibt. Der Ansatz von PostgreSQL war schon immer: Implementieren Sie, was der SQL-Standard vorschreibt, und nicht mehr. In Bezug auf die Nützlichkeit war der MySQL-Ansatz für die meisten „kostengünstigen“ Benutzer in der Anfangszeit attraktiver. Heutzutage (und tatsächlich seit den neueren SQL-Standards wie SQL: 2008 und SQL: 2011) wird die Standardkonformität (und Kompatibilität mit anderen RDBMS) für Benutzer immer wichtiger, und der Standard enthält jetzt alle nützlichen Funktionen, sodass PostgreSQL nicht weniger sein muss funktional “als MySQL, wie es in den„ frühen Tagen “war.



Antwort 2:

Es gibt einen Unterschied zwischen beliebt und ist es die beste Lösung für Ihre Anforderungen.

Popularität gewinnen

Gemäß

DB-Engines Forschung

, PostgreSQL hat seine Punktzahl im letzten Jahr mit einem Anstieg von fast 35 Punkten deutlich erhöht. Alle anderen Top-Datenbanken haben entweder abgenommen oder geringfügig zugenommen. "Popularität gewinnen" bedeutet jedoch nicht, dass es jetzt beliebter ist als andere Top-Datenbanken.

Am beliebtesten

Beyogen auf

Empirische Analyse von DB-Engines

, PostgreSQL ist weder populärer noch nahe daran, MySQL oder die anderen Hauptdatenbanken zu überholen. Die aktuellen Rankings sind:

  1. Oracle - 1303 Punkte
  2. MySQL - 1252 Punkte
  3. MS SQL Server - 1122 Punkte
  4. PostgreSQL - 388 Punkte
  5. MongoDB - 336 Punkte

Wie zu sehen ist, gibt es nach den drei wichtigsten Datenbanken eine große Lücke.

Bestes DBMS

Es scheint klar zu sein, dass PostgreSQL MySQL aufgrund seiner Funktionen überlegen ist. Sehen

Vergleich relationaler Datenbankverwaltungssysteme, Wikipedia

2017-07-18

Leider bezieht Gartner auch keine in seine Analyse ein, die Open-Source-Produkte im Allgemeinen ignoriert, es sei denn, es gibt eine kommerzielle Distribution.

Laut dem Magic Quadrant für betriebliche Datenbankverwaltungssysteme sind SQL Server, Oracle und SAP HANA die wichtigsten Datenbanken (Leader's Quadrant). Im Challenger-Quadranten befinden sich MarkLogic, MongoDB, DataStax und Redis. Sie sollten in der Lage sein, kostenlose Kopien dieses Berichts im Internet zu googeln, die ansonsten nur für zahlende Kunden urheberrechtlich geschützt sind. Erfolgreiche Anbieter drucken die Berichte von Gartner und Forrester häufig auf ihren Websites nach.

Hier ist eine weitere Frage, die ich allen in meiner Frage stelle

Terra Begegnungen

Blog.

Jonathan Shaltz kommentierte: „Alles gute Punkte, aber warum ist PostgreSQL (zumindest scheinbar) in letzter Zeit viel beliebter geworden? Es ist definitiv nicht neu auf dem Markt! “

Das ist eine gute Frage, also habe ich im Internet nachgeschlagen. Nicht zu viel Hilfe da. Das

Hauptunterschiede zwischen MySQL und PostgreSQL

Artikel entsprach der wachsenden Popularität.

Ich habe DB-Engines überprüft und ihre Statistiken basieren auf sozialen Netzwerken und Google / Bing / Yandex-Datenanalysen. Der Bewertungsalgorithmus verfolgt also, wie oft auf jedes Tool verwiesen wird, welche Jobs veröffentlicht wurden usw. Dann bemerkte ich, dass MySQL im selben Zeitraum von einem Jahr mit -128 Punkten am meisten erreicht hat. Vielleicht passiert, dass Unternehmen, die nach Open Source RDBMS suchen, jetzt PostgreSQL in Betracht ziehen.

Dies wird verstärkt durch

PostgreSQL hat eine bessere Unterstützung als MySQL

Für viele Standard-SQL-Funktionen wie Unterabfragen, Vereinigungen, Schnittpunkte usw. ist jedoch wichtiger, dass PostgreSQL im Gegensatz zu MySQL Ansichten, Trigger, anpassbare Aggregate und prozedurale Sprachen (SQL, C, Perl, Python und Oracle-ähnlich) bereitstellt PL / pgSQL). MySQL hat gerade Transaktionsunterstützung und eine prozedurale Sprache hinzugefügt.

Beliebtheitswettbewerb

Mani Gandham kommentierte: „DB Engines ist nicht so genau und stützt sich hauptsächlich auf Suche und soziales Signal. eine eher schlechte Abstraktion für den tatsächlichen Gebrauch. Sie haben SQLite jahrelang als unter dem zehnten Platz aufgeführt, obwohl es eine der am häufigsten eingesetzten Software-Komponenten (geschweige denn Datenbanken) ist, die jemals hergestellt wurden. “

Hallo Mani! Ich stimme Ihnen voll und ganz zu, dass Popularität nicht die wissenschaftlichste Analyse ist. Leider wird die von Gartner, Forrester und IDC durchgeführte Analyse des realen Marktanteils nicht veröffentlicht - da sie möchten, dass Unternehmen dafür bezahlen. Daher hätte ich ein Problem bei der Angabe, wie bereitgestellt eine Datenbank ist, es sei denn, es gibt harte Fakten, die diese Aussage stützen.

Auswahl des besten ODBMS für die Anforderungen Ihres Kunden

Peter Vanroose kommentierte: „Tatsächlich unterstützt MySQL (seit 5.0, was eine sehr lange Zeit ist) auch SQL PM (das zu 99% pgSQL ähnelt), z. B. zum Implementieren gespeicherter Prozeduren und Trigger. Und es hat auch (seit längerer Zeit) Ansichten. “

Hallo Peter! Danke für das Update. Einige meiner früheren Untersuchungen zur Analyse von Datenschichtoptionen müssen offensichtlich aktualisiert werden. Ich denke, dies unterstreicht nur den Punkt, dass man eine objektive, wissenschaftliche Analyse der Datenbankoptionen durchführen und diejenige auswählen muss, die den Anforderungen des Unternehmens am besten entspricht, und nicht die eigenen persönlichen Vorurteile. Daher muss die Auswahl auf der Grundlage der Funktionen getroffen werden, die nicht von der Beliebtheit des DBMS abhängen.

Ich würde nach einem DBMS suchen, das zuverlässig ist (ACID-Konformität, Transaktionen) und referenzielle Integrität, Domänen, Einschränkungen, benutzerdefinierte Funktionen, Trigger, gespeicherte Prozeduren sowie Sicherheitsrollen und -regeln bietet. Ein DB-Management-Tool ist ebenfalls sehr wichtig. Common Table Expressions (CTEs) und Programmiersprachen von Drittanbietern wären eine gute Wahl.

Hier sind einige Forschungsartikel, die ich gerade gefunden habe:

  • Warum sollten Sie PostgreSQL anstelle von MySQL wählen, MariaDB
  • PostgreSQL vor MySQL wählen, MariaDB
  • Vergleich relationaler Datenbankverwaltungssysteme


Antwort 3:

Ich möchte auf einige Gründe hinweisen. ich arbeite für

IPESOFT

Wir haben eine SCADA / MES-Technologie entwickelt und SCADA- und MES-Systeme implementiert. Plus Lizenzierung unserer Technologie an OEM-Partner.

Ein SCADA / MES benötigt verschiedene Arten von Datenbanken:

  • Konfigurationsdatenbank (enthält die vollständige Konfiguration, meist unter 100 MB)
  • Überwachungsdatenbank (enthält Tabellen mit Ereignissen, die aufgetreten sind, z. B. Alarm wurde aktiviert, Bediener hat dies bestätigt, Kommunikation wurde unterbrochen usw.). Dies sind meistens bis zu ein paar GB Daten, selten zehn GB; hängt von der Tiefe ab (wie alte Daten gelöscht werden können)
  • Archivierungsdatenbank - Archivierung historischer Daten. Dies ist die anspruchsvollste Datenbank. Wir fügen kontinuierlich Tausende von Werten pro Sekunde ein, löschen regelmäßig alte Daten und führen entsprechende Wartungsarbeiten durch (Tabellen- / Index-Reorganisation). Wir haben Archivdatenbanken mit einer Größe von bis zu 2 TB, wobei sogenannte „Depotdatenbanken“ (die für die Langzeitarchivierung verwendet werden) über 14 TB Daten verfügen (seit mehr als 13 Jahren). Der D2000 Archiv-Prozess greift auf diese Datenbank zu.
  • und möglicherweise eine „externe“ Datenbank, deren Struktur von einer bestimmten Anwendung abhängt und von D2000 DBManager verwaltet wird.

SCADA / MES-Systeme laufen rund um die Uhr. Möglicherweise ist Zeit für geplante Wartung und Patches (wenn die Systeme redundant sind). Wir schätzen jedoch die Zuverlässigkeit der Datenbank und den geringstmöglichen Wartungsaufwand.

Unsere Technologie kann mehrere SQL Server verwenden. Ich werde versuchen, einige Vor- und Nachteile zu beschreiben:

  • Sybase SQL Anywhere - gute Datenbank, einfach zu manipulieren (kopieren Sie einfach die DB-Datei und legen Sie sie an einem beliebigen Ort ab). Wir haben es in der Vergangenheit häufig für alle vier Arten von Datenbanken verwendet. Als wir anfingen, mit Archiven über 20–40 GB + Hunderten von Einfügungen pro Sekunde zu arbeiten, wurde Sybase unzuverlässig (Datenbank könnte beschädigt werden). Dann erwarb SAP Sybase und aufgrund von Lizenzänderungen wurde SQL Anywhere für kleine Projekte zu teuer.
  • MsSql - Wir haben Unterstützung für MsSQL implementiert, insbesondere für unsere OEM-Partner, die eine kostenlose Datenbank für kleine Anwendungen wünschen. Sie verwendeten MSDE 2000, später SQL Server Express (Beschränkung der Daten auf 2 GB, später 4 GB und 10 GB). Es hat im Grunde funktioniert; Das Verfahren zum Verschieben der Datenbank war komplizierter als bei Sybase und beinhaltete einige Skripte.
  • Oracle - Als wir mit größeren Projekten begannen (um 2002), mussten wir Oracle unterstützen. Wir haben Port für OpenVMS gemacht und Oracle war die einzige Wahl. Damals war es Oracle 9. Nach der Erstkonfiguration war es ziemlich zuverlässig und wartungsfrei. Später brauchten wir mehr Leistung; Unser D2000-Archiv wurde parallelisiert und Oracle gab uns das, was wir brauchten (im Gegensatz zu Sybase; als wir versuchten, aus mehreren Aufgaben in SQL Anywhere einzufügen, konnten wir keine höhere Leistung erzielen, obwohl der Server über genügend freie CPU-Kerne verfügte). Oracle 10g war auch in Ordnung, dann kam 11g, das viel mehr RAM für dieselbe Archivdatenbank benötigte und nach einiger Zeit instabil wurde (interne Fehler; nicht genügend Speicher usw.). Außerdem ist die Lizenzierung von Oracle ein Albtraum, insbesondere in einer virtualisierten Umgebung, wenn Sie Freigabespeicher verwenden und Daten von vielen Geräten automatisch in eine Datenbank einfügen möchten - genau das tun SCADAs. Außerdem hatten einige unserer Kunden ein Oracle-Audit, das eine sehr stressige und zeitaufwändige Erfahrung ist (sowohl für den Kunden als auch für uns). Zum Glück hatten wir damals eine Alternative:
  • PostgreSQL - wir haben angefangen, in Version 8 damit zu spielen, und haben es dann unterstützt, als es 9.3 war. Was wir schätzen:
  • einfach zu installieren, geringer Platzbedarf (vergleichbar mit Sybase)
  • hohe Leistung (obwohl niedriger als Oracle, muss ich zugeben)
  • Wir können jedoch mit geringerer Leistung umgehen, indem wir mehr CPU-Leistung bereitstellen. Es gibt keine Einschränkungen wie bei Oracle, wie viele CPUs Sie haben können (vor dem Kauf teurer Enterprise Edition-Lizenzen).
  • Keine Lizenzkosten, keine Prüfung
  • einfache Konfiguration (in einer Standardkonfiguration ändern wir ungefähr 10 Parameter in Bezug auf Speicher / Größe)
  • hohe Stabilität (einmal richtig konfiguriert, hatten wir nie ein Stabilitätsproblem oder mysteriöse Fehler)
  • verfügbar auf allen Plattformen, die wir derzeit unterstützen (Windows, Linux, Raspberry PI)
  • In der Version 9.5 wurde UPSERT implementiert, wodurch die Leistung weiter verbessert wurde. Zuvor hat D2000 Archiv Einfügungen durchgeführt. Wenn bereits ein Wert vorhanden war und die Einfügung fehlgeschlagen ist, wurde eine Aktualisierung durchgeführt. Jetzt kann UPSERT ausgeführt werden, was immer erfolgreich ist, und wir können das Rollback "Transaction" für Fehler verwenden, wodurch Sicherungspunkte zwischen einzelnen SQL-Vorgängen vermieden werden. Dadurch werden PostgreSQL-Transaktions-IDs (um 3 Größenordnungen) gespeichert, wodurch weniger Staubsauger verursacht werden (PgSql-Wartung). gebraucht werden

Wir haben zuerst PostgreSQL für die Archivierung der Datenbank unterstützt (2012) - Sie können meinen Blog lesen (

Archiv- und PostgreSql-Depotdatenbanken

) um einige technische Details zu sehen. Dann auch zur Konfiguration und Überwachung der Datenbank; Dann haben wir begonnen, es auch für MES-Datenbanken zu verwenden (als PgSql-Cluster - siehe Blog

Redundantes PostgreSQL und seine Überwachung

).

Neben den oben genannten SQL-Datenbanken bieten wir experimentelle Unterstützung für MySQL und sogar SQLite (für sehr kleine Anwendungen) in

D2000 Archiv

. Derzeit verwenden wir PostgreSQL für alle neuen Anwendungen (und migrieren bei Upgrades alte Oracle-Archive darauf). Dies spart uns Zeit (weniger Wartung) und Ressourcen des Kunden (weniger RAM erforderlich; früher hatten wir dedizierte Server für die Archivierung der Datenbank, jetzt fügen wir diese Funktionalität dem Anwendungsserver hinzu). Und jeder weiß keine Lizenzprobleme oder Oracle-Audits mehr zu schätzen.



Antwort 4:

PostgreSQL war schon immer beliebt - eine Top-5-Datenbank seit etwa einem Jahrzehnt und derzeit die

# 2 beliebteste Datenbank

(hinter Redis) laut der neuesten StackOverflow-Umfrage.

Es ist ein Favorit, weil es Open Source ist, kostenlos verwendet werden kann, von der Community gesteuert wird, ohne dass es einem einzigen Unternehmen gehört, standardkonform ist, viele nützliche Funktionen bietet und sehr erweiterbar ist.

In letzter Zeit wurde es mit Funktionen wie Volltextsuche, JSON-Spalten, logischer Replikation, Upsert und besserer Skalierbarkeit erheblich verbessert. Auf diese Weise kommen Sie der Leistung typischer kommerzieller Datenbanken nahe, wenn nicht sogar darüber hinaus, und können gleichzeitig mehrere Datenbanksysteme zu einem einzigen konsolidieren, um weniger Aufwand und Kosten zu verursachen. Mit der beliebten Foreign-Data-Wrapper-Erweiterung können Sie bei Bedarf sogar externe Quellen direkt aus PostgreSQL heraus abfragen.

Tatsächlich sind die Erweiterungen selbst so gut, dass viele Unternehmen wie Postgres selbst aufgebaut wurden

CitusDB

,

Zeitstrahl

,

PipelineDB

und andere. Sogar AWS Redshift basiert auf Postgres-Code.

Wenn Sie all das zusammenzählen, haben Sie eine leistungsstarke Datenplattform, die schwer zu übertreffen ist, insbesondere für Startups und kleinere Unternehmen, die eine zuverlässige Auswahl ohne großen Aufwand benötigen.



Antwort 5:

Warum das beliebteste PostgreSQL in verschiedenen Branchen

PostgreSQL ist eine Open-Source-Struktur für die Zugehörigkeit zu sozialen Datenbanken, die eine Vielzahl von Funktionen und Beziehungen für ihre Kunden bietet, sodass sie ihre gesamte Arbeit ohne großen Aufwand verwalten können. Unabhängig davon können Sie sich bedauerlicherweise an den Postgres SQL-Support für Windows oder den relationalen PostgreSQL-Datenbankdienst wenden, falls Sie auf grundlegende Probleme wie bei Postgres SQL stoßen, z. Mit unserem vielseitigen Ansatz betrachten wir Sie sowohl mit spezifischen als auch mit sensiblen Fähigkeiten.

WARUM POSTGRESQL VERWENDEN?

  • Für Datenintegrität
  • Für Parallelität, Leistung
  • Aus Gründen der Zuverlässigkeit Disaster Recovery
  • Für die Sicherheit
  • Zur Internationalisierung, Textsuche

Wer hat Postgress benutzt:

PostgreSQL ist allgegenwärtig. Um dies abzugrenzen, haben wir eine Handvoll von Hunderten, wenn nicht Tausenden von PostgreSQL-Einsätzen vorgestellt, die "Jedermann" berühren, während sie ihren typischen Alltag führen.

Finanzindustrie

PostgreSQL eignet sich hervorragend für die Finanzbranche. PostgreSQL ist vollständig ACID-verträglich und daher perfekt für OLTP-Workloads (Online Transaction Processing) geeignet

GIS-Daten der Regierung

In Kombination mit QGIS oder GeoServer bietet die Open Source-Community leistungsstarke Mittel zum Umgang mit Geodaten. Besuchen Sie die Website von PostGIS, um mehr über unsere Geodatendienste zu erfahren.

Herstellung

PostgreSQL hat in letzter Zeit viel an Dynamik in der Fertigung gewonnen, da Oracle seinen Genehmigungsansatz so geändert hat, dass es für einige Unternehmen schwierig war, hohe Genehmigungskosten zu verwalten

Web-Technologie und NoSQL-Workloads

Moderne Websites erfordern möglicherweise Tausende oder sogar Hunderttausende von Anfragen pro Sekunde, um Ihre Kunden zu bedienen. Anpassungsfähigkeit kann ein großes Problem sein, und die PostgreSQL-Mitarbeitergruppe hat in den letzten Jahren hart daran gearbeitet, diese Frage der Vielseitigkeit zu beantworten.

https://cognegicsystems.com/rim-support-services/database-management/postgres-support/

Für mehr Information:

Support- und Überwachungsdienste für Remote Infrastructure Management (RIM) | USA |

Kontaktnummer: 1-800-450-8670

E-Mail-Addresse-

info@cognegicsystems.com

Adresse des Unternehmens: 507 Copper Square Drive Bethel Connecticut (USA) 06801



Antwort 6:

Oh, warum gibt es meiner Meinung nach nichts ganz "plötzlich".

PostgreSQL gibt es wirklich sehr lange, zumindest seit 1994 (bis in die frühen 80er Jahre). Es ist ein weit verbreitetes Open Source RDBMS, genau wie MySQL.

Ein Gewinn an Popularität kann mehrere Gründe haben:

  • Funktionen und Leistung sowie Skalierbarkeit machen es zu einer geeigneten Alternative für Anwendungen, bei denen Oracle DB traditionell schwer zu ersetzen war
  • Die neueren Funktionen für Key-Value-Storage (JSON / JSONB-Spaltentyp) machen es zu einer Alternative zu NoSQL-Datenbanken
  • PostgreSQL unterstützt Clustering / Master-Slave-Architektur, wodurch es sich gut für Cloud-ähnliche Umgebungen eignet

Ich bin nicht wirklich ein PostgreSQL-Experte, aber es ist normalerweise meine erste Wahl bei der Auswahl eines RDBMS. Dies liegt hauptsächlich daran, dass es recht einfach einzurichten ist und höchstwahrscheinlich alle Funktionen bietet, die ich in Zukunft benötigen könnte.



Antwort 7:

PostgreSQL ist eine hoch erweiterbare und skalierbare relationale Datenbank, die mehrere gleichzeitige Benutzer aufnehmen kann. Aufgrund seines ausgeklügelten Designs erfordert es keinen großen Aufwand für die Wartung des Servers. Die PostgreSQL-Datenbank gehört derzeit zu den Top-Datenbanken auf dem Markt.

PostgreSQL-Systemeigenschaften

Für hochkarätige Installationen, bei denen hohe Leistung und kontinuierliche Verfügbarkeit erforderlich sind, ist die PostgreSQL-Überwachung jedoch unverzichtbar. Applications Manager, ein Tool zur Überwachung der Anwendungsleistung, ist eine von vielen Anwendungen, die mit PostgreSQL als Back-End-Datenbank ausgeführt werden. Mit dem Aufkommen vieler datengetriebener Unternehmen wird es unerlässlich, dass skalierbare Datenbanken der Schlüssel sind. Das PostgreSQL-Überwachungstool von Applications Manager hilft Datenbankadministratoren daher auch, die PostgreSQL-Datenbanküberwachung proaktiv durchzuführen und die wichtigsten Leistungsmetriken zu verwalten.

PostgreSQL-Überwachung

Der Anwendungsmanager verfügt über mehr als 100 sofort einsatzbereite Monitore, mit denen Sie die Anwendung überwachen können, und andere verbundene Dienste können ebenfalls überwacht werden. Sie können auch Benachrichtigungen und Berichte vom Tool erhalten, um Ihre Anwendung zu einem angemessenen Preis besser zu verwalten.

Eigenschaften | ManageEngine Applications Manager