300 x 500 kann jede DB bewältigen und würde wohl auch für ein Programm zum schreiben in eine DB keine Herausforderung sein
Announcement
Collapse
No announcement yet.
Anschaffung von Datenbank und Servern
Collapse
X
-
Originally posted by Smart View PostDas hängt stark von den Anzahl der Geräte ab. Momentan etwa 500 stück.
Originally posted by Smart View PostNicht größer als ca. 300KB.
Originally posted by Smart View PostDas kann ich so pauschal beantworten. Aber realtiv viele.
Originally posted by Smart View PostBis zu 10 Jahren.
Ich nehme jetzt mal an das die Wandlung in die DB die 10fache Datenmenge verursacht (wenn das Binärformat kompakt war).
D.h. wir haben inital 5 TB und Täglich 150 MB an Daten.
Das ist ein Menge die einen 0815-DB-Server nicht überfordert. Als Datenbank dürften selbst die kleinen Versionen von MS SQL-Server reichen (von der Kostenlosen mit 10 GB-Grenze würde ich absehen).
Für die Erstaufsetzen würde ich sogar sagen das es reicht diese DB einfach auf einen bestehenden DB-Server aufzusetzen und keine eigen HW/Installation vorsieht.
Sollte später doch der Server ein Engstelle werden kann man doch noch eigene HW vorsehen.
Comment
-
Momentan ist eine kostenlose Version von MSSQL Server 2008 R2 im Einsatz. Also, wie es aussieht, muss ein programm für dieses Unternehmen entwicklet werden, dass alles parst und in die Datenbank überträgt. Ich glaube, es wäre auch nicht verkehrt, wenn ein eigener Server für die Datenbank hingestellt wird, die halt nur die Datenbank und die Daten beinhaltet und um eine bestimmte Zeit angestoßen wird, um die Datetein zu parsen. Aber wie es aussieht, wenn ich mich nicht irre, kann Server 2008 R2 nur bis 10GB Daten aufnehmen, was relativ schnell erreicht werden kann. Welche SQL-Server ist nun dafür geeignet?
Gruß
Comment
-
Originally posted by Smart View PostMomentan ist eine kostenlose Version von MSSQL Server 2008 R2 im Einsatz. Also, wie es aussieht, muss ein programm für dieses Unternehmen entwicklet werden, dass alles parst und in die Datenbank überträgt.
Originally posted by Smart View PostIch glaube, es wäre auch nicht verkehrt, wenn ein eigener Server für die Datenbank hingestellt wird, die halt nur die Datenbank und die Daten beinhaltet und um eine bestimmte Zeit angestoßen wird, um die Datetein zu parsen.
Originally posted by Smart View PostAber wie es aussieht, wenn ich mich nicht irre, kann Server 2008 R2 nur bis 10GB Daten aufnehmen, was relativ schnell erreicht werden kann. Welche SQL-Server ist nun dafür geeignet?
Comment
-
Also, wie es aussieht, muss ein programm für dieses Unternehmen entwicklet werden, dass alles parst und in die Datenbank überträgt
Comment
-
Jede 32-Bits steht für eine Zahl. Man muss also die Daten stückweise auslesen (jeweils 32-Bits) und nach der Berechnung der entsprechenden Zahl, diese in eine Datenbank schreiben. Ich weiß es nicht genau, ob diese Aufgabe Per Import-Wizard im Management Studio zu erledigen ist. Mir kommt so vor, als man um eine Programmierung nicht so einfach herum kommen kann.
Nur die kostenlose Express Version. Jede Version > kostenlos kann so viel Daten halten das die DB selbst im Jahre 3000 noch nicht voll ist.
GrußZuletzt editiert von Smart; 08.05.2014, 07:55.
Comment
-
Originally posted by Smart View PostJede 32-Bits steht für eine Zahl. Man muss also die Daten stückweise auslesen (jeweils 32-Bits) und nach der Berechnung der entsprechenden Zahl, diese in eine Datenbank schreiben. Ich weiß es nicht genau, ob diese Aufgabe Per Import-Wizard im Management Studio zu erledigen ist.
Originally posted by Smart View PostMir kommt so vor, als man um eine Programmierung nicht so einfach herum kommen kann.
Originally posted by Smart View Postheißt das, dass eine Datenbank - wie z.B. SQL-Server 2008 - unbegrenz Daten aufnehemn kann, bis die Festplatte voll ist? Kann eine Datenbank wie z.B. MSSQL (2008 R2) überhaupt so viele Daten verwalten.
Comment
-
Du solltest Dir vielleicht vorher überlegen was Du mit den Daten anfangen willst. Für Volltextsuche sind klassische RDBMS Datenbanken weniger geeignet. Solltest Du sowas wollen kannst Du Dich mal in Richtung Lucene/Elasticsearch umschauen. Solltest Du einfach nur einen zuverlässigen Store suchen, dann würde ich erstmal RAID empfehlen. Wenn Du dazu noch darauf suchen willst und das nicht in Echtzeit, dann könnte auch ein Hadoop Cluster in Frage kommen. Ich denke klassische RDBMS wären für mich nicht die erste Wahl um Dateien abzuspeichern. RDBMS sind eher für strukturierte Daten zu gebrauchen wie z.B. Artikel in einem Shop.
Comment
-
In Oracle kann man externe Tabellen definieren im fixed format ohne field oder row delimiter.
Damit kann man z.B. Deine 4 byte (32 bit) laden, entweder byte für byte oder direkt zusammenfassen.
In Deinem Fall wäre die Byte Codierung der 32bit Zahlen zu prüfen.
Bilden mehrere 32Bit Zahlen einen Record, so sind entsprechend viele Felder vorzusehen.
Mit dem Verfahren kann man auf eine oder mehrere der 300 KB Dateien zugreifen und sie per SQL auslesen, direkt aus der Datei. (GgF. müssen die ausgelesenen Zahlen wegen endianess oder was auch immer, wirklich noch transformiert werden)
Per sql kann man sie prüfen, filtern und in geeignete Zieltabellen verschieben.
Dazu brauchst Du nur eine Datenbank. Auch hier gilt, die freie Oracle DB ist auf ein bestimmtes Volumen beschränkt, glaub 10 GB.
Ich kenne mich mit MSSQL nicht so aus, aber gut möglich, dass es dort auch so (ähnlich) geht, wenn auch nicht per Wizard.
Ansonsten ist das was Du vor hast typisches ETL, die Vorstufe von Datawarehouse.
Dafür gibt es recht viele Tools, von denen ich aber keines wirklich kenne. Jeder DB Hersteller will per se Daten so gut wie möglich laden können (besonders die der Konkurrenz). FixedFormat Binär Import sollte das eine oder andere davon beherrschen.Gruß, defo
Comment
-
LOL...
Ihr Diskutiert seit Tagen darüber aus 'irgendwelchen' Geräten Textdateien mit binärem Inhalt - ob der nun weitere Struktur hat oder nicht - aber 300kb groß ist - irgendwie in eine Datenbank zu schreiben um dann irgendwas zu berechnen....
Da ist doch erstmal sch.. egal welches DBMS oder Programmiersprache... Butter bei die Fische Wer wie was warum.
Ich hab schon ... ich mein ....
Ich hab so das Gefühl der "Smart" kommt so nie nich nie zur Lösung - also nach dem was man anhand der Angaben so raten kann, haben sich die Anforderungen von Beitrag 1 bis jetzt so 180° gedreht....
Aja, und der Bernhard Geyer sollte sich die Kontaktdaten gleich geben lassen um schonmal eine erste Rechnung zu stellen.... klärt dann schonmal einen Teil der Frage, was es Kostet LOL
Comment
-
@Ralf Jensen
Na, was heißt da dünn...
Man kann da eine Menge hinein interpretieren. Das ist ja gerade das Problem...
eine Frage: Ist der Dateiaufbau immer gleich oder von beschriebener Struktur ? (Hat man oft bei 'Geräten')
Z.B. sind die Geräte irgendwelche Leistungszähler, die z.B. eine SMS oder e-mail schicken,. und ein Programm daraus zum Schluss eine Jahresabrechnung machen soll?
Sind das Log dateien , meinetwegen von irgendwelchen Anwendungen, die in erster Linie archiviert werden sollen oder oder oder
Nach dem Stil in dem er schreibt , vermute ich, dass er auch nicht für sich selbst sucht, sondern "für das Unternehmen" - das hat mindestens zwei Konsequenzen:
1.) er weiß ggf. selber nicht so genau was wie und warum und holt sich hier erstmal die Tipps was er überhaupt fragen soll
2.) ist es so wie ich vermute, dann ist die Seitenlinie doch garnicht so verkehrt...
Also wenn er in der Not ist da Informationen zu holen, dann kann er doch wenigstens sagen was ominöse Geräte da zu welchem Zweck was speichern. Sonst wird das doch nie was...
... das MS ein DBMS hat, das schon in der 2008 R2 mehr als 10GB verwalten kann, bis die Festplatte voll ist ja schon eine Erkenntnisdie google auch so liefert...
Ich geh doch auch nicht zum Arzt und frage :
Hey, welche Reserve - Antibiotika empfehlen sie bei einer resistenten xy-Streptokokken-infektion ?
Da fragt der doch - hey, wo tut es weh...
Dann sag ich : Meine Mutti hat einen fiesen Virus..
Sagt der Arzt : #Q&%#...
Das ist ja nicht böse gemeint, aber die Gefahr da auch einen Tipp zu geben, der nach hinten los geht ist ja so auch gegebenZuletzt editiert von tömmel; 11.05.2014, 23:52.
Comment
-
Hallo Forum,
@tömmel
Danke für deine Antwort. Aber ein typischer Fall für "Lange Rede kurzer Sinn"!
@fanderlf
Vielen Dank. Im Laufe des Gesprächs habe ich es so verstanden, dass eine Volltextsuche bei binären Daten nicht möglich ist.
@defo
Mit dem Verfahren kann man auf eine oder mehrere der 300 KB Dateien zugreifen und sie per SQL auslesen, direkt aus der Datei.
Damit kann man z.B. Deine 4 byte (32 bit) laden, entweder byte für byte oder direkt zusammenfassen.
Gruß
Comment
-
@smart
Step 1: Anlegen einer "external Table", im Prinzip eine Art Mapping der- in deinem Fall- Binärdatei auf eine klassische Tabellenstrutur.
Verwendung der external Table ist zumindest im Lesebetrieb vollkommen transparent zu einer echten Tabelle, Zugriff per "Select .. from <xtTablename> where.."
Step 2: Verarbeitung der Daten aus "external Table", das kann autark von der DB geschehen oder aber durch ein separates Programm. Prinzip ist immer gleich.
a)Select [plus Transformation] from xtTable
b)Insert into Desttable
[c) Je nach Art der Transformation muss ggF. eine zusätzliche Puffertabelle oder komplexe SP verwendet werden, falls ein "Insert into .. Select.." nicht reicht.
Wird es von der DB allein gemacht, so werden dafür Storec Procedures angelegt und ggf dann per Scheduler oder so zyklisch geladen.
Die Definition der Felder erfolgt innerhalb der "Access Parameters" clause, man gibt die Gesamtzahl der Bytes an und legt dann Felddefinitionen darüber, fürs LeseInterface auf die Binärdatei.
Für den SQL Zugriff gibt man noch ein Interface an, das anders aussehen kann. Innerhalb der Access Parameters kann z.B auch Endianess definiert werden.
Such mal nach "External Table", "Access Parameters", "Records fixed" (ggF. darauf achten, dass die Doku/Beispiele auch halbwegs aktuell sind, also >= Version 10)
Du kannst das Prinzip mit einer halbwegs aktuellen Oracle Express Version ausprobieren und eine IDE / SQL client.
Man braucht nur 1 create table statement (das es vielleicht in sich hat),
eine Beispieldatei
und kann dann mit SQL Selects rumspielen.
@tömmel
Ich kann Deine Kritik verstehen, wenig Informationen = wenig, unpassende, grobe Antworten
Aber so ist das halt im Netz, jeder macht es so, wie er es für richtig hält.
Will man verlässliche, präzise Antworten, muss man halt Supportverträge abschließen.Gruß, defo
Comment
Comment