Gunnar Morling

1.3K Followers
157 Following
204 Posts

Software engineer @ Decodable · Ex-lead of Debezium · Spec lead of Bean Validation 2.0 · Creator of JfrUnit, kcctl and MapStruct · Java Champion · 🚴

#DataEngineering #Java #OpenSource

Excellent post from @gunnarmorling about the outbox pattern - what it is, addressing common questions and challenges, and what the alternatives are.

https://dcbl.link/outbox-revisited2

Revisiting the Outbox Pattern

Comparing the outbox pattern to alternatives like “listen-to-yourself” and 2-phase commit (2PC) transactions. What’s the best choice for data exchange flows between microservices?

I am only an infrequent visitor to LinkedIn, but today I discovered a valuable tip from @gunnarmorling about the new Kafka Native Docker image. Thank you!

https://www.linkedin.com/posts/gunnar-morling_apachekafka-graalvm-testcontainers-activity-7225795144397037569-9KYI

#ApacheKafka #Kafka

Gunnar Morling on LinkedIn: #apachekafka #graalvm #testcontainers | 44 comments

The new native #ApacheKafka container image is dope for unit testing. Compiled into a native binary via #GraalVM, a single-node broker is starting in ~150 ms… | 44 comments on LinkedIn

Look, what was in the mail today… Didn't expect to land the printed copy of #DuckDB in Action so soon. #Happy

cc @duckdb @hannes @mesirii

Thanks to Jordan Tigani, Pramod Sadalage, Qiusheng Wu and @gunnarmorling for endorsing us.

Do you know SQL? Exactly!

Most databases and data processing tools support SQL for exactly that reason. And we see a strong movement for all of them to get closer to the standard, day by day.

In this weeks episode of the Cloud Commute podcast, our host @noctarius2k talks with @gunnarmorling from #Decodable about the benefits of #SQL, how #CDC (change data capture) works and why Decodable uses #ApacheFlink as the underlying technology for its #StreamProcessing offering.

https://youtu.be/qrWBboOPY5U

EP08: Change Data Capture and Stream Processing in the Cloud - Gunnar Morling from Decodable

YouTube

✍️Blogged: Flink SQL—Misconfiguration, Misunderstanding, and Mishaps

🫖 Pull up a comfy chair, grab a mug of tea, and settle in to read about my adventures troubleshooting some gnarly #ApacheFlink problems ranging from the simple to the ridiculous…

🔗 https://dcbl.link/troubleshooting-flinksql2

👉 Topics include:

🤔 What's Running Where? (Fun with Java Versions)
🤨 What's Running Where? (Fun with JAR dependencies)
😵 What's Running Where? (Not So Much Fun with Hive MetaStore)

#dataEngineering #openSource

Flink SQL—Misconfiguration, Misunderstanding, and Mishaps

A wondrous walk through some examples of troubleshooting Flink SQL. From ClassNotFoundException problems to S3 configuration and JDBC drivers, this blog post provides a valuable reference for understanding how to approach your next Flink SQL error message.

Finally met @gunnarmorling in person. May the challenge begin. #javaland

Also new today: The last chapters added to the #MEAP for #DuckDB in Action, including the appendix in which I wrote a bit about using DuckDB from #Java. I used the #1BRC by @gunnarmorling as an example.

https://www.manning.com/books/duckdb-in-action

Now the whole things just need to make its way through the print production.

#Happy

DuckDB in Action

Dive into DuckDB and start processing gigabytes of data with ease—all with no data warehouse.</b> DuckDB is a cutting-edge SQL database that makes it incredibly easy to analyze big data sets right from your laptop. In DuckDB in Action</i> you’ll learn everything you need to know to get the most out of this awesome tool, keep your data secure on prem, and save you hundreds on your cloud bill. From data ingestion to advanced data pipelines, you’ll learn everything you need to get the most out of DuckDB—all through hands-on examples. Open up DuckDB in Action</i> and learn how to: Read and process data from CSV, JSON and Parquet sources both locally and remote</li> Write analytical SQL queries, including aggregations, common table expressions, window functions, special types of joins, and pivot tables</li> Use DuckDB from Python, both with SQL and its "Relational"-API, interacting with databases but also data frames</li> Prepare, ingest and query large datasets</li> Build cloud data pipelines</li> Extend DuckDB with custom functionality</li> </ul> Pragmatic and comprehensive, DuckDB in Action</i> introduces the DuckDB database and shows you how to use it to solve common data workflow problems. You won’t need to read through pages of documentation—you’ll learn as you work. Get to grips with DuckDB's unique SQL dialect, learning to seamlessly load, prepare, and analyze data using SQL queries. Extend DuckDB with both Python and built-in tools such as MotherDuck, and gain practical insights into building robust and automated data pipelines.

Manning Publications
Thank you @gunnarmorling for the awesome #1brc prize. This was the hardest earned coffee mug in my life! #GraalVM

Awesome #java / #jvm savvy accounts to follow:

👋🏼 Rashidi Zin - @rashidi
👋🏼 Frank Delporte - @frankdelporte
👋🏼 John Burns - @wakingrufus
👋🏼 Moritz Halbritter - @mhalbritter
👋🏼 Gunnar Morling - @gunnarmorling

More updates like this? Follow me or #JavaBubbleOrgAccountsRefresher

Source: #javabubble (javabubble.org)
Botdev: @moelholm

Introduced MapStruct by @gunnarmorling into my new customer project. This is still the best solution I know to map between layers in Java. Especially when the project uses hexagonal architecture, which has layers. Layers everywhere...

It also supports mapping from two different sources, mapping into an existing object and deep clones. Thanks for this fine piece of software, Gunnar and friends.

https://mapstruct.org/

#mapstruct #java #hexagonalArchitecture

MapStruct – Java bean mappings, the easy way!