Hi, I am designing the schema of our brand new MonetDB database, and I am not sure whether my previous data modeling instincts are still relevant ;-). In particular, I am wondering: A) Does the definition of primary keys / foreign keys improve MonetDB performance? B) I need to do joins with a table whose natural key which is the combination of (bigint, varchar(51)). Is it best to: 1) just add these 2 columns to the dependent tables, and join on these 2 columns. 2) create a single varchar column that would be the concatenation of the bigint + varchar(51) and join on this single varchar column 3) Introduce a numeric+sequential surrogate key (presumably generated from a sequence), and join on the surrogate key. I am especially interested in the performance / acidental complexity tradeoffs in this situation. Thanks in advance, - Philippe