Interview mit Lukas Eder

„SQL ist der ursprüngliche Microservice“

Dominik Mohilo

Lukas Eder

SQL haben schon alle und können schon alle? Lukas Eder ist da anderer Ansicht. Im Interview sprechen wir mit ihm über den aktuellen Stand der Dinge bei SQL, wie SQL mit Microservices zusammenpasst und wieso Java-Entwickler die Features ihrer Datenbank nicht vollständig einsetzen.

Auch auf der W-JAX 2016 wird Lukas Eder unsere Besucher mit seinem Talk Zehn SQL-Tricks, die du nicht für möglich gehalten hättest verblüffen. In SQL steckt mehr, als sich mancher hätte träumen lassen.

JAXenter: Hallo Lukas und danke, dass du dir Zeit genommen hast. In deiner Session auf der W-JAX geht es um SQL. Betrachtet man sich die Konferenz-Landschaft, so scheint das Thema SQL eher unterrepräsentiert. Wieso ist das deiner Meinung nach so?

Lukas Eder: SQL haben schon alle und „können schon alle“ (Denkste! Ich werd’s beweisen). Das kann man als freiberuflicher Consultant oder Hersteller nicht mehr gut verkaufen. Man muss etwas „Neues“ verkaufen. Da es seit dem relationalen Modell in unserer Branche nichts Neues mehr gab, benennt man etwas Altes einfach um, z.B. SOA in „Microservices“, asynchron in „reactive“ (früher nannte man das ja einfach „analog“) und spricht dann darüber. Das war in unserer Industrie schon immer so, wie ich mit diesem Tweet illustriert habe.

Ich helfe den Leuten nur, ihren bestehenden Stack besser zu verstehen. Vielleicht hilft das dem einen oder anderen Pragmatiker, echten Mehrwert zu schaffen, statt einfach nur mal wieder etwas Schönes umzubauen.

JAXenter: Laut deiner Einschätzung nutzen Entwickler im Java-Umfeld nur etwa 10 Prozent der Features ihrer Datenbank. Sind Entwickler, die mit anderen Programmiersprachen arbeiten da effizienter bzw. weiter?

Microservices und SQL passt super zusammen. SQL ist der ursprüngliche Microservice.

Lukas Eder: Sie sind nicht „weiter“. Sie sind nur der Meinung, dass es eine gute Idee ist, Business-Logik von A nach B zu schieben. Da sie heute gerade am liebsten Java schreiben, schieben sie die Logik halt dorthin. Früher schrieb man am liebsten Stored Procedures, drum war die Logik in der Datenbank. Wir sehen übrigens auch den Trend, dass Entwickler morgen am liebsten JavaScript schreiben werden, drum verschieben sie nun wieder alles ins UI. Geholfen hat das dem Endkunden noch gar nicht.

Ich richte mich wiederum an die Pragmatiker unter meinen Zuhörern, denen diese ganze Rumschieberei zu bunt wird, und die schlicht nicht wussten, dass die DB soviel kann. Wenn sie es dann aber wissen, werden sie echten Mehrwert schaffen können.

JAXenter: Kommen wir einmal auf neue Architektur-Trends zu sprechen – da ist ja derzeit viel von Microservices die Rede. Wie gut verträgt sich SQL mit Microservices?

Lukas Eder: Super passt das zusammen. SQL ist der ursprüngliche Microservice. Eine einzige Stored Procedure in Oracle XE deployen, fertig.

Im Übrigen: Da SQL schon über 30 Jahre alt ist, hat SQL auch alle „Trends“ schon mindestens zwei- bis dreimal gesehen. Darum ist SQL von diesem ganzen Marketing auch nicht beeindruckt.

JAXenter: Eine brandneue Geschichte ist Serverless Programming. Spätestens da stößt man mit SQL an Grenzen, oder?

Lukas Eder: Serverless Programming stößt an seine eigenen Grenzen, wenn dann die erste produktive Rechnung von Amazon kommt. Aber die Probleme von morgen lösen wir erst morgen, nicht wahr?

JAXenter: Wohin wird sich der SQL-Standard in den nächsten Jahren entwickeln?

Serverless Programming stößt an seine eigenen Grenzen, wenn die erste produktive Rechnung von Amazon kommt.

Lukas Eder: Ich hoffe, die ganzen „externen“ Modelle zum relationalen Modell werden auch im Standard endlich sauber zusammengefasst: Objektorientierung (bereits drin), XML (bereits drin) und JSON (noch hängig) sind alles hierarchische, schwach strukturierte Datenmodelle, die sehr gut zu SQL passen, wie z.B. auch Cypher / GraphQL für Graph-Datenbanken oder N1QL von CouchBase für JSON-Datenbanken bewiesen haben. Und PostgreSQL übrigens auch!

SQL hat schon immer alle anderen Tricks gelernt und integriert. Der zehnte Trick handelt genau davon. Also unbedingt meinen Talk hören!

JAXenter: Zum Abschluss: Welchen Entwicklergruppen legst du deine Session besonders ans Herz?

Lukas Eder: Allen Entwicklern. Denn alle schreiben sie SQL, auch wenn sie sich nicht getrauen, es öffentlich zu sagen. Aber eigentlich finden es alle toll und sie wollen endlich offen darüber reden. Schaut nur wieviele parallele Talks von Cloud, Microservices oder Reactive handeln. Das will niemand mehr hören, die ganze Konferenz ist ja schon voll davon. Alle wollen endlich neue SQL Tricks lernen.

Also, kommt! Es hat in der vordersten Reihe noch Platz. Ihr werdet nicht enttäuscht sein!

eder-lukasLukas Eder ist der Gründer und Geschäftsführer der Data Geekery GmbH aus Zürich – fasziniert von der Interaktion zwischen Java und SQL. Die meiste Erfahrung hat er im Schweizer E-Banking-Umfeld gesammelt, hauptsächlich mit JDBC, Hibernate und Oracle. Als Java Champion teilt er sein Wissen auf verschiedenen Konferenzen, JUGs, Inhousepräsentationen, Workshops und auf dem Firmenblog.
Blockchain Whitepaper 2018

Free: Blockchain Technology Whitepaper

If building a blockchain from scratch is beyond your current scope, the blockchain technology whitepaper is worth a look. Experts from the field share their know-how, tips and tricks, development advice, and strategy for becoming a blockchain master.

Geschrieben von
Dominik Mohilo
Dominik Mohilo
Dominik Mohilo studierte Germanistik und Soziologie an der Goethe-Universität in Frankfurt. Seit 2015 ist er Redakteur bei S&S-Media.
Kommentare

Hinterlasse einen Kommentar

2 Kommentare auf "„SQL ist der ursprüngliche Microservice“"

avatar
400
  Subscribe  
Benachrichtige mich zu:
Maciej Bednarz
Gast
Bravo, endlich jemand, der die Dinge beim Namen nennt und aufrund seiner Erfahrung die Buzz Words richtig einordnen kann. Ich kann mich noch eine kleine Untersuchung im Bankenumfeld erinnern, bei der eine JAVA-ORM-JEE Anwendung großteils in der Geschäftlogik in Oracle mit Stored Procedures abgebildet wurde. Damals hatten wir Performancegewinne von > 1000 %, da die Verarbeitung der Daten sehr eng an der Logik war. Nich verschwigen sollte jedoch das Problem Debugging und Codekomplexität werden. Da ist Java schon um einiges flexibler, einfacher und toleranter. Wenn ich Zeit hätte, würde ich zur Session kommen. So bleibt mir nur die Hoffnung auf… Read more »
TestP
Gast
Hallo. Der Nachteil von Stored Procedures /Views ist halt der sehr zuverlässige Vendor-Lock-In beim DB-Hersteller. Wenn man die Datenbank aus irgendwelchen Gründen wechseln will dann kommt das quasi einer kompletten Neuprogrammierung der Software gleich wenn da sehr viel Logik drinne steckt. Von daher hat das schon seine Gründe die Geschäftslogik möglichst aus der Datenbank rauszuhalten. Oder man kauft dann ein sehr teures DB-System ala Oracle oder IBM weil das eine Quasi-Garantie ist, dass das nicht eingestellt wird. RethinkDB ist zum Beispiel nicht mehr. Ich persönlich mache es aber auch so wie Herr Eder. Wenn es die Sache sehr vereinfacht dann… Read more »