# Ingres (Datenbanksystem)

Ingres [iŋ'grεs] ist ein freies relationales Datenbanksystem. Sein Name ist ein Akronym von „interactive graphics retrieval system“. Ingres entstand in den 1970ern unter der Regie von Michael Stonebraker an der University of California, Berkeley. Er wollte damit das Konzept einer relationalen Datenbank demonstrieren. Der Quelltext von Ingres war unter einer BSD-ähnlichen Lizenz erhältlich. Ein Nachfolgeprojekt von Michael Stonebraker war Postgres, aus dem dann das heutige Open-Source-Projekt PostgreSQL hervorging.
Für die Entwicklung des Systems erhielten Michael Stonebraker, Eugene Wong und Gerald Held 1988 den ACM Software System Award.

## Geschichte
### Anfänge

Ingres entstand wie das IBM System R zur ersten Umsetzung eines relationalen Datenmodells für große geteilte Datenbanken von Edgar F. Codd aus dem Jahr 1970 und erschien im Jahr 1974.
Ingres war in den Versionen 6.4 und IngresII lange Zeit ein häufig eingesetztes Datenbankmanagementsystem (DBMS), hauptsächlich im Rechenzentrumsbetrieb von Universitäten und anderen öffentlich-rechtlichen Körperschaften. Eine Zeitlang konnte es sich wegen günstiger Lizenzierungskosten noch gegen die Dominanz von Oracle behaupten. Mit der Begründung, die Leistungsfähigkeit von Ingres sei vergleichbar mit anderen großen DBMS, wurden seitens des damaligen Eigentümer Computer Associates die Lizenzgebühren stark angehoben, wodurch ein Hauptvorteil gegenüber Oracle verloren ging. In der Folge wurden Ingres-Installationen immer mehr durch Oracle-Implementierungen ersetzt (Weltweit im Jahr 2004 nur noch ca. 15000 Installationen). Um den völligen Untergang von Ingres zu stoppen, wurde ab Version Ingres r3 Ingres als Open-Source-Software freigegeben.
Neben den geringen Lizenzgebühren hatte IngresII gegenüber etwa Oracle den Vorzug eines geringeren Ressourcenbedarfs, weshalb es auch auf kleineren Maschinen eingesetzt werden konnte. Nachteile waren die schwierigere Bedienbarkeit, die geringere Zahlen von Plattformen, auf denen dieses System lief, und weniger Ingres-fähige Applikationen. Mit verantwortlich für den Niedergang waren das unzureichende Marketing durch Computer Associates und der daraus resultierende fehlende Umsatz sowie auch ein Mangel an IT-Technikern, die dieses System beherrschen und im Bedarfsfall herangezogen werden konnten.
Ein Schwäche von IngresII war, dass die Bearbeitung eines SQL-Statements nicht durch mehrere Prozessoren gleichzeitig erfolgen konnte. Auch wenn mehrere CPUs eingesetzt wurden, konnte es passieren, dass eine große Abfrage die gesamten Ressourcen einer CPU erhielt, wodurch die erforderliche Kommunikation zwischen den CPU-basierten Ingres-Servern nicht mehr möglich war und es in der Folge zu einem schweren Leistungseinbruch kam. Die aktuelle Version kennt dieses Problem nicht mehr, weil CPUs Abfragen arbeitsteilig abarbeiten können.

### Ingres heute

Seit 2005 ist Ingres wieder ein eigenständiges Unternehmen, mit Hauptsitz in Redwood City (Kalifornien). Die aktuelle Ingres-Version ist Ingres 11.
Mitte 2010 wurde mit VectorWise zunächst für Linux 64-Bit (Windows 64-Bit angekündigt) eine neue Datenbank-Engine veröffentlicht, die für die Datenverarbeitung auf den Prozessorcache zurückgreift und damit die Datenanalyse bei lesenden Anwendungen erheblich beschleunigt.
   “We ported a business application from Oracle to Ingres VectorWise and were astounded by the substantial performance increases, which were up to 70×.”
   „Wir portierten eine Geschäftsanwendung von Oracle auf Ingres VectorWise und waren erstaunt über die erheblichen Leistungssteigerungen, die bis zu 70-fach betrugen.“

### Versionsgeschichte

* Berkeley-Ingres („University“ Ingres, z. Zt. v. 8.9, gemeinfrei)
Das Berkeley-Ingres in einer früheren Version war die Grundlage für das kommerzielle Ingres (zuerst Relational Technology, dann Ingres Corporation, dann ASK/Ingres, dann aufgekauft durch Computer Associates, heute Investment-Firma Garnett & Helfrich Capital unter dem Namen Ingres Corporation) ab OpenINGRES, andererseits auch für das gemeinfreie postgres, dessen Version 4.2 die Grundlage für das heutige PostgreSQL war.
* Ingres 5.x
* Ingres 6.1–6.3
* Ingres 6.4
* OpenINGRES 1.0 bis 2.0
* IngresII 2.0 bis 2.6
* Ingres r3 (3.0) (unter der „CA Trusted OpenSource License“)
* Ingres 2006 (unter Version 2 der GPL)
* Ingres 2006 Release 2
* Ingres Database 9.2
* Ingres Database 9.3
* Ingres Database 10
* Actian Ingres 11