0

Postgres-XL Documentations and also overview describes load balancing as a distinct part of the system.

Am I correct and it is up to Postgres-XL users to load balance or is there specific a way of doing load balance (using load information of coordinators etc.) operation and making it high available?

Sefa
  • 370
  • 2
  • 11

2 Answers2

1

I think that the question has not been well answered since postgres-xl supports the configuration of several coordinators as explained on their page https://www.postgres-xl.org/documentation/tutorial-arch.html where says: Postgres-XL allows multiple Coordinators to accept statements from applications independently but in an integrated way. Any writes from any Coordinator is available from any other Coordinators. They acts as if they are single database. The Coordinator's role is to accept statements, find what Datanodes are involved, send query plans on to the appropriate Datanodes if needed, collect the results and write them back to applications.

The Coordinator does not store any user data. It stores only catalog data to determine how to process statements, where the target Datanodes are, among others. Therefore, you don't have to worry about Coordinator failure much. When the Coordinator fails, you can just switch to the other one. So the question is aimed at how to have a load balancer that connects the application with the coordinators of postgres-xl, in which a solution such as nginx or HAPproxy can enter, a solution is nginx with its stream modulethat can connect nginx as load balancer to postgres-xl

If you want to use nginx as a load balancer between your application and the postgres-xd database, use the ngx_stream module the configuration is in the link http://nginx.org/en/docs/stream/ngx_stream_core_module.html

Renato
  • 11
  • 2
  • If you want to use nginx as a load balancer between your application and the postgres-xd database, use the ngx_stream module the configuration is in the link http://nginx.org/en/docs/stream/ngx_stream_core_module.html – Renato Jun 01 '20 at 07:06
0

Postgres-XL does not have HA features. You can put a load balancer in front of the coordinator nodes so they will have redundancy on that part. The nodes have no fail over support though so the loss on any one node anywhere will cause the entire cluster to fail. You can setup mirror nodes but even with that it will require manual intervention if a node fails, and that obviously doubles the amount of hardware you need.

BrianC
  • 1,793
  • 1
  • 18
  • 26