I'm actually working on a Meltano project where I have to extract data from one postgres database and load to the final warehouse (also a postgres database) using "Key-based Incremental Replication".
After the loading process of meltano, all table with columns of type uuid
from the "tap-postgres" are changed to varchar
in the target.
Could someone help to solve this issue?
Singer taps rarely capture "rich" string types such as uuid
, and they output simple {"type": "string"}
types without any additional metadata. Furthermore, Singer usually only supports JSONSchema Draft 4, so {"type": "string", "format": "uuid"}
would not even be supported by most taps and targets.
Since Singer is an ELT analytics framework and in that context a uuid
column type is not different in any meaningful way from a varchar
, this is hardly an issue for most people.
If you need to replicate a database with that level of detail you may be better served by a different solution for database backup/replication.