-
Notifications
You must be signed in to change notification settings - Fork 0
/
maincontents.html
executable file
·766 lines (765 loc) · 24.3 KB
/
maincontents.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/htmol4/strict.dtd">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html";charset=UTF-8>
<title>Postgres_XC</title>
<base href="."/>
<link rel="stylesheet" type="text/css" href="pgcx_1.css">
</head>
<body bgcolor=#FFFFFF>
<h1>
Postgres-XC Project Page
</h1>
<h2>
Welcome to Postgres-XC
</h2>
<p>
Welcome to Postgres-XC, only one PostgreSQL cluster solution
which provides both read and write scalability.
</p>
<p>
If you are familiar with the project outline, please visit individual pages
as you want.
If not, we advise you to visit each page of this site to understand
what this is, what you can do with this, and so on.
</p>
<p>
Whole Postgres-XC team member is willing to solve your database problem.
</p>
<p>
Enjoy.
</p>
<h2>
What Is Postgres-XC?
</h2>
<p>
Postgres-XC is an open source project to provide write-scalable,
synchronous multi-master,
transparent PostgreSQL cluster solution.
It is a collection if tightly coupled database components
which can be installed in more than one hardware or virtual machines.
</p>
<p>
Write-scalable means Postgres-XC can be configured
with as many database servers as you want and handle much more writes
(updating SQL statements) which single database server can not do.
</p>
<p>
Multi-master means you can have more than one data base servers
which provides single database view.
</p>
<p>
Synchronous means any database update from any database server is
immediately visible to any other transactions running in different masters.
</p>
<p>
Transparent means you don’t have to worry about how your data is stored
in more than one database servers internally.
</p>
<p>
You can configure Postgres-XC to run on multiple hardware.
They store your data in a distributed way, that is,
partitioned or replicated way at your choice for each table.
When you issue queries, Postgres-XC determines
where the target data is stored and issue corresponding queries
to servers with the target data
</p>
<h2>
About This Page
</h2>
<p>
This page include many useful information to understand, download, build, deploy and use Postgres-XC.
</p>
<h2>
What You Need To Begin Postgres-XC
</h2>
<h3>
Start with minimum hardware
</h3>
<p>
You can install Postgres-XC into single server, if you configure properly.
You may install different virtual machine for different Postgres-XC component
or set of its components.
</p>
<p>
Although you can install Postgres-XC cluster in single Linux operating system,
we advise to install as many Linux virtual machines as you may want
using Virtual Box or VMWare.
Number of virtual machines depends upon Postgres-XC configuration.
Please take a look at configuration section in this page.
</p>
<p>
We advise to have 64bit architecture Intel machine with about 4GB of
memory even in this case.
</p>
<p>
You may be able to choose any popular Linux operating system for
Intel 64bit architecture.
For your information,
the developemnt team uses CentOS 5.4 for testing and evaluation.
</p>
<p>
Minimum hardware configuration will be useful to test Postgres-XC feature.
If you'd like to experience how Postgres-XC scales, we advise to have more than two hardware (server).
</p>
<h3>
Gorgeous
</h3>
<p>
You can have as many servers as you can.
For example, Postgres-XC development team is using eleven servers in total to
run Postgres-XC and another four servers to generate workload.
If possible, we advise to have three servers and one additional
(slow and inexpensive) server for Postgres-XC,
and another (one or more) servers to run your application.
</p>
<h2>
Postgres-XC structure
</h2>
<p>
To design your Postgres-XC configuration,
it is helpful to understand Postgres-XC components and their roles.
</p>
<p>
Postgres-XC is composed of three major components called Data Node, Coordinator and GTM (Global Transaction Manger) respectively.
The following will give an overview of their role.
</p>
<h3>Data Node</h3>
<p>
Data Node really stores your data as tables.
This is almost original PostgreSQL database server with slight modification
which will be described in the outline of GTM below.
Data Node does not serve your application directly.
You data will be stored by one or more than one data nodes according to your
configuration.
</p>
<p>
For scalability, tables can be distributed or replicated among all the data node involved.
However, it is controlled by the Coordinator as described below and Data Nodes
don't know global data allocation.
Data Node does not communicate with your application directly.
It will be done by the Coordinator.
</p>
<h3>Coordinator</h3>
<p>
Coordinator interacts with your application, reading statements and responding
results.
Coordinator controls global data allocation.
Postgres-XC's tables are either <em>distributed</em> or <em>replicated</em>.
</p>
<p>
In the case of distributed table, each tuple of the table will be stored at
one of the Data Node in the configuration.
So far, we have hash or round-robin distribution.
If you choose hash, you should give one column to be used to define which
Data Node to store. This column is called "<em>distribution column</em>" or
"<em>distribution key</em>".
</p>
<p>
Coordinator determines the Data Node based on the value of the distribution key.
</p>
<p>
In the case of replciated table, each tuple of the table is stored by
<bf>all</bf> the Data Nodes configured.
Postgres-XC will manage such replicated tuples so you do not have to worry
how to avoid conflict updates in this case.
</p>
<p>
These choice can be used to run your transactions to run in different
data nodes in parallel to achive both read and write scalability.
You should distribute your tables if they are frequently updated.
Stable tables should be replicated.
</p>
<p>
This combination will help to avoid cross-node operation in handling
each statement. (At present, we don't support cross-node operation in
the statement handling).
</p>
<h3>GTM</h3>
<p>
GTM stands for <em>Global Transaction Manager</em>.
It is a key component of Postgres-XC to provide transaction transparency.
</p>
<p>
With the help of GTM this component, you can have any number of Coordinators
which run synchronously each other.
You can issue any transaction to any coordinator in any order you want.
Any commit to a coordinator will be visible to any other transactions
running at any other coordinators too, according to your transaction
isolation setting.
</p>
<p>
This feature is called <em>synchronous multi-master</em>.
</p>
<h3>Remark</h3>
<p>
GTM is a separate binary.
Same binary is used both for Data Node and Coordinator.
We choose Data Node or Coordinator using <tt>pg_ctl</tt> switch.
</p>
<h2>
Postgres-XC algorithm
</h2>
<p>
This section will gives an outline how Postgres-XC provides synchronous
multi-master capability.
</p>
<h3>
PostgreSQL Visibility Management
</h3>
<p>
First of all, let us review PostgreSQL's transaction management briefly.
</p>
<p>
PostgreSQL gives each transaction a unique gransaction ID (XID) in ascending
order.
That is, transaction with larger XID is newer than that with smaller XID.
</p>
<p>
Then, depending upon transaction isolation level, each transaction or each statement
are given a <em>snapshot</em>.
</p>
<p>
Snapshot is essentially a list of XIDs which is running when the transaction or the statment starts to run.
</p>
<p>
On the other hand, update is done by inserting new tuples, leving older ones.
They're given XID which created or deleted them.
Deleting tuples is done similarly to mark them "deleted" with deleting transaction's XID.
By checking which transaction is running/committed/aborted, PostgreSQL
determins if specific tuple is visible or invisible.
Snapshot is used for this purpose.
</p>
<h3>Postgres-XC Visibility Management</h3>
<p>
Postgres-XC is using the same methodology to manage tuple vilibility.
</p>
<p>
Only one difference from PostgreSQL is Postgres-XC is composed of many
Data Nodes.
So if we collect transaction status globally, give each transactions globally
unique and ascending transaction ID, and give each transaction snapshot
which includes running transaction in the system but not necessarily
in some data node, we can safely reuse PostgreSQL's tuple visibility
mechanism even in Postgres-XC.
</p>
<p>
As you may imagine, Postgres-XC uses GTM to provide all such information as described below.
<h3>GTM's role</h3>
<p>
GTM plays central role to manage global transaction in Postgres-XC.
</p>
<p>
GTM provides each transaction a unique <em>global transaction ID</em> (GXID)
in ascending order.
In this manner, any transaction originated in various coordinator are given
unique ID to distinguish each other and determine order of timestamp.
</p>
<p>
GTM also monitors the beginning and the end of each transaction to
produce <em>global snapshot</em>.
Global snapshot includes GXID of all active transactions.
A transaction is initiated in a coordinator.
Coordinator examines each statement and determine which Data Node is involved,
transforms the statement into local one for the Data Node,
issues it and collects the result.
In this flow, coordinator may visit new Data Node involved in handling other statements.
Even in this case, with global snapshot, consistent visibility is enforced.
</p>
<p>
GTM also provides other global value feature.
So far, GTM provides values of sequences.
In the following releases, it is planned to support more global values
such as timestamp.
</p>
<h3>Coordinator's Role</h3>
<p>
Coordinator acts like PostgreSQL's postmaster and other backend processes
to your applications.
The Coordinator accepts connections from applications, create dedicated backend process for the connection,
reads statements, handle them and return the results.
</p>
<p>
Through this process, the Coordinator analyzes each statement, determines
what data node involved in, transfers input statement into one for each
involved Data Node, issues transformed statment, collects the results,
merge them into data returned to the applications.
</p>
<p>
Through this process, the Coordinator interacts with GTM as well to
get GXID and snapshot, which will be transferred to Data Nodes.
Even if one statment is divided into multiple statements for data nodes,
they will be handled using identical snapshot so that consistent
visibility is enforced.
<p>
Each Coordinator backend may have multiple connection to Data Nodes.
Because number of connections may increase from time to time,
number of backends in each Data Node can be big.
To reduce this increase, Coordinator is equipped with connection pooling
to Data Nodes.
</p>
<p>
Detailed description of how Coordinator examines each statement and transforms
into local statements will be described elsewhere.
</p>
<h2>
About Current Release
</h2>
<h3>Release Overview</h3>
<p>
Current release is version 0.9.
This release is based upon PostgreSQL 8.4.3.
Remarks of this release is as follows.
</p>
<ul type="disc">
<li>
<tt>ORDER BY</tt> and <tt>DISTINCT</tt> is not supported.
</li>
<li>
Aggregate functions are not supported.
</li>
<li>
User defined functions are not supported.
</li>
<li>
No cross node join is supported. If a given statemet involves
cross-node operation, Postgres-XC may detect error in most case, but
occasionaly it may return incorrect result.
</li>
<li>
<tt>SELECT</tt> clause is not allowed in <tt>FROM</tt> clause or
<tt>INSERT</tt> statement.
</li>
<li>
Only simple query interface is supported in libpq. It is sufficient
for most of the programming interface. JDBC needs extended interface support
in libpq. It is planned in the following releases.
</li>
<li>
Cursor is not supported. It is planned in following releases.
</li>
</ul>
<h3>License</h3>
<p>
Postgres-XC is released under LGPL v2.0.
</p>
<h3>
List of Release Materials
</h3>
<p>
Current release includes the following materials.
Please note that documents are not included in source material.
Please download document as well from
<a href="https://sourceforge.net/projects/postgres-xc/files/">
the project download page.
</a>
</p>
<ul>
<li>
<tt>pgxc_v0.9.tar.gz</tt>:<quad>
This is a collection of source materials used to build the binaries.
Please note that Postgres-XC documentation is not included in this file.
</li>
<li>
<tt>PGXC-PG_REL8_4_3.patch.gz</tt>:<quad>
The same material as above, but this file includes only the patch to apply
to PostgreSQL 8.4.3 source material.
It is useful if you would like to see just a difference between PostgreSQL
and Postgres-XC.
No Postgres-XC documentation is included in this file either.
</li>
<li>
<tt>COPYING</tt>:<quad>
License description.
</li>
<li>
<tt>README</tt>:<quad>
Overview of the release.
</li>
<li>
<tt>ReferenceManual.pdf</tt>:<quad>
Reference of Postgres-XC extension.
</li>
<li>
<tt>PG-XC_TutorialManual.pdf</tt>:<quad>
Step by step description how to build and configure DBT-1 to run with
Postgres-XC.
</li>
<li>
<tt>PG-XC_InstallManual.pdf</tt>:<quad>
Step by step description how to build, install and configure Postgres-XC.
</li>
<li>
<tt>PG-XC_Architecture.pdf</tt>:<quad>
Description of the outline of Postgres-XC internals.
</li>
</ul>
<h2>
How to Build Postgres-XC
</h2>
<p>
This section describes how to build Postgres-XC from the source material.
You should have <tt>pgxc_v0.9.tar.gz</tt> file downloaded, or
prepare Postgres-XC source material applying
<tt>PGXC-PG_REL8_4_3.patch.gz</tt> to PostgreSQL 8.4.3 source material.
</p>
<p>
Please note that Postgres-XC is only tested in 64bit Linux environment.
<h3>
<tt>./configure</tt>
</h3>
<p>
You should run <tt>./configure</tt> to prepare <tt>Makefile</tt>
for your environment, just as you do when you build PostgreSQL
binary.
</p>
<p>
Fist, make source tree using <tt>tar</tt> command as follows:
</p>
<p class="box">
<tt>$ tar xvzf pgxc_V0.9.tar.gz</tt>
</p>
<p>
This will extract all the source files under the directory <tt>pgxc_v0.9</tt>.
</p>
<p>
Then, move to this directory and issue <tt>./configure</tt> command as follows.
</p>
<p class="box">
<tt>$ cd pgxc_v0.9</tt><br>
<tt>$ ./configure CFLAGS='-DPGXC' --prefix=/data --without-openssl</tt>
</p>
<p>
Please note that you need to specify two options.
First option is needed to build Postgres-XC binaries.
Otherwise, you will build PostgreSQL 8.4.3. binaries.</p>
<p>
Second option specifies installation directory.
You don't have to specify this parameter. In this case, installation
directory will be <tt>/usr/local/pgsql</tt>.
Intallation manual is assuming installation directory is <tt>/data</tt>
and this is also used throughout this page.
</p>
<p>Third option is needed to bypass openssl support which we are
still working on.
</p>
<p>
You will have long message from <tt>./configure</tt> to show what options
are going to be used.
Depending on available packages, you may have error or warning messages.
Please install necessary packages to your environment.
</p>
<p>
Please note that all the options of <tt>./configure</tt> in PostgreSQL are
also available in Postgres-XC.
You can specify additional options to change configuration such as
default installation directory.
</p>
<h3>Make</h3>
<p>
Then you are ready to build binaries. Simply issue <tt>make</tt> command as follows:
</p>
<p class="box">
<tt>$ make</tt>
</p>
<p>
After a while, you will be prompted that binary was build successfully.
Now you're ready to install the binary.
</p>
<h3>Installation</h3>
<p>
You can install Postgres-XC binaries using <tt>make install</tt> command.
Please note that you need root privilege to do this.
</p>
<p class="box">
<tt>$ su</tt><br>
<tt>Password: </tt><em>(type root password)</em><br>
<tt># make install</tt>
</p>
<p>
This will copy all the necessary files to target directories.
In the case of PostgreSQL, you are ready to run it.
In the case of Postgres-XC, because more than one server is involved,
you have to deploy binaries to servers and configure them.
Next section will show how you can do this.
</p>
<h2>
How to Deploy
</h2>
<p>
Because Postgres-XC is a PostgreSQL cluster, you should install binaries
to all the servers you're going to use.
So far, no rpm files are available to install binaries.
This section will describes how to install binaries to all the nodes.
There's two choices, buiding or copying.
</p>
<h3>Building in each node</h3>
<p>
You can run <tt>./configure</tt> to <tt>make install</tt> at each
server to build and install binaries.
This is rather simple. Simply follow the building steps.
However, this may take time, especially if you are installing
into virtual machines.
If you'd like to save time, you may copy binaries to target
servers manually.
</p>
<h3>Copying files manually</h3>
<p>
By default, all the binaries will be built under the directory
<tt>/usr/local/pgsql</tt>.
(If you chose different installation directory, please replace
with your choice).
</p>
<p>
You may copy all the installed files to the same directory of
all the servers (or virtual machines) manually.
You may use scp or any other menas.
Please do not to give appropriate permission to all the files.
</p>
<h2>
How to Configure
</h2>
<p>
This section will describe how you can decide the number of servers
and where you should install GTM, Coordinators and Data Nodes.
</p>
<h3>Where to place each components</h3>
<p>
This section will describe how to determine the node to install
GTM, Coordinators and Data Nodes.
</p>
<h4>GTM</h4>
<p class="inner">
GTM is composed of GTM server and GTM proxy.
You should install only one GTM server. Pick up one server.
On the other hand, you have to install GTM proxy in all the servers where
you install the Coordinator.
</p>
<h4>Coordinator</h4>
<p class="inner">
You can install Coordinator to all the other servers (or virtual machines)
available.
</p>
<h4>Data Node</h4>
<p class="inner">
You can install Data Node to all the servers (or virtual machines) available.
Or you may exclude the server (or virtual machine) you install GTM.
</p>
<h3>
How to configure each node
</h3>
<p>
If you copied or installed all the binaries and
decided servers (virtual machines) and Postgres-XC components,
you can configure the servers.
</p>
<p>
This page assums that you're installing GTM to one server, Coordinator
to all the other servers and Data Node to all the servers.
Althought different set of components may be installed into each
server, we will try to keep installation and configuration as same as
possible among servers.
</p>
<p>
We will show you what to decide and how to do.
We assume that you don't install more than one coordinators or data nodes
in single server (or virtual machine). We assume that you may install both
coordinator and data node in single server (or virtual machine).
</p>
<h4>Environment</h4>
<p class="inner">
Executables of Postgres-XC will be installed in <tt>/data/bin</tt> directory
if you follow the description above.
Shared library will be installed in <tt>/data/lib</tt> directory.
Please set your environment in each server so that <tt>/data/bin</tt>
is included in <tt>PATH</tt> environment and <tt>/data/lib</tt> is
included in <tt>LD_LIBRARY_PATH</tt>.
Typicaly, if you are using bash, add the following lines to <tt>.bashrc</tt>
file.
</p>
<p class="innerbox">
export PATH=/data/bin:$PATH
export LD_LIBRARY_PATH=/data/lib:$LD_LIBRARY_PATH
</p>
<h4>Data Directories</h4>
<p class="inner">
GTM, Coordinator and Data Node need directories to store their own data.
Because binaries are installed in <tt>/data</tt> directory,
we use this directory as a base directory.
</p>
<p class="inner">
We can create data directory for GTM, Coordinator and Data Node in
<tt>/data/gtm</tt>, <tt>/data/coord</tt> and <tt>/data/datanode</tt>
respectively as follows:
</p>
<p class="innerbox">
<tt># mkdir /data/gtm /data/coord /data/datanode</tt>
</p>
<p class="inner">
After this, you should change the ownership of the directory to the one
who owns Postgres-XC resources.
In this page, we assume <tt>postgres</tt>.
Change the ownership as follows;
</p>
<p class="innerbox">
<tt># chown postgres /data/gtm /data/coord /data/datanode</tt>
</p>
<p class="inner">
Please do this at all the servers (or virtual machines).
</p>
<h4>Initialize Coordinator and Data Node</h4>
<p class="inner">
Now you can initialize Coordinators and Data Nodes.
To initialize Coordinators, run the following command at all the servers
(virtual machines) you're installing the Coordinator.
You should login as the owner of data directories.
</p>
<p class="innerbox">
$ initdb –D /data/coord
</p>
<p class="inner">
Similarly, you can initialize the Data Node by executing the following command
at servers (virtual machiens) you're installing Data Node.
</p>
<p class="innerbox">
$ nitdb –D /data/datanode
</p>
<p class="inner">
GTM does not need any initialization.
</p>
<h4>Configuration Parameters</h4>
<p class="inner">
Now you can configure Coordinators and Data Nodes.
Configuration file is the same as PostgreSQL, <tt>postgresql.conf</tt>.
Coordinator configuration file will be found in <tt>/data/coord/</tt>
directory.
Data Node configuration file will be found in <tt>/data/datanode/</tt>
directory.
You can edit these files to configure Coordinator and Data Node.
</p>
<p class="inner">
Please note that you have to edit all the configuration files in
each server.
Because all the configuration files are very similar or same, you can
build base configuration files for Coordinators and Data Node and
copy them to appropriate directories.
</p>
<h4>Coordinator configuration file</h4>
<p class="inner">
Postgres-XC needs additional configuration parameters
in addition to conventional PostgreSQL configuration as follows.
</p>
<ul>
<li> <tt>pooler_port</tt>: specifies port number to be used by Data Node
connection pooler. Default value is 6667. </li>
<li> <tt>num_data_nodes</tt>: specifies number of data nodes. No default
value is assumed. </li>
<li> <tt>data_node_hosts</tt>: specifies the list of IP addresses of data nodes.
The number of the list members must be same as the value specified in
<tt>num_data_nodes</tt>. </li>
<li> <tt>data_node_ports</tt>: specifies the port number to connect to data node.
Default value is 15432. </li>
<li> <tt>data_node_users</tt>: specifies user name used to connect to data nodes. </li>
<li> <tt>data_node_password</tt>: specifies password used to connect to data nodes. </li>
<li> <tt>gtm_host</tt>: IP address of GTM proxy. No default value. </li>
<li> <tt>gtm_port</tt>: port number to connect to GTM proxy. No default value. </li>
<li> <tt>gtm_coord_id</tt>: number used to identify the coordinator in GTM.
So far, this is dummy information and duplicate ID value among coordinators
and data nodes
does not cause any problem. </li>
</ul>
<p class="inner">
You will notice that you can use same <tt>postgresql.conf</tt> file
for all the coordinators.
</p>
<h4>Data Node Configuration File</h4>
<p class="inner">
As Data Node is almost PostgreSQL itself, you need to specify only
a couple of configuration parameters as follows.
</p>
<ul class="innerlist">
<li>
<tt>gtm_host</tt>: specifies IP address of GTM proxy. No default value.
</li>
<li>
<tt>gtm_port</tt>: specifies port number of GTM proxy. No default value.
</li>
<li>
<tt>gtm_coord_id</tt>: specifies number used to identify the data node
in GTM. So far, this is dummy information andd duplidate ID value
among coordinators and data nodes does not cause any problem.
</li>
</ul>
<h4><tt>pg_hba_conf</tt> files</h4>
<h2>
How to Run
</h2>
<h3>
commands
</h3>
<h2>
Running Pgbench
</h2>
<h3>
How to build
</h3>
<h3>
How to configure
</h3>
<h3>
Run it!
</h3>
<h2>
Running Modified DBT-1
</h2>
<h3>
What is DBT-1
</h3>
<h3>
What you need
</h3>
<h3>
Modification for Postgres-XC
</h3>
<h3>
Step by step build
</h3>
<h3>
Run
</h3>
<h2>
Upcoming Events
</h2>
<h3>
PGCon2010
</h3>
<h3>
CHAR(10)
</h3>
<h2>
Upcoming Releases
</h2>
<h3>
Intermediate Release
</h3>
<h3>
Version 1.0
</h3>
<h2>
About the Team
</h2>
<h3>
NTT and EDB support
</h3>
<h3>
Individuals
</h3>
<h2>
ToDo List
</h2>
<h2>
Roadmap
</h2>
</body>
</html>