[Postgres-xl-bugs] [Postgres-xl-developers] PGXL network architecture

Koichi Suzuki koichi.dbms at gmail.com
Mon Jul 13 21:40:26 PDT 2015


It has been very popular debate.

All the plan is embedded in postgresql's planner.   #ifdef PGXC ... #endif
shows the addition.

http://postgres-x2.github.io/presentation_docs/2014-07-PGXC-Implementation/pgxc.pdf
will give you some reference of such extension.

Regards;

---
Koichi Suzuki
https://www.linkedin.com/in/koichidbms


2015-07-14 11:52 GMT+09:00 bryain <pgdevuser at 163.com>:

> Thank you Koichi,
>
> There is another question.When exec query statement, how to distribute
> subplan to datanode.Where in the source code?
>
> Regards,
> Bryain
>
>
>
>
> At 2015-07-14 09:38:33, "Koichi Suzuki" <koichi.dbms at gmail.com> wrote:
>
> Connection between coordinators and datanodes uses libpq with a couple of
> extension to propagate GXID (Global transaction ID) and Global snapshot.
>
> Connection to GTM and GTM-Proxy uses similar protocol but not libpq
> because GTM and GTM-Proxy are based upon pthread, while libpq assumes multi
> processing, PGPROC and postgres memory context.
>
> In above case, coord01's backends uses two libpq connections, for
> datanode1 and datanode2.   To improve overhead to establish libpq
> connection, coordinator and datanode has pooler process which holds
> read-to-use libpq connections.
>
> When a coordinator backend receives an insert statement from application
> (connected via libpq), the backend examines what node the data should go by
> examining target table's distribution and inserted data itself.    After it
> is determined, the backend requires connection to the target datanode(s)
> and ship the insert statement to the target datanode(s).   Along with this,
> to provide global transaction ACID property, the backend obtains GXID and
> snapshot from GTM and propagate this to the target datanodes so that
> Transaction ACID properties are maintained throughout the cluster.
>
> Please note the target datanode of a single row can be more than one in
> the case of replicated tables.
>
> Hope this helps.
>
> ---
> Koichi Suzuki
> https://www.linkedin.com/in/koichidbms
>
>
> 2015-07-14 10:22 GMT+09:00 bryain <pgdevuser at 163.com>:
>
>> Hi all
>>
>> Who can tell me PGXL network architecture?
>>
>> The connection between the coord with datanode
>>
>> there is one coord01 two datanode(datanode1,datanode2)
>>
>> when connct to coord01,to exec insert statement,how the three nodes
>> directly socket connection?
>>
>> Thanks!
>> Bryain
>>
>>
>>
>>
>> ------------------------------------------------------------------------------
>> Don't Limit Your Business. Reach for the Cloud.
>> GigeNET's Cloud Solutions provide you with the tools and support that
>> you need to offload your IT needs and focus on growing your business.
>> Configured For All Businesses. Start Your Cloud Today.
>> https://www.gigenetcloud.com/
>> _______________________________________________
>> Postgres-xl-developers mailing list
>> Postgres-xl-developers at lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/postgres-xl-developers
>>
>>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.postgres-xl.org/private.cgi/postgres-xl-bugs-postgres-xl.org/attachments/20150714/14e4b4ad/attachment.htm>


More information about the postgres-xl-bugs mailing list