Anybody who’s worked on a data warehouse knows the date dimension is key. Designing it is complex and filling it might be tricky and time consuming. In this article I simply share SQL scripts I came up with to fill the date dimension in a PostgreSQL data warehouse. Continue reading Scripts to populate the date dimension in a PostgreSQL data warehouse
Dealing with non-primitive types with Talend tPostgresqlOuput component
Batch entry 0 INSERT INTO "public"."log" ("source","logged") VALUES ('188.8.131.52','2017-06-21 13:52:23') was aborted. Call getNextException to see the cause.
Ever bump into this kind of exception? This issue drove me crazy, and it took me a good few hours to figure out how to deal with it. The solution is actually very simple… once you know it!
Continue reading Dealing with non-primitive types with Talend tPostgresqlOuput component
Why JSON fields shouldn’t be used in relational databases
What do PostgreSQL 9.2, Oracle 12c and MySQL 5.7.8 have in common? They all integrated JSON as a possible data type. Pretty cool, huh?! Actually, I think using JSON in a relational database is one of the worst ideas you can have. Let me explain why.
Continue reading Why JSON fields shouldn’t be used in relational databases
Using Talend tRowGenerator to populate tables with foreign key constraints
Many tutorials show how to use the tGeneratorRow component, but most of them (if not all of them) consider ad-hoc examples. Therefore, they’re often hard to apply in real-world situations. In this post I’m going to explain how to populate a table referencing another table.
Continue reading Using Talend tRowGenerator to populate tables with foreign key constraints