Creating tables and issuing queries
After this introduction to Postgres-XC and its underlying ideas, it is time to create our first table and see how the cluster will behave. The next example shows a simple table. It will be distributed using the hash key of the id
column:
test=# CREATE TABLE t_test (id int4) DISTRIBUTE BY HASH (id); CREATE TABLE test=# INSERT INTO t_test SELECT * FROM generate_series(1, 1000); INSERT 0 1000
Once the table has been created, we can add data to it. After completion, we can check whether the data has been written correctly to the cluster:
test=# SELECT count(*) FROM t_test;
count
-------
1000
(1 row)
Not surprisingly, we have 1,000
rows in our table.
The interesting thing here is to see how the data is returned by the database engine. Let's take a look at the execution plan of our query:
test=# explain (VERBOSE TRUE, ANALYZE TRUE, NODES true, NUM_NODES true) SELECT count(*) FROM t_test; QUERY PLAN ------------------------------------------------------- Aggregate...