AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Welche Server-DB bei großer Datenmenge

Welche Server-DB bei großer Datenmenge

Ein Thema von DataCool · begonnen am 4. Apr 2013 · letzter Beitrag vom 6. Apr 2013
Antwort Antwort
Seite 2 von 4     12 34   
mcinternet

Registriert seit: 22. Apr 2010
Ort: Odenwald
193 Beiträge
 
Delphi 10.3 Rio
 
#11

AW: Welche Server-DB bei großer Datenmenge

  Alt 4. Apr 2013, 12:22
Nimm Oracle,

das Ding ist hochperformant, skalierbar und bietet aufgrund der Möglichkeiten viele Prozeduren, Function etc. direkt in der Datenbank ausführen da die beste Möglichkeit.


Gruss

McInternet
Jörg
  Mit Zitat antworten Zitat
Benutzerbild von DataCool
DataCool

Registriert seit: 10. Feb 2003
Ort: Lingen
909 Beiträge
 
Delphi 10.3 Rio
 
#12

AW: Welche Server-DB bei großer Datenmenge

  Alt 4. Apr 2013, 12:23
Zitat:
Bei zirka 1 Terabyte ist es schon eine sehr große Datenbank. Joins können sehr langsam werden (wieviel Terabyte RAM hat der Server, und wie schnell und groß ist sein Festplatten-Speichersystem?).
Die Server-Konfiguration kann mehr oder weniger frei bestimmt werden.


Zitat:
Von den genannten Datenbanken würde ich mir vor allem PostgreSQL genauer ansehen.
Höre von vielen Seiten nur gutes, nur möchte man in einem nicht kleinem Projekt auf eine
DB setzen, mit der man persönlich noch keine "richtigen" Erfahrungen gemacht hat ?!

Zitat:
Je nach Anforderungsprofil kommt aber auch eine NoSQL Datenbank in Frage. Viele NoSQL-Implementierungen unterstützen verteilte Datenbanken mit redundanter Datenhaltung auf vielen Servern, beispielsweise unter Nutzung einer verteilten Hashtable. Damit können die Systeme einfach skalieren und Ausfälle einzelner Server überstehen.
Glaube nicht das das in Frage kommt, denn es geht mir nicht darum die Daten verteilt zu halten
sondern zentral zusammen, damit die Auswertungen "Outlet-Übergreifend" durchgeführt werden können.
Das "Table Partitioning" habe ich jetzt einfach mal in den Raum geschmissen, weil ich mir bei den Bewegungsdaten
sehr gut eine Aufteilung nach Jahren vorstellen könnte. Sinn einer Aufteilung wäre aber nur eine schnellere Antwortzeit
bei der Datenauswertung.

Zitat:
Eigentlich jede die aktuell weiterentwickelt wird. Der MS-SQL-Server kann z.B. 524,272 terabytes pro DB verwalten.
Die Liste der Features und Maximal-Größen hatte ich mir auch schon im Vergleich angesehen.
http://en.wikipedia.org/wiki/Compari...gement_systems

^^ Demnach könnte Firebird (DB-Size unlimited; Max. Table-Size 32 TB) die Datenmengen auch "locker" bewältigen,
in meinen Augen besteht aber doch ein riesen Unterschied zwischen Maximal und performant.


@All:
Um es noch mal etwas genauer darzustellen. Bei den Bewegungsdaten handelt es sich um elektronische Bon-Rollen
von Kassen-Systemen. Für die die diese nicht kennen, da stehen dann Daten drin wie:
- Bon geöffnet
- Kellner xyz boniert Artikel xyz
- Artikel xyz wird storniert(Falscheingabe)
- Gäste haben sich umgesetzt von Tisch A nach Tisch B
- .....
- Bon wird geschlossen
- Bezahlung in X Arten

Bei der momentanen DB-Struktur gibt es somit eine Table für Verkaufstransaktionen(25% Datenmenge), Details zu einer Transaktion(65%) verknüpft über ID und noch Mwst Details(15%) zu einer Transaktion ebenfalls über eine ID verknüpft.

Primäre Auswertungen werden sein:
- Wie oft wurde Artikel ABCD im letzten Jahr zwischen 18:00 und 19:00 Uhr verkauft
^^ einmal für Standort A oder Standorte B, C und D oder generell

- Stornos / Summe / Anzahl

- Besondere Rabatte

uvw.

Hoffe das Ziel ist jetzt noch etwas klarer geworden.

Greetz Data
Der Horizont vieler Menschen ist ein Kreis mit Radius Null, und das nennen sie ihren Standpunkt.

Geändert von DataCool ( 4. Apr 2013 um 12:30 Uhr)
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#13

AW: Welche Server-DB bei großer Datenmenge

  Alt 4. Apr 2013, 12:25
Table-Partitioning brachte bei MSSQL in einer Fallstudie (pro Monat eine Partition) einen Geschwindigkeitszuwachs um den Faktor 1000. Die Größe der DB war vergleichbar. Bringt also schon was.

MSSQL: Ist ganz gut.
Dafür, das der SQL-Server im TPC-E Benchmark alle Top-10 Plätze belegt, ist diese Einschätzung vielleicht etwas zu allgemein gehalten.

Techniken:
a) gutes Datenbank-Design
b) vernünftige Indizes
Auch ein wenig dürftig. Damit kommst Du bei TB-Datenbanken nicht weit. Table-Partitioning oder vielleicht ein in-memory OLAP server wäre eine Option. PALO ist frei und ganz lustig. Wenn Geld vorhanden ist, könnte Jedox (Freiburg) eine Möglichkeit sein. Ich weiß allerdings nicht, ob sich das bei TB-Größen lohnt.

In jedem Fall wäre die von mjustin erwähnten NoSQL-Systeme eine Betrachtung wert. Und die können verteilt abspeichern, müssen aber nicht. Persönlich würde ich (weil ich damit groß geworden bin) den SQL-Server verwenden.
  Mit Zitat antworten Zitat
mcinternet

Registriert seit: 22. Apr 2010
Ort: Odenwald
193 Beiträge
 
Delphi 10.3 Rio
 
#14

AW: Welche Server-DB bei großer Datenmenge

  Alt 4. Apr 2013, 12:31
Wir setzen hier bei Datenmengen > 20T Oracle auf ner AS400 ein. Ca. 5000 Clients greifen laufend darauf zu und es werden viele größere Imports und Exports gefahren. Eine Oracle kann sowas schneller liefern als jede andere SQL.
@Data: Wir können gern mal telefonieren.

Das einzig noch performantere ist TeraData ...

Gruss

McInternet
Jörg
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#15

AW: Welche Server-DB bei großer Datenmenge

  Alt 4. Apr 2013, 13:27
Dafür, das der SQL-Server im TPC-E Benchmark alle Top-10 Plätze belegt, ist diese Einschätzung vielleicht etwas zu allgemein gehalten.
Wurde denn beim TPC-E irgendetwas anderes als MS SQL Server betrachtet?
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
tsteinmaurer

Registriert seit: 8. Sep 2008
Ort: Linz, Österreich
530 Beiträge
 
#16

AW: Welche Server-DB bei großer Datenmenge

  Alt 4. Apr 2013, 13:34
Ich würde hier in der Zentrale ganz klar eine Trennung zwischen OLTP und OLAP machen, weil du da ev. auch unterschiedliche Anforderungen in Bezug auf Verfügbarkeit, Indexierung, Ressourcen, Änderungshäufigkeit etc. haben könntest. D.h. aus meiner Sicht kommst du dann auch für die OLTP Datenbank serverseitig mit einem "Mid-Range DBMS" aus und hättest dann zum Beispiel die Möglichkeit die Client-DBs und die OLTP Server-DB mit einer Technologie (z.B. Firebird) zu handhaben, was kein Nachteil wäre, wenn man hier nur ein DBMS im Einsatz hat.

Bzgl. OLAP kann man sich dann genauere Gedanken machen, welche Anforderungen man für das Reporting bzw. der Analyse tatsächlich erfüllen muss. Technologisch gesehen kann das dann zum Beispiel mit ROLAP erfolgen (OLAP Server auf eine relationale Datenbank) oder halt MOLAP als Microsoft Analysis Services. Hier hat bereits die Standard Edition einiges zu bieten. Tabellenpartitionierung ist eine feine Sache, um eine Tabelle mit sehr vielen Datensätzen in kleinere Häppchen physisch zu unterteilen. Aber dieses Feature lassen sich die Hersteller auch bezahlen, da dies in der Regel erst in den höchsten Editionen und im Falle von Oracle nochmals als zusätzliche, kostenpflichtige Option auf die bereits teure Enterprise Edition verfügbar ist. Aber die Oracle-Partitionierung ist eine feine Sache. Hab sie selber im Einsatz. Man muss sich halt die Frage stellen, ob man Partitionierung wirklich benötigt, oder ob man Datensätze in eine "Archiv" Datenbank auslagern kann, die eigentlich kaum mehr geändert/angegriffen wird.

NoSQL ist in aller Munde, aber eine ganz andere Denkweise ist hier notwendig (fängt schon mal an, dass weg ist vom guten alten relationalen Modell) und besitzt auch ganz andere Anforderungen an den Betrieb, um die Skalierbarkeit bei großen Datenmengen ausnutzen zu können. Sprichwort: Cluster. War selbst in Projekten mit HBase (darunterliegendem Hadoop) und auch Cassandra involviert und für die Anforderungen dort, war eine RDBMS Lösung nicht denkbar. Wir hatten es hier aber auch nicht mit einer OLTP Umgebung zu tun, wo wir ACID benötigten.
  Mit Zitat antworten Zitat
Benutzerbild von DataCool
DataCool

Registriert seit: 10. Feb 2003
Ort: Lingen
909 Beiträge
 
Delphi 10.3 Rio
 
#17

AW: Welche Server-DB bei großer Datenmenge

  Alt 4. Apr 2013, 14:12
Erstmal Danke für die rege Beteiligung

Oracle, kenne ich auch; Kommt für mich in diesem Fall aber nicht in Frage!
Das ganze Projekt soll nach Fertigstellung auch ohne Extra-Admin auskommen

Eine Trennung der verschiedenen Datenbanken(Programm-DB z.B. Firebird; Bewegungsdaten mit XYZ)
ist eventuell möglich. Diesbezüglich muss ich nochmal in Ruhe nachdenken,
ob in dieser Konstellation trotzdem alle Informationen ohne "großes verbiegen" abfragbar sind.

Weiterhin ist noch zu erwähnen das die Tabellen der Bewegungsdaten nur wachsen
und der Begriff Archiv es ziemlich genau trifft.
Auf die Tabellen laufen immer nur "INSERT" Statements und diese Daten
werden dann nachher nach Bedarf "selektiert".

Greetz Data
Der Horizont vieler Menschen ist ein Kreis mit Radius Null, und das nennen sie ihren Standpunkt.

Geändert von DataCool ( 4. Apr 2013 um 14:26 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Nersgatt
Nersgatt

Registriert seit: 12. Sep 2008
Ort: Emlichheim
693 Beiträge
 
Delphi 10.1 Berlin Professional
 
#18

AW: Welche Server-DB bei großer Datenmenge

  Alt 4. Apr 2013, 14:42
Das ganze Projekt soll nach Fertigstellung auch ohne Extra-Admin auskommen
Kling für mich wie "wir wollen ein 100-stöckiges Hochhaus bauen - das soll aber nach Fertigstellung ohne Hausmeister auskommen"...
Jens
  Mit Zitat antworten Zitat
Patito

Registriert seit: 8. Sep 2006
108 Beiträge
 
#19

AW: Welche Server-DB bei großer Datenmenge

  Alt 4. Apr 2013, 14:49
Erstmal Danke für die rege Beteiligung
Weiterhin ist noch zu erwähnen das die Tabellen der Bewegungsdaten nur wachsen
und der Begriff Archiv es ziemlich genau trifft.
Auf die Tabellen laufen immer nur "INSERT" Statements und diese Daten
werden dann nachher nach Bedarf "selektiert".

Greetz Data
Wenn in die Log-Tabelle nur Inserts kommen, kann man z.B. auch leicht
eine Tages-Statistik-Tabelle per Trigger befüllen. Dann hat man schon mal
wesentlich weniger Daten, die man analysieren muß.

Schau Dir auch genau an wie effizient Du deine Daten speicherst. (Normalisieren...)
Die Kantine in meiner Datenbank verursacht gerade mal 1 MB an Daten im Jahr.
Wenn man im Jahr 100 GB voll kriegen will muß man schon viel Hunger haben.

Manchmal müssen auch nicht alle Log-Informationen in die Datenbank - die können ruhig in
irgendwelche Log-Files bleiben - nur die interessanten Daten braucht man in der Datenbank.
  Mit Zitat antworten Zitat
Benutzerbild von DataCool
DataCool

Registriert seit: 10. Feb 2003
Ort: Lingen
909 Beiträge
 
Delphi 10.3 Rio
 
#20

AW: Welche Server-DB bei großer Datenmenge

  Alt 4. Apr 2013, 14:51
Das ganze Projekt soll nach Fertigstellung auch ohne Extra-Admin auskommen
Kling für mich wie "wir wollen ein 100-stöckiges Hochhaus bauen - das soll aber nach Fertigstellung ohne Hausmeister auskommen"...
Natürlich soll und wird es eine Betreuung geben!
Aber keinen Extra ODBA der nur diese DB/Server betreut.

Greetz Data
Der Horizont vieler Menschen ist ein Kreis mit Radius Null, und das nennen sie ihren Standpunkt.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:49 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz