title: What is the difference between DISTRIBUTE BY REPLICATE and HASH in Postgres XC?
body: <p>According to the <a href="http://postgres-xc.sourceforge.net/docs/1_1/sql-createtable.html" rel="nofollow">SourceForge</a> page for Postgres-XC, while creating a distributed table in Postgres-XC, it can take the attribute DISTRIBUTE BY with:</p>
  
  <ul>
  <li><strong>DISTRIBUTE BY REPLICATION:</strong> Each row of the table will be replicated into all the Datanode of the Postgres-XC database cluster.</li>
  <li><strong>DISTRIBUTE BY HASH:</strong> 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.</li>
  </ul>
  
  <p>What does this mean exactly?</p>