According to the SourceForge page for Postgres-XC, while creating a distributed table in Postgres-XC, it can take the attribute DISTRIBUTE BY with:
- DISTRIBUTE BY REPLICATION: Each row of the table will be replicated into all the Datanode of the Postgres-XC database cluster.
- DISTRIBUTE BY HASH: Each row of the table will be placed based on the hash value of the specified column. Following type is allowed as distribution column: INT8, INT2, OID, INT4, BOOL, INT2VECTOR, OIDVECTOR, CHAR, NAME, TEXT, BPCHAR, BYTEA, VARCHAR, FLOAT4, FLOAT8, NUMERIC, CASH, ABSTIME, RELTIME, DATE, TIME, TIMESTAMP, TIMESTAMPTZ, INTERVAL, and TIMETZ.
What does this mean exactly?