Geschäftslogik in der DB oder Middle tier

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • Geschäftslogik in der DB oder Middle tier

    Ich würde mal gerne eure Meinung dazu wissen. Wo gehört die Geschäftslogik eurer Meinung nach hin?
    Bei meinem Arbeitgeben abrbeiten wir mit der Oracle DB und bilden die GL mit den Object Types in der DB ab.

    öftes mal findet man das Argument, Abhängigkeit von der DB. Aber ich finde das es kein richtiger Nachteil ist, denn wie oft wird schon die datenbank in einem Unternehmen ausgetauscht?

    Wie seht ihr das? Welche Vor und Nachteile können dabei entstehen.
    MfG ShureG

    There are 10 kinds of people. Those who understand binary notation, and those who do not.
  • Das hängt SEHR stark von dem Unternehmen ab.

    Wir arbeiten mit diversen Datenbanksystem (APC, Memcached, Redis, Hadoop, MySQL) und sind daneben auch mit anderen Datenbanksystemen am experimentieren.
    Teilweise sind die Daten doppelt vorhanden, teilweise können sie nur in einem der Systeme abgebildet werden, letztendlich muss aber alles irgendwo aggregiert werden.

    Die Business Logik (wir sind ein Werbeunternehmen) muss Live funktionieren, muss aber auch tiefere offline Analysen ermöglichen, was es unmöglich macht, die gesamte Logik in einer Datenbank zusammenzuführen.

    Ich behaupte, dass man mit einem Middle Tier viel flexibler ist.
    Die Geschäftslogik in einem einzigen System zu haben ist dagegen wesentlich übersichtlicher und man bringt einfacher Struktur rein.
  • Meiner Meinung nach, kommt es auf die Anforderungen im Fachkonzept an. Wenn der Kunde wert auf Plattformunabhängigkeit, Portabilität und co legt, dann bekommt er sie auch. Aber ich baue keine unnötigen Abstraktionen ein, nur weil ich es kann oder weil es geht. Mein Mentor hat zu mir immer gesagt: "Wie wahrscheinlich ist es, dass kleine grüne Menschen auf der Erde laden und eine Lebensversicherung wollen?!(Arbeite bei Einer^^) Und was passiert wenn die rot oder blau sind?". Übertragen auf das Problem bedeutet dies - was nützt einem Flexibilität, wenn sie nicht benötigt wird.
    Außerdem ist das auch eine Frage der Kosten und der Performance, ob ich die Oracle DB mit Standard JPA plätte oder mit native SQL jage!!! Oracle hat ja nicht umsonst, eigene Datentypen und andere Syntax-Konstrukte....