Private Online Datenbanken
Ich bin gerade am überlegen, ein kleines Projekt umzusetzen, um mit FMX/Android zu spielen. Es soll eine kleine Bücherverwaltung entstehen und dafür möchte ich eine Datenbank einzusetzen, die online zur Verfügung steht. Damit könnte man dann etwa Familienmitgliedern oder Freunden einen Zugang ermöglichen oder schnell mal im Bücherladen sehen ob die aktuellen Angebote schon irgendwo im Bücherregal vor sich hin vegetieren (alles mit der App, kein Webzugang oder ähnliches).
Wenn ich diese App weiter geben möchte, sollte jeder Nutzer natürlich seine eigene Datenbank pflegen können. Daher kommen wohl nur noch Dropbox und Konsorten als Cloud-Speicher in Frage(?). Bei Google gab es mal die Base API (ist aber offensichtlich zur Shopping API mutiert). Die scheint nicht das Richtige zu sein? Bei DropBox habe ich die DataStore API gefunden. Hat damit schon jemand Erfahrungen (mit Delphi) gemacht? Kennt ihr noch andere Alternativen? |
AW: Private Online Datenbanken
Hey :)
Also du hast grundsätzlich viele Möglichkeiten das umzusetzen: Entweder wie von dir beschrieben oder du besorgst dir einen Hoster deiner Wahl. Viele Webhoster haben schon mysql Datenbanken mit in Paketangeboten. Manche Anbieter legen den mysql Port nicht ins öffentliche Netz; das heißt, man hat dann nur per PHP direkt auf dem Server Zugriff zur Datenbank (und somit dann im Web z.B. durch das Webinterface phpmyadmin). Das führt mich zur zweiten Lösung, die dich dann auch unabhängig von Datenbank oder Backendtechnologie X macht: Schreib dir ein kleines Backend, das auf dem Server den konkreten Datenbankzugriff vornimmt und das ganze nach außen per HTTP zugreifbar macht. Wenn du das nicht in PHP machen willst, sondern lieber selbst in zum Beispiel Delphi stricken willst, dann eben einen virtuellen Server oder einen Rootserver mieten und das Programm dort als Service laufen lassen. Ich würde dir generell dazu raten ein Programm (ob nun in PHP, Delphi oder Brainfuck geschrieben) auf der Datenbank direkt laufen zu lassen und die Anfragen indirekt an die Datenbank zu stellen: Du bist flexibler was neue Versionen deines Programms angeht. Du hast es eventuell einfacher beim Migrieren. Du kannst weitere Chachelayer einfügen, falls das mal notwendig sein sollte. Falls das eher ein kleineres Projekt ist, bei dem der Nutzerraum eher überschaubar ist, dann gibt es auch free-hoster wie z.B. square7.ch oder ähnliches, wobei ich da nicht sicher bin, ob diese Nutzung mit den AGBs vereinbar ist. Dann gibt es noch zum Beispiel uberspace.de, die man für spezielle Zwecke auch mal um was bitten kann. Des Weiteren kann man sich auch per DynDNS zu Hause zum Beispiel einen PI hinstellen auf dem dann das Konstrukt läuft (ist dann aber eben limitiert durch die Leistung des Systems und der Bandbreite deines Hausanschlusses, also will man das vielleicht nicht für öffentliche Anwendungen, die im AppStore sind...) Gruß, Brighty |
AW: Private Online Datenbanken
Hi, danke für deinen Input, das mit einem der iNet Hoster habe ich mir auch schon überlegt, aber der Nachteil ist, dass ich dann - gesetzt den Fall so eine App geht wirklich in den Store - für alle User die DB bereitstellen müsste...
Ich hatte mir das eher so vorgestellt: Es gibt ein paar "große" (wie Google oder DropBox oder OneDrive), die ohnehin für jeden einen persönlichen Cloudstore (und eben evetl auch eine DB) zur Verfügung stellen. In meiner App hab ich dann eine Art "Treiberschicht" die mal das DropBox API und mal das Google API zum Lesen/Schreiben von Daten verwendet. Die App selber bezieht ihre Daten über diese Schicht und wäre auch für andere Services erweiterbar. Den Datenspeicher und die Bandbreite dafür stellt aber der User zur Verfügung... Im Prinzip könnte ich zum Beispiel SQLite verwenden und die Datenbankdatei dann einfach in die DropBox legen, ich bin mir aber nicht sicher ob das mit gleichzeitigem Zugriff und Synchronisierung von mehreren gleichzeitig aktiven Clients problemlos läuft (und das von Anbieter zu Anbieter ähnlich stabil ist). |
AW: Private Online Datenbanken
Wenn public Cloud dann eher FireBase.
Zum direkten Zugriff auf einen DBMS würde ich auch nicht Raten. Besser Abstraktion z.B. per REST(ful) Service. |
AW: Private Online Datenbanken
Zitat:
Bei normalen, kleinen Uploads zum Beispiel gibt es noch das Teil "WriteMode" zum Ausklappen: Zitat:
Es gibt bestimmt auch schon Bibliotheken, die den Zugriff auf mehrere Clouds unter einem Interface vereinheitlichen, aber da kenne ich mich leider nicht aus und das macht auch nicht so viel Spaß: Ich nehme an, dass diese Interfaces sich ab und zu ändern. Die von mir verlinkten Seiten stammen aus der "Dropbox API v2". Afaik betreiben solche Cloud Storage Betreiber die verschiedenen API Versionen eine Zeit lang parallel, damit man Zeit zum migrieren hat (aber das ist dann halt "Wartung"). Ganz anderes Thema, welches ganz kurz abgefrühstückt ist: Nimm das WebDAV Protokoll. Es gibt Unterstützung durch private Clouds wie Owncloud oder Nextcloud (ja, die Teilen sich die Codebasis, ich weiß; aber es gibt bestimmt noch weitere Beispiele) oder auch im NAS Umfeld zum Beispiel die Synology (die dann vielleicht auch am Netz hängt?). Das ist so weit verbreitet, dass es von verschiedener Software (aber leider nicht immer ganz "Mainstream") implementiert wird. :) Das soll jetzt erstmal als erster Überblick reichen :P Brighty |
AW: Private Online Datenbanken
Ich hatte mir mal den Anbieter DO.DE angeschaut und da auch mal gezielt nach dem externen Zugriff auf die dort in den diversen Paketen vorhandenen MySQL Datenbanken gefragt.
Der Typ vom Support hat zumindest behauptet, dass man sich dann nur melden müsse und dann würden sie die DB auch für den externen Zugriff freischalten würden. Ob es stimmt habe ich bisher noch nicht selber ausprobiert, aber eine erneute Nachfrage und ein Test wäre es ja vielleicht schon wert (falls Du MySQL einsetzen möchtest) VG |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:37 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz