"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

Kleine Frage zu XML

ARM_User 30.09.2016 - 14:42 3210 20
Posts

ARM_User

Big d00d
Avatar
Registered: Feb 2013
Location: Graz
Posts: 228
Hallo,

ist es zulässig bei einer Host -> Client Application eine XML Datei als gemeinsamen Datenspeicher zu verwenden anstelle einer Datenbank?

ill

...
Avatar
Registered: Nov 2003
Location: Salzburg
Posts: 2059
Definiere zulässig?

Ob es gscheid ist, ist hier die Frage

XeroXs

doh
Avatar
Registered: Nov 2000
Location: Lieboch
Posts: 10342
Und was ist eine Host -> Client Application?

Meinst du einen Client plus einem Backend (Server) ?

Was genau verstehst du unter einem gemeinsamen Datenspeicher? (synchronisierte Einstellungen != synchronisierte Videodateien)

Musst bissl mehr rausrücken, tendenziell würd ich aber mal sagen Nein :p

ARM_User

Big d00d
Avatar
Registered: Feb 2013
Location: Graz
Posts: 228
Naja es handelt sich um ein Parkplatzreservierungssystem.
Der Client hat nur ReadPermission.

Naja zulässig, ich bekomme vom "Kunden" keine Datenbank gestellt und da fällt mir nichts besseres ein als XML.
Aber für Vorschläge bzw. Alternativen bin ich sehr dankbar.

Edit: Backend mit einer File triffts dann wohl eher :)
Bearbeitet von ARM_User am 30.09.2016, 15:02

ill

...
Avatar
Registered: Nov 2003
Location: Salzburg
Posts: 2059
Das heißt du brauchst keinen "gemeinsamen Datenspeicher", sondern einfach was, aus dem der Server lesen + schreiben kann um das ganze dann verarbeitet an den Client weiterzugeben, zumindest würd ich mal davon ausgehen.

Parkplatzreservierungssystem klingt ein bisserl nach "Echtzeit" für mich, da würd ich einen meilenweiten Bogen um sowas wie eine XML machen.

ARM_User

Big d00d
Avatar
Registered: Feb 2013
Location: Graz
Posts: 228
Zitat von ill
Das heißt du brauchst keinen "gemeinsamen Datenspeicher", sondern einfach was, aus dem der Server lesen + schreiben kann um das ganze dann verarbeitet an den Client weiterzugeben, zumindest würd ich mal davon ausgehen.

Parkplatzreservierungssystem klingt ein bisserl nach "Echtzeit" für mich, da würd ich einen meilenweiten Bogen um sowas wie eine XML machen.

Triffts genau.
Echtzeit muss es nicht sein. Ist es jetzt auch nicht.
Alle 5 Minuten ruft der Client die XML ab und aktualisiert.

Der nennen wir es mal "Admin" speichert automatisch nach jeder Reservierung.


Edit: Wenn die Präsentation überzeugend ist lässt sich danach über eine Datenbank ala SQL reden.
Bearbeitet von ARM_User am 30.09.2016, 15:14

cr0ssSyntaX

der quotenchinese
Avatar
Registered: Jan 2004
Location: /root/home
Posts: 1884
Auf Dauer würde ich auch empfehlen einen weiten Bogen von XML zu machen.

Ich weiß zwar nicht wie die eigentlichen internen Vorgaben sind, aber mit großer Datenmenge in XML würde ich nicht arbeiten.

ARM_User

Big d00d
Avatar
Registered: Feb 2013
Location: Graz
Posts: 228
Hauptsächlich geht es darum, dass ich mich bei der Präsentation nicht blamieren möchte, jedoch sollten der volle Funktionsumfang gegeben sein.

Denne

Here to stay
Avatar
Registered: Jan 2005
Location: Germany
Posts: 2801
Der Client kann ruhig die Infos als XML-Datei bekommen imho, aber der Server sollte auf einer Datenbank arbeiten.

ill

...
Avatar
Registered: Nov 2003
Location: Salzburg
Posts: 2059
Zitat von ARM_User
Der nennen wir es mal "Admin" speichert automatisch nach jeder Reservierung.

Und dann hast du zwei Reservierungen zur gleichen Zeit und verlierst nur eine Reservierung im besten Fall, oder zerschießt dir gleich deine XML.

Datenbanken bringen halt Sachen wie concurrency control gleich von vornherein mit, was einem das Leben doch leichter macht wenn man sich schon mal um alle möglichen "Nebeneffekte" keine Gedanken mehr machen muss.

Kannst dir ja auch mal nicht relationale Datenbanken ansehen, ob dir das eher zusagt.

XML würd ich eventuell für Sachen wie z.B. Wetterdaten verwenden, wo alle 30 Minuten ein Import läuft und der Server einfach die komplette XML ausliest und Daten daraus anzeigt. Sobald der Server anfängt, auf Userinput da was reinzuschreiben, fällt die Möglichkeit für mich schon komplett flach.

ARM_User

Big d00d
Avatar
Registered: Feb 2013
Location: Graz
Posts: 228
Zitat von ill
Und dann hast du zwei Reservierungen zur gleichen Zeit und verlierst nur eine Reservierung im besten Fall, oder zerschießt dir gleich deine XML.

Hab ich beim schreiben schon darauf geachtet, dass das nicht passiert.

Zitat von ill
Datenbanken bringen halt Sachen wie concurrency control gleich von vornherein mit, was einem das Leben doch leichter macht wenn man sich schon mal um alle möglichen "Nebeneffekte" keine Gedanken mehr machen muss.

Kannst dir ja auch mal nicht relationale Datenbanken ansehen, ob dir das eher zusagt.

XML würd ich eventuell für Sachen wie z.B. Wetterdaten verwenden, wo alle 30 Minuten ein Import läuft und der Server einfach die komplette XML ausliest und Daten daraus anzeigt. Sobald der Server anfängt, auf Userinput da was reinzuschreiben, fällt die Möglichkeit für mich schon komplett flach.

Wird nach der Präsentation als Option zur Verfügung stehen.
Aber damit die Leutchen mal ein funktionales Programm sehen können gibt es doch derzeit nur die Lösung über eine XML oder?

Ich meine ohne DB.

pinkey

Here to stay
Registered: Nov 2003
Location: Tirol/Wien
Posts: 2276
SQLite im "Admin" und dann ein File nach Wunsch, JSON, XML etc. dem Client liefern?

Ein XML als DB is schon etwas gewagt

Denne

Here to stay
Avatar
Registered: Jan 2005
Location: Germany
Posts: 2801
Bezüglich der Präsentation: Entweder du machst es gleich "richtig" oder benutzt ein "fake"-backend (was du in paar Minuten programmiert hast und welches nie im Produktiveinsatz eingesetzt wird), damit sie das Programm in Aktion sehen.

Wie das Programm im Produktiveinsatz arbeiten sollte: Wie hast du dir das ganze vorgestellt? Das Programm hält die Daten im Ram und schreibt es z.B. jede Minute in ein xml-file?

ARM_User

Big d00d
Avatar
Registered: Feb 2013
Location: Graz
Posts: 228
Effektiv soll es wenn es "nach meiner Vorstellung" geht dann Datensätze in eine SQL Datenbank ablegen und der Client diese von dort holen und die Planung tageweise grafisch darstellen.

Der Fake funktioniert auch so.

Für die Präsentation wird es das Fake-Backend geben.
Im Programm selbst erkennt man den Unterschied ohnehin nicht.

Möglicherweise wollen sie dann noch ein paar Wochen mit der Mogelpackung testen, was ja so gesehen kein Problem darstellt

Denne

Here to stay
Avatar
Registered: Jan 2005
Location: Germany
Posts: 2801
Zitat von ARM_User
Effektiv soll es wenn es "nach meiner Vorstellung" geht dann Datensätze in eine SQL Datenbank ablegen und der Client diese von dort holen und die Planung tageweise grafisch darstellen.

Der Fake funktioniert auch so.

So ists ja auch okay.
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz