Anzeige:
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 15 von 17

Thema: Welches Datenbanksystem?

  1. #1
    Registrierter Benutzer
    Registriert seit
    02.01.2007
    Beiträge
    14

    Welches Datenbanksystem?

    Hallo,

    ich bin dabei ein Verwaltungsprogramm in Java zu schreiben und weiss nicht, welches Datenbanksystem ich dafür jetzt eigentlich verwenden soll?!?

    Habe in dem Zusammenhang den Begriff "Eingebettetes Datenbanksystem" gelesen. Wenn dieses das ist, was ich meine, dann wäre sowas nicht schlecht.
    Möchte nämlich auf jeden Fall die Installation auf anderen Rechnern so einfach wie möglich gestalten. Die Datenbank sollte allerdings auch über Netzwerk von anderen Rechnern verfügbar sein.

    Was würde sich da anbieten?
    MySQL kenne ich bisher nur im Zusammenhang mit dem Xampp-Paket. Wie sieht da die Installation bzw. das Aufsetzen der Datenbank aus, wenn man das alleine betreiben möchte?

    Weiss nicht, ob ich mich jetzt klar ausgedrückt habe, was ich eigentlich suche und wo meine Probleme liegen, deswegen wäre ich über Fragen Eurerseits dankbar.

    Doofe Frage: Gibt es übrigens Datenbanklösungen, wo das alles lokal in einer Datei oder so ablaufen kann?

    Vielen Dank schon mal im Voraus.

  2. #2
    Registrierter Benutzer Avatar von Molaf
    Registriert seit
    15.11.2004
    Beiträge
    127
    SQLite ist so ein System, wo alles in lokalen Dateien landet.

    Perl hat zudem noch einen Datenbanktreiber, der ebenfalls eine Datenbank emuliert und alles lokal in Flatfiles speichert - das sollte es für Java auch geben.

    Beides ist aber nicht übers Netzwerk ansprechbar, da ja keine echte DB-Engine auf Anfragen lauscht, sondern die Anwendungen nur über einen Zwischenschicht Daten speichert. Den Netzwerkkrams müsstest Du dann selber bereitstellen.

    Das war erstmal alles was ich dazu weiß.
    Gruß

  3. #3
    Registrierter Benutzer Avatar von Waxolunist
    Registriert seit
    19.06.2006
    Ort
    Wien
    Beiträge
    485
    HSQL ist für diese Sachen prädestiniert.
    http://www.hsqldb.org/

    mfg, christian
    Spezialitäten heute: PLSQL, TSQL, Java (alles mit Webanwendungen), Groovy, Grails, ASP.NET, Javascript, Python, Django
    Straight through, ohne Umwege ans Ziel

  4. #4
    Registrierter Benutzer
    Registriert seit
    02.01.2007
    Beiträge
    14
    @Waxolunist: Danke für den Tipp mit HSQLDB.

    "fast database engine which offers both in-memory and disk-based tables and supports embedded and server modes."

    Das hört sich gut an

    @Molaf
    Wenn man das lokal mit Flat Files betreibt, dann könnte man diese ja einfach im Netzwerk freigeben und die Programme dann auf den anderen Rechnern darauf verweisen oder geht das so sind?

  5. #5
    Registrierter Benutzer
    Registriert seit
    07.05.2003
    Beiträge
    127
    Zitat Zitat von p3lotud0 Beitrag anzeigen
    Wenn man das lokal mit Flat Files betreibt, dann könnte man diese ja einfach im Netzwerk freigeben und die Programme dann auf den anderen Rechnern darauf verweisen oder geht das so sind?
    Das geht eher nicht. Access (MS seine Desktop-Datenbank) macht so etwas und erfahrungsgemäß läuft das suboptimal. Das Problem ist das locking. Wer soll denn verhindern, dass zwei clients gleichzeitig die selben Daten verändern? Das können zwar sicherlich die Clients untereinander aushandeln, zum Beispiel über das Dateisystem, aber auf so etwas würde ich mich nicht freiwillig einlassen.

    mamue

  6. #6
    Registrierter Benutzer
    Registriert seit
    02.01.2007
    Beiträge
    14
    Also bei mehreren Clients auf jeden Fall mit Hilfe eines Datenbankserversystems arbeiten? "Embedded Modes" werden dann automatisch ausgeschlossen?

  7. #7
    Registrierter Benutzer
    Registriert seit
    07.05.2003
    Beiträge
    127
    Das würde ich so sehen, ja. Es sei denn, Du sorgst dafür, dass nur eine Programminstanz darauf zugreifen kann, arbeitest also mit RMI, Servlets oder Ähnlichem.
    So schlimm ist aber ja auch nun wieder nicht, einen MySQL Server zu installieren.

    mamue

  8. #8
    Registrierter Benutzer Avatar von Waxolunist
    Registriert seit
    19.06.2006
    Ort
    Wien
    Beiträge
    485
    Ich glaube unter Eingebettetes DB-System, hast du was falsches verstanden.

    Oder erklär mir lieber noch mal, was du genau brauchst.

    Du brauchst ein DB-System, dass sowohl lokal arbeitet als auch übers Netzwerk? Oder müssen sich die Clients nur zu einer DB verbinden?

    mfg, christian
    Spezialitäten heute: PLSQL, TSQL, Java (alles mit Webanwendungen), Groovy, Grails, ASP.NET, Javascript, Python, Django
    Straight through, ohne Umwege ans Ziel

  9. #9
    Registrierter Benutzer
    Registriert seit
    02.01.2007
    Beiträge
    14
    Generell soll das Programm auf einem Rechner mit entsprechender Datenbank laufen. Darüber hinaus soll das dieses Programm auf auf anderen Rechnern im Netzwerk zu installieren und betreiben sein (Clients) und mit Angabe der IP-Adresse des Server-Rechners dann auf der gleichen Datenbank arbeiten.
    Das Programm soll halt mehrbenutzfähig sein.

  10. #10
    Ratman
    Gast
    Vielleicht hilft Dir das hier: http://www.codebase.com/products/Java/

  11. #11
    Registrierter Benutzer Avatar von Waxolunist
    Registriert seit
    19.06.2006
    Ort
    Wien
    Beiträge
    485
    Also suchst du eine ganz normale DB, die du mit JDBC anbindest und kein Embedded DBMS.

    Da kannst du jede DB nehmen.

    Je nach Geld und Gebrauch.

    mfg, christian
    Spezialitäten heute: PLSQL, TSQL, Java (alles mit Webanwendungen), Groovy, Grails, ASP.NET, Javascript, Python, Django
    Straight through, ohne Umwege ans Ziel

  12. #12
    Registrierter Benutzer
    Registriert seit
    02.01.2007
    Beiträge
    14
    Ja das stimmt natürlich.
    Wichtig war mir aber: Wenn das Programm später wer-weiss-wo als Server-Version von jemand Unversiertem installiert werden soll, dass dieser dann sich nicht mit einem zuvor "umständlichen" Aufsetzen eines Datenbanksystems rumärgern soll.
    Also eine vereinfachte Inbetriebnahme von jemand, der sich da nicht wirklich auskennt.
    Inwieweit man jetzt z.B. die Installation eines MySQL-DB-Servers im Zusammenhang mit dem Anlegen der erforderlichen Datenbank automatisieren kann, weiss ich leider nicht.
    Bis jetzt habe ich Installationen immer nur selber ausgeführt, aber nie selber erstellt. Ggf. müsste z.B. auch die JAVA VM auf dem entsprechenden Rechner installiert werden, da ich ja das Programm in JAVA schreibe.

    Sonst würde ich natürlich ohne weiteres gerne auf MySQL zurückgreifen...

  13. #13
    Registrierter Benutzer
    Registriert seit
    07.05.2003
    Beiträge
    127
    Zitat Zitat von p3lotud0 Beitrag anzeigen
    Bis jetzt habe ich Installationen immer nur selber ausgeführt, aber nie selber erstellt. Ggf. müsste z.B. auch die JAVA VM auf dem entsprechenden Rechner installiert werden, da ich ja das Programm in JAVA schreibe.
    Nach meiner Erfahrung kann man die JVM auch mitliefern. Im primitivsten Fall kann man dann das gesamte Verzeichnis von einer CD-ROM irgendwo auf die festplatte kopieren. Dann ist natürlich ein Startscript (shell oder batch) nötig, dass den Interpreter lädt - das JAR-File per Doppelklick starten geht dann halt nicht mehr.
    Du brauchst aber auch nicht zwingend zu MySQL zu greifen, wenn Du einen Server in Java erstellst, auf den die Clients zugreifen (RMI, Servlets etc), denn dann greift nur Dein Serverprozess auf die embedded Datenbank zu.

    mamue

  14. #14
    Registrierter Benutzer
    Registriert seit
    10.03.2001
    Ort
    Delmenhorst
    Beiträge
    118
    In Java 6 gibt es bereits eine embeddable Datenbank anbei: JavaDB. Im Prinzip eine Cloudscape von IBM, oder auch wie sie neuerdings heisst Apache Derby.

    Gruss,
    comrad
    Holarse.de - Spielen unter Linux

  15. #15
    Registrierter Benutzer
    Registriert seit
    02.01.2007
    Beiträge
    14
    Ja, das Apache Derby ist mir auch im Rahmen meiner "Orientierungsphase" über den Weg gelaufen.
    Habe mich jetzt dank deinem Beitrag noch mal umgeschaut und bin in dem Zusammenhang auf diesen Link gestoßen:

    http://java.sun.com/developer/techni...esktop/javadb/

    Wahrscheinlich werde ich jetzt doch wieder von MySQL darauf umschwenken. Viel Fortschritt datenbanktechnisch gab es bei mir nämlich noch nicht bezüglich meines Programmes, so dass das kein Problem wäre...

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •