Kleiner Hinweis zu
mySQL und dem Thema: "Das Locking soll abhängig von der Storage-Engine sein"
-> das ist manchmal ein entscheidender Vorteil; nicht für alle Daten braucht man Transaktionssicherheit und die Performance ist ohne Transaktionssicherheit nun mal schneller; es gibt z.B. in meinem Umfeld oft Daten, die eh einmal am Tag komplett neu geladen werden und dies soll schnell gehen; wenn es hier Probleme gibt, ist es einfacher die Daten neu zu laden als über irgendwelche Transaktions-Rollbacks die Daten wiederherzustellen; bei Oracle und MS-
SQL bedeutet dies, dass du über
SQL-Loader oder bcp (BulkCopy) gehen muss (also sehr nah an jeweiligen
DB programmierst und optimierst), bei
MySQL kannst du dies auch mit
SQL-Mitteln lösen, weil du für die betroffenen Tabellen dann eine auf Performance optimierte Storage-Engine wählst;
Wenn du
mySQL in Betracht ziehst, solltest du aber auch einen Blick auf MariaDB werfen, weil dies die OpenSource-Variante zu
MySQL ist, welche ja mittlerweile Oracle gehört und auch bei
MySQL fallen je nach Einsatzzweck Lizenzgebühren an. Aber deine Größenordnung sieht schon so aus, dass eine
DB mit dementsprechendem Support sinnvoll sein sollte.