Josef Petrák - KYBERIE napsal(a):
Přeji hezké pracovní odpoledne všem,
měl bych tu jeden vypečený dotaz. Potřebuji v aplikaci implementovat
zálohování a obnovu dat - data jsou uložena v databázi (obsahuje jak
reprezentace objektů, tak různá binární data).
První nápad byl KLASICKÝ SQL DUMP, ale zde narazíte na nekompatibilitu mezi
jednotlivými databázemi.
Zůstal bych u toho SQL dumpu a nevymýšlel něco nového. SQL dump totiž
kromě vylití dat (zálohování)
řeší i nalití dat (obnova). A ta je relativně složitá (vytvoření
schematu na správném místě, vypnutí constraintů při nalívání dat,
vytvoření sequencí, procedur, triggerů ...). Předpokládám, že takto
zazálohovaná data budete obnovovat na stejné DB.
Vytvořil bych si rozhraní pro zálohu a obnovu a pro každou DB bych
měl speciální implementaci. Implementace by volala nějaký externí SQL
dump a vracela by soubor vytvořený dumpem. Při obnově by to bylo naopak.
Pak jsem zkusil podle Entity diagramu navrhnout XML Schéma, data z databáze
do něho serializovat, přibalit binární data a celé to zaZIPovat. Problémem
je, že některé informace se do zálohy nezapíší - třeba pokud používáte v Java
Persistence API sequence_generator, ten entitou není. A taky se nad tím hodně
špatně refaktoruje.
Napadlo mě, že tohle musel už někdo řešit, ale vygooglil jsem jen jedno
"javovské klikátko" v alpha verzi https://dbbackup.dev.java.net/ bez
veřejného API.
Chtěl bych tedy požádat o rady a náměty, jak by toto šlo napsat.
Předem dík
S pozdravem
Josef Petrák, Java programátor
--------------------------------------------
Email: [EMAIL PROTECTED]
Mobil: +420603254189
ICQ: 1179271149
Web: http://zapisky.info/
--------------------------------------------
KYBERIE
Web: http://www.kyberie.cz
Tel: +420226002016
S pozdravem
Petr Šrajer.