[ANN] Soirée jOOQ & Change-Data-Capture

3 views
Skip to first unread message

ma...@arnaudbos.com

unread,
Oct 26, 2020, 7:19:06 AM10/26/20
to toulou...@googlegroups.com

La prochaine soirée du Java User Group Toulousain sera encore remote.

Pour cette soirée nous invitons deux speaker expérimentés !
À ma gauche, notre Kevin Davin national, précédent organisateur du JUG, co-organisateur du DevFest Toulouse, figure locale et speaker émérite.
À ma droite, le renommé Nicolas Frankel, consultant, auteur et Developer Advocate, avec de nombreuses cordes à son arc et une quantité de talks et de conférences incroyable à son actif.

Ne vous fiez pas à la description du second talk, la présentation sera bel et bien en français car Nicolas est francophone, Suisse de son état.

Nous aurons également avec nous Laurent Blondon en tout début de soirée, pour le "Mot du sponsor" durant lequel Laurent nous parlera brièvement du sponsor qu'il représente : Ipon Technologies.

La soirée est en visio-conférence uniquement. Pensez à vous inscrire sur le site de diffusion. Le lien est présent à droite de cette page sous l'intitulé: "Événement en ligne".

Sponsors MonkeyPatch (@MonkeyPatch_io) et Ippon Technologies (@ippontech).
Avec le support du Jakarta EE Working Group (@JakartaEE) et donc de la Fondation Eclipse (@EclipseFdn) pour l'hébergement streaming.
Merci à eux !

----

== JOOQ, joy of SQL — par Kevin Davin (@davinkevin)

Et si l'on reprenait le contrôle de nos interactions avec notre base de données préférée? Car en vrai, nos BDD sont des monstres de puissance qui sont souvent sous exploités sweat. Nous verrons, avec JOOQ, comment écrire des requêtes SQL simples ou évolués, le tout facilement et de manière type-safe !

Venez découvrir cette superbe librairie OpenSource, compatible Java, Kotlin & Scala, qui va vous permettre de vous simplifier la vie et d'améliorer votre code… et même de découvrir de super fonctionnalités SQL que vous n'imaginiez même pas.

Lien des slides : https://docs.google.com/presentation/d/1YKk47FWeQqEIUVRHBKHSx7cigFGfeMV5QBYqe-dnHjE

Référence CFP : https://github.com/ToulouseJug/call-for-paper/issues/49

== A Change-Data-Capture use-case: designing an evergreen cache — by Nicolas Frankel (@nicolas_frankel)

When one’s app is challenged with poor performances, it’s easy to set up a cache in front of one’s SQL database. It doesn’t fix the root cause (e.g. bad schema design, bad SQL query, etc.) but it gets the job done. If the app is the only component that writes to the underlying database, it’s a no-brainer to update the cache accordingly, so the cache is always up-to-date with the data in the database.

Things start to go sour when the app is not the only component writing to the DB. Among other sources of writes, there are batches, other apps (shared databases exist unfortunately), etc. One might think about a couple of ways to keep data in sync i.e. polling the DB every now and then, DB triggers, etc. Unfortunately, they all have issues that make them unreliable and/or fragile.

You might have read about Change-Data-Capture before. It’s been described by Martin Kleppmann as turning the database inside out: it means the DB can send change events (SELECT, DELETE and UPDATE) that one can register to. Just opposite to Event Sourcing that aggregates events to produce state, CDC is about getting events out of states. Once CDC is implemented, one can subscribe to its events and update the cache accordingly. However, CDC is quite in its early stage, and implementations are quite specific.

In this talk, I’ll describe an easy-to-setup architecture that leverages CDC to have an evergreen cache.

----

Comme d'habitude la soirée sera ensuite suivie d'un apéro offert : pizza, bières et softs. (Lol, en fait non toujours pas, mais venez avec votre apéro, on trinquera virtuellement :D)

Inscrivez-vous/désinscrivez-vous, en vrai faites ce que vous voulez cette fois-ci, on commande pas de pizzas !

Et ça, ça ne change pas : si certains d'entre vous souhaitent s'impliquer dans l'organisation du JUG pour cette saison, n'hésitez pas à vous faire connaître !

Inscriptions ==> https://www.meetup.com/Toulouse-Java-User-Group/events/274180799/
Reply all
Reply to author
Forward
0 new messages