# double Array in MySQL Datenbank speichern/laden



## bic-nobody (1. Feb 2006)

Hallo!

also ich hab nen double Array mit ca 8000 Werten, welches ich in einer MySQL (Version 5.0.18) DB speichern will.

Meine jetztige Idee ist, das in ein BLOB zu speichern und wieder zu laden,
leider finde ich nichts, wie ich das double-Array in Bytes umwandeln und nachher auch wieder zurückwandeln kann.

kennt einer von euch eine Lösung?
oder gibt es evtl. noch eine andere möglichkeit, das Array in der DB zu hinterlegen?

danke für eure Antworten!


----------



## Bleiglanz (1. Feb 2006)

crate table

warum nicht 1 Zeile = 1 Array-Eintrag


----------



## bic-nobody (1. Feb 2006)

ich denke, das das irgendwann zuviele Einträge werden - wenn man 1000 mal son Array abspeichert, das wären das ja schon 8.000.000 Einträge - ich denke das ist zuviel auf die dauer...


----------



## Bleiglanz (1. Feb 2006)

na und? was sind schon 8MB??

wenn du das byte-Array in ein BLOB schreibst hast du auch einen Haufen Daten, zwar uU nicht ganz soviel aber was solls

Ausnahme: es ist ein Bild oder irgendwas anderes "binäres", ansonsten ist es ziemlich schlechter Stil, Aufzählungen in eine einzige DB-Spalte zu quetschen


----------



## bic-nobody (1. Feb 2006)

es geht mir nicht um die größe der Daten, sondern um die Anzahl der Einträge - 8Mio Einträge sind denke ich langsamer auszuwerten/zu durchsuchen wie 1000 Einträge!


----------



## flanker (1. Feb 2006)

Du kannst auch "SET" oder "ENUM" Datentyp setzen, schreibst du kleine Mapping-Routine und ist ok.
ansonsten, ist "Blob" bessere Lösung(meiner Meinung nach, natürlich), als ein double in eine Zeile, denn du brauchst eine weitere Spalte, die ein Array identifiziert(ein Array pro Tabelle kommt nicht in Frage, oder?) : ich schätze mal wird sehr langsame Lösung.


----------



## bic-nobody (1. Feb 2006)

aber wissen tust du es auch nicht, wie ich ein double Array in ein BLOB schreibe/lese?


----------



## flanker (1. Feb 2006)

http://www.java-forum.org/de/viewtopic.php?t=8626&highlight=blob
nach "Blob" durchsuchen (oder API lesen)


----------



## bic-nobody (2. Feb 2006)

das mit dem Blob laden und speichern kenn ich ja bereits

aber wie wandel ich ein double-Array den in ein byte-Array um?


----------



## Bleiglanz (2. Feb 2006)

serialisier es einfach


----------



## Chris Baumann (2. Feb 2006)

ausserdem ist es nicht so wichtig wiviele daten es sind, sondern wie sie im schema angelegt sind. Da treten dann die performance krücken auf, wenn du das nicht effizient abfüllst. 

Normalerweise macht es sind die objekte im ähnlichen stil in der db abzulegen, wie sie hierarchisch miteinander verkettet sind. Stichwort persistence.

EDIT: grammatik nix gut hoite


----------



## bic-nobody (3. Feb 2006)

Danke für eure Hilfe, das mit dem Serialisieren hat geklappt!


----------



## mp (5. Mrz 2006)

Hi! 
Habe genau da gleiche Problem wie der Themaverfasser. Er sagt, das mit dem Serialisieren habe geklappt. Wie ist das gemeint? Ich will also ein double-Array in einen Blob quetschen, nur wie?

Danke im Voraus!


----------

