![]() |
db, aber welche?
hi leute
habe wieder mal ein problem, bei dem ihr mir hoffentlich weiter helfen könnt. ich bin gerade dabei ein programm zu entwickeln und bin noch in der planungsphase. programmiersprache wird mit ziemlicher sicherheit java sein. jetzt soll dieses programm auf eine ganze menge daten zugreifen können (messdaten). pro messung fallen etwa 8mb an und das mehrmals am tag. nun bin ich auf der suche nach einem verwaltungssystem für diese daten. ich habe aus java schon auf mysql db als auch auf postgre sql zugegriffen. und wenn ich mich nicht irre so ist die postgre db komplett linzenzfrei. oder ist es vernünftiger die daten in einem dateisystem anzulegen. java eigene db habe ich mir auch schon überlegt, aber diese sind dann von anderen programmen nicht ansprechbar (hat man mir erzählt). falls ihr schon erfahrung mit meiner problematik hattet, bitte ich euch mir ein wenig zu helfen und diese zu posten. danke jopp |
Ich würde auf jeden Fall eine DB dem Filesystem vorziehen. Mit einem gescheiten Schema sind die Abfragen um einiges schneller als im Filesystem.
Zur Datenbank an sich - mysql hat den Vorteil, dass es wenig Overhead hat, was leider zu Lasten der Funktionen geht. Aber wenn du keine Trigger etc. brauchst, dann sollte mysql ganz gut funken und performant sein!. |
Re: db, aber welche?
Nimm eine ordentliche DB. Wennst aufs Geld schaun musst, dann halt eine mySQL. Ansonst solltest eine Oracle oder einen SQL-Server nehmen.
Wenn Du die DB entwirfst, achte darauf ein Star- oder ein Snowflakeschema zu verwenden. D.h. Deine Messdaten in einen riesige Table mit nur wenigen Lookups. |
und postgre sql? diese db ist vollkommen gratis wofür auch immer. habt ihr erfahrungen damit?
|
Nö. Mit postgre habe noch nicht gearbeitet.
|
Postgre ist IMHO ähnlich mySQL mit ein wenig mehr Features, ich kann mich aber auch irren.
Und es kommt wie schon gesagt auf deine Daten an - wie viele Datensätze, wie groß wird die DB, wie viele Abfragen laufen. Für einfache Datenstrukturen ist auch die "kleine" mySQL DB genial schnell, teilweise sogar schneller! |
das problem ist, dass postgre sql eine unix oder linux db ist und sie nur mittels emulator auf einem windows rechner funktioniert. ich möchte im zuge meines programms ein installationsprogramm schaffen, welches auch die db software installiert und automatisch die datenbankstrukur erstellt, damit beim ersten start des programms sofort auf die db zugegriffen werden kann.
kennt ihr vielleicht auch andere datenbanksysteme, welche ich unter windows einfachst installieren und verwenden kann. oder ist es vielleicht doch nicht so schlecht auf die idee mit dem dateisystem zurückzugreifen? einfach zu erstellen, einfach zu verwalten, einfach zu löschen, nicht besonders sicher, tja, was fällt euch noch so ein |
Ist es nicht durch die Verwendung von JDBC vollkommen egal, welche DB man verwendet? So könnte sich der Kunde selbst aussuchen, was für DB er einsetzt?
#Hannes# |
der kunde sollte jedoch gar nicht wissen, dass das programm mit einer datenbank arbeitet
|
Warum darf er das nicht wissen? Außerdem: Wenn dein Installer die DB auch installiert, dass sieht der Kunde das so oder so.
Bei MySQL tät ich im Übrigen aufapssen: MySQL kann NICHT(!) in jedem Fall gratis und lizensfrei verwendet werden! Wann du zahlen musst, hab ich selbst noch nicht durchblickt. Aber es ist nicht so einfach, wie man denkt. #Hannes# |
Wenn du eh Windows verwendest, dann nimm eine Access-Datenbank mit dem Jet-Treiber, da hast du nur das Datenbankfile und den entsprechenden ODBC-Treiber zu installieren. Funktioniert wunderbar und bevor du was im Filesystem speicherst....
|
hi !
Ich arbeite dzt. an einem projekt, das eine DB verwendet, in welche messdaten aufgeziechnet werden. geplant ist, dass pro tag ca. 50.000 datensätze anfallen. hab mich nach längerem überlegen/vergleichen für sql-server 2000 entschieden. gegen mysql sprach die mangelhafte sql92 konformität. (zu diesem zeitunkt - mysql 4 soll ja in dieser hinsich besser sein) postgre sql schaut von den daten/der beschreibung her ganz gut aus - hab damit aber keine erfahrung. oracle ist sicher auch geeigent - für sql server sprach, dass dieser bereits beim kunden im einsatz ist. ich würde auf KEINEN FALL access verwenden ! dieses DBS ist, wenn es auf große datenmengen, multiuser und stabilität ankommt absolut ungeeignet. Die DB wird abundzu mal kaputt - und ist dann auch nicht immer mit dem access-repair befehl zu reparieren. wenn man daten hinzufügt und löscht, wird die db immer größer - bis zu 1 GB und dann geht gar nix mehr. fg -hannes |
Dass du 50.000 Datensätze pro Tag hast hast du ja noch nicht erwähnt... bei der Anzahl ist klar, dass du nicht Access verwenden wirst. Und wenn der Kunde SQL Server schon im Einsatz hat - wie war noch mal deine Frage?
|
also meine db soll in etwa zwischen 400.000 und 10.000.000 werte am tag aufnehmen können. im prinzip sind es abgetastete werte eines signals. darum sind es soviele. und je nachdem wieviele signale analysiert werden sollen fallen die daten an.
und ich denke das mit dem filesystem, ist dann vielleicht doch nicht so eine gute idee. ich sollte mal ausprobieren, wie schnell werte aus einer datei eingelesen werden können. pro messung fallen bis zu 450.000 werte an. und das in einer halben stunden in etwa. 250 pro Sekunde. die werte müssen jedoch nicht in echtzeit in db eingetragen werden. naja. werden wohl einiges ausprobieren müssen um eine schnelle, billige und einfache lösung zu finden. @dub zahlen muss man immer dann, wenn man die mysql db mit eigener sw verkauft oder anbietet. und hier zahlt man eine ganze menge pro dbs. danke für die antworten |
@SNo0py:
Zitat:
ich hab ja garnix gefragt, sondern über meine erfahrungen mit db berichtet. :) @jopp: so interessehalber - was mießt du denn da bitte ?!? pro sekunde 250 werte ist ja schon enorm. das müsste man wohl wirklich mal ausprobieren, welche db so schnell ist. In diesem Fall würd ich dazu tendieren, die werte in ein flat file zu schreiben und dieses bei gelegenheit in die db zu importieren - ev. kann man dann ja eine vorauswahl treffen und muss nicht alles importieren... fg -hannes |
tja, hat sich erübrigt. werden doch nicht so viele werte.
ich danke allen für die antworten. ich werde aber auf jeden fall versuchen es herauszufinden und dies dann posten. mittels textfiles ist es problemlos möglich. schönen abend noch jopp |
Alle Zeitangaben in WEZ +2. Es ist jetzt 12:51 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag