Ecto a Slick Query DSL for the Elixir Language

Elixir? What on earth is Elixir? It is a programming language that somewhat reminds me of Ruby. Here is some example Elixir code: defmodule Hello do IO.puts "Defining the function world" def world do IO.puts "Hello World" end IO.puts "Function world defined" end And it has a Stack Overflow community with around 50 tagged questions … Continue reading Ecto a Slick Query DSL for the Elixir Language

MyBatis’ Alternative Transaction Management

On the jOOQ user group, we're often being asked how to perform transaction management with jOOQ. And we have an easy answer ready: You don't do that with jOOQ. You choose your favourite transaction management API, be it: JDBC Spring JEE JTA (e.g. as supported by Weblogic) Bitronix TM Hibernate And the above list is far … Continue reading MyBatis’ Alternative Transaction Management

A Bit of SQL History

SQL has been around for a while. Just recently, I've read this refreshing article about Codd's Relational Vision - Has NoSQL Come Full Circle? SQL is one of those awesome technologies that was invented almost two generations ago, and we're still using it in production and for new projects. It is both legacy and state-of-the-art. The … Continue reading A Bit of SQL History

Simplernate. A Query DSL for Hibernate, Inspired by jOOQ

"Simplernate" ! The name is very compelling. And so is the idea - we think. Specifically, because we get most credit for this new project in the following short readme: https://gist.github.com/thermz/eb1b12b2146168a08e68 It reads: Simplernate is (will be) an Hibernate wrapper that help developer to query the database using Hibernate ORM. To do this, Simplernate offers a … Continue reading Simplernate. A Query DSL for Hibernate, Inspired by jOOQ

MongoDB “Lightning Fast Aggregation” Challenged with Oracle

What does "Scale" even mean in the context of databases? When talking about scaling, people have jumped to the vendor-induced conclusion that: SQL doesn't scaleNoSQL scales It is very obvious that NoSQL vendors make such claims. It has also been interesting that many NoSQL consumers made such claims, even if they probably confused SQL in … Continue reading MongoDB “Lightning Fast Aggregation” Challenged with Oracle

The Crystal Ball. Or, Oops, Michael Stonebraker did it Again

Michael Stonebraker's opinions and claims are always refreshing to read. He's done a lot for our industry and for how we do data processing. Some of his claims are certainly right as well. Here's an interview with him, telling us about his 5 predictions on the future of databases. Of course, him being a software … Continue reading The Crystal Ball. Or, Oops, Michael Stonebraker did it Again

Add LATERAL Joins or CROSS APPLY to Your SQL Tool Chain

The T-SQL dialect has known the powerful CROSS APPLY and OUTER APPLY JOIN syntaxes for ages. The SQL:1999 standard had introduced almost equivalent "lateral derived tables", which are finally supported with PostgreSQL 9.3, or Oracle 12c, which has adopted both the SQL standard LATERAL syntax and the T-SQL vendor-specific CROSS APPLY and OUTER APPLY syntaxes. … Continue reading Add LATERAL Joins or CROSS APPLY to Your SQL Tool Chain

jOOQ, a Love Story

... according to a jOOQ user on Twitter:   Let's hope this relationship will last for a very long time! Cheers, the jOOQ team.

Counting Distinct Records in SQL

The SQL language and its depths... Some of you readers might be aware of MySQL's capability of counting distinct records through the COUNT() aggregate function. The MySQL documentation reads: COUNT(DISTINCT expr,[expr...]) Returns a count of the number of rows with different non-NULL expr values. In other words, you can count distinct first and last names very easily: SELECT … Continue reading Counting Distinct Records in SQL

Free Open Source with Commercial Support

Have you ever thought about "Free" Open Source with commercial support vs. commercial software? We have and we found that the following is true: Free Open Source Software with commercial support ... is the best business model for companies selling services for very complex OSS software where customers might lack skilled personnel. This includes things … Continue reading Free Open Source with Commercial Support