Postgres Plus® Cloud Database - FAQs

General FAQs

Q. Which cloud environments are supported?

A. Postgres Plus Cloud Database supports Amazon. Other cloud platforms are planned.

Q. Which Postgres versions are supported by Cloud Database?

A. Cloud Database comes ready to deploy PostgreSQL v9.4 and v9.5 instances as well as EDB Postgres Advanced Server v9.4 and v9.5 instances. Earlier versions are also supported.

Q. What's the difference between PostgreSQL and Postgres Plus Advanced Server?

A. PostgreSQL is the community version of PostgreSQL and is distributed by EnterpriseDB. Postgres Plus Advanced Server is an EnterpriseDB commercial product that adds Oracle features, Oracle database compatibility, many performance features (including a high speed data loader, Index Advisor, DynaTune, SQL wait-state statistics), built-in function packages, a software update monitor, enterprise monitoring tools, a SQL Performance Profiler, SQL Injection attack protection, a database migration toolkit, and heterogeneous replication with Oracle and SQL Server. View an in-depth feature comparison between PostgreSQL and Postgres Plus Advanced Server.

Q. Which web browsers does the Postgres Plus Cloud Database console support?

A. Apple Safari, Mozilla Firefox, Google Chrome, Microsoft Internet Explorer, and Opera.

Q. What options do I have for purchasing the Cloud Database?

A. There are two options:  (1) purchase the pay-as-you-go offering from Amazon without a long-term commitment, (2) purchase a one year subscription from EnterpriseDB that lets you purchase computing resources directly from Amazon, including reserved instances. See details below.

Q. How do I purchase the pay-as-you-go Cloud Database?

A. The pay-as-you-go Postgres Plus Cloud Database allows you to set up and use PostgreSQL or Postgres Plus Advanced Server clusters. You pay monthly usage fees for all the server instances you create. For pricing see: Cloud Database Pricing.

Q. How do I purchase the yearly subscription for Cloud Database?

A. The yearly subscription Postgres Plus Cloud Database allows you to purchase your computing resources directly from Amazon, which includes the ability to purchase reserved instances for a substantial discount compared to the pay-as-you-go option. You must also purchase an annual subscription from EnterpriseDB for the right to deploy Cloud Database on the computing resources you purchase from Amazon. For details, please see Cloud Database information.

Q. Which Amazon deployment regions are supported?

A. The following regions are currently supported:

  • United States East (Virginia)
  • United States West (N. California)
  • EU West (Ireland)
  • Asia Pacific SouthEast (Singapore)
  • Asia Pacific SouthEast (Australia)
  • Asia Pacific NorthEast (Tokyo)

If you need support for another region, please contact us

 

Q. Can I use my existing on-premise database subscription to use Cloud Database?

A. No. Fees for the pay-as-you-go Cloud Database are based on your actual Amazon usage, and fees for the yearly subscription to Cloud Database are based on anticipated Amazon usage.

Q. Can EnterpriseDB help me estimate the costs and pricing for my application?

A. We don't provide examples of pricing because there are so many variables affecting cost in database applications, each customers situation is different, and there are many components of your monthly bill. However, here are a few methods for estimating your usage:

 

The first method is to price the key cost parameters as they are detailed at: Cloud Database Pricing.

Note that these prices are for the US East (Northern Virginia) Region (for other regions visit the Postgres Plus Cloud Database Amazon Marketplace pages: http://aws.amazon.com/marketplace/pp/B00MI8NK4U and http://aws.amazon.com/marketplace/pp/B00MI8R5A0). For each parameter, guess-timate the quantities and multiply the price by the quantity. Then add your estimated costs for all parameters. This should give you a good approximation.

For example, for the 'Amazon EC2 On-Demand Instances' portion of your monthly Amazon bill, you will need to pick a Database Instance Class for each cluster you set up, and decide how many total servers (1 master plus n read replicas) will run in the cluster. Then, multiply the number of servers times the hourly rate for that instance class times the average number of hours in a month.

For example, the monthly charge for a Postgres Plus Cloud Database Advanced 3 server cluster composed of m1.small instances would be: 3 servers x 0.26 per hour x 729.6 average hours in a month = $569. Then, estimate the Amazon EC2 Data Transfer Rate, Elastic Block Storage, and S3 Store Fees -- and total everything up.

The second method is to use Amazon's cost estimator: http://calculator.s3.amazonaws.com/calc5.html. Keep in mind that this estimator does not include EnterpriseDB's fees built into the cost of the Amazon EC2 On-Demand Instances Running Amazon Linux as noted on our pricing page: Cloud Database Pricing

If your application is mission critical, large and/or complex, or your staff is limited in time or knowledge, EntepriseDB offers a Cloud Database Consulting engagement on a professional services basis. In this engagement, we work with your staff over a few days to evaluate and prototype migrating your database tier from an on-premise or existing hosted environment to a secure and elastic cloud deployment on Postgres Plus Cloud Database.

Finally, if you need DBA expertise, EnterpriseDB also offers the RemoteDBA service which allows you to immediately apply qualified staff-power where you need it for either short or long term engagements in a highly cost efficient manner tailored to your needs.

Please email our Sales department for details or call +1 781-357-3390 or 1-877-377-4352 (US Only).

Q. Who owns the data that I store at Amazon under Cloud Database?

A. The user does. The EnterpriseDB software and database storage are on Amazon's infrastructure under each user's own account -- the user owns the data. EnterpriseDB owns the Postgres Plus Advanced Server software and the Cloud Database software. As long as the user pays their Amazon bills (which includes both Amazon and EnterpriseDB fees) for the service, they are entitled to continue using the software and accessing their data. Should the user stop paying Amazon, they will lose access to the EnterpriseDB software and presumably the Amazon stored data as well. For full details, please check the Amazon agreements associated with your Amazon account.

Q. In the future, if your Cloud Database service is no longer available, what happens to my data?

A. The data is stored under each user's account. Assuming the EnterpriseDB software is no longer available on AWS, the clusters would cease operation. However, the storage associated with the user's account would remain and as long as the user continues to pay their Amazon bill, they maintain ownership and access to the data. To see and access your data, you would simply sign into your AWS account, go the AWS Management Console, click the EC2 tab, then click Volumes under the Elastic Block Store heading in the left hand navigation pane.

Q. How do I get usage or billing information, change my payment method, or cancel my purchase?

A. You can manage your Cloud Database subscription by visiting the following web page: http://www.amazon.com/dp-applications . For billing inquiries, email:application-payments@amazon.com. Note: After cancellation, you will no longer have access to the Cloud Database console. However, any running clusters and any backups existing at the time you cancel will still be active and available through your Amazon AWS console.

Q. Can I register two different users to manage the same clusters?

A. You can register two user ids (emails) that both use the same Amazon account. However, the two users cannot see or administer the same cluster. Clusters are associated with a single registered user. In other words, a cluster created by user1 is only visible and manageable by user1 and not visible or manageable to user2. However, since both users are using the same Amazon account, all charges incurred for all clusters will be on the same account/bill.

Q. Is Cloud Database available for deployment on bare metal systems?

A. Cloud Database does not yet support bare metal deployments.

Q. Which private clouds are supported by the Cloud Database?

A. Amazon Virtual Private Clouds (VPCs) are supported by the Cloud Database. Physical private cloud support is not currently available.

Q. What if I have more questions about Cloud Database?

A. Contact the EnterpriseDB Sales team by email at: sales@enterprisedb.com, on the EnterpriseDB website at: http://www.enterprisedb.com/general-inquiry-form, or by phone at: +1 781-357-3390 or 1-877-377-4352 (US Only).

Technology FAQs

Q. Do I need to make changes to my database for better performance in your cloud database?

A.To assist organizations who are thinking of moving to the cloud and have concerns about the efficiency of their database systems, we offer our popular Architectural Health Check service. This analysis service identifies performance and best practices issues and makes actionable recommendations to optimize your database. Acting on these recommendations will make your database perform better on-premise, and be prepared to take full advantage of cloud computing.

Q. Does Cloud Database support PostGIS?

A. Yes. PostGIS should be installed immediately after creating a single node cluster so that it persists during scale up, failover, and restore operations. Then, you can scale up your cluster to the desired number of servers.

Q. Does Cloud Database create databases automatically?

A. Yes, the Cloud Database will create replicas within your database cluster automatically based on thresholds you set to handle increasing read loads (known as horizontal scaling, or scale out). When a Cloud Database cluster is first created it has a single master server plus the number of read replicas you specify. The master hosts a single Postgres cluster which can contain many databases.

Q. Do I have my own instance of the Cloud Database console or am I sharing it with others?

A. Each Postgres Plus Cloud Database console, one in each supported Amazon region, supports all customers in that region.
However, each customer's Cloud Database cluster is entirely private and is not shared with anyone else.

Q. What operating system is used for my instances?

A. 64 bit Amazon Linux, upgraded regularly to the latest version.

Q. What type of network or shared file system is used for my instances?

A.The Amazon public cloud implementation is not based on a network or shared file system. It is based on LVM2 and ext3

Q. Can I create and run independent instances of PostgreSQL or Postgres Plus Advanced Server for different applications?

A. Yes. With Cloud Database, you can create and run independent instances of PostgreSQL or Postgres Plus Advanced Server for different applications.

Q. How is High Availability achieved in Cloud Database?

A. A JGroups cluster manager and node agent manage server health monitoring and automatic fail-over and are setup automatically for you when you create additional replicas. Pgpool is used to handle connection pooling allow more efficient use of client connections. Postgres' binary streaming replication is used to keep read replicas in sync with the master server ensuring READ loads are serviced. Auto-scaling maintains data availability under high or spiky loads by adding more replicas to the cluster as needed.

Q. What else is pgpool used for?

A. Pgpool is used for connection pooling and SQL routing. Connection pooling makes more efficient use of connection management to the database server and SQL routing sends write requests to the master and read requests to replicas. It also allows you to white and black list SQL commands to do things like send certain SELECT statements containing database write functions to the master. Replication is handled entirely by Postgres' binary streaming replication.

Q. How is high availability handled for the Cloud Database Manager itself on Amazon?

A. There are a couple of ways that a crash of the Cloud Database instance is handled. When you first create your Cloud Database instance in Amazon, you can choose to provide the instance with Termination Protection. This will automatically spin up another instance of the Cloud Database Console/Cluster Manager. Alternatively you can manually create another Cloud Database Console/Cluster Manager from the AWS console. In both cases: a) your database cluster(s) will continue running, and b) the new Console/Cluster Manager will find your running clusters and resume managing them.

Q. Do the instances in my cluster run in different availability zones for better high availability?

A. Yes, each instance runs in a different availability zone. You can check your Amazon console on AWS to determine in which availability zone each instance is running.

Q. Does Cloud Database make use of Amazon's Elastic IPs?

A. Yes, if the Master fails over to a new VM instance, the load balancing IP address will remain the same so that your applications requires no change in connection settings.

Q. Can I use Amazon's internal private IP instead of the public DNS to save on data transfer charges?

A. Within an Amazon region, if your Amazon hosted client or application server uses the public DNS, Amazon will smartly use the internal private IP, even across availability zones, saving you data transfer charges.

Q. Is pgpool required when using the Cloud Database?

A. Database access through the pgpool load balancing port is optional. However, if your cluster scales out additional replicas you will have to manually send application requests to the different servers. You can always connect directly to your database instances.

Q. How are SELECT statements with functions that modify data load balanced?

A. All INSERT-UPDATE-DELETE statements are sent to the master for processing. All SELECT statements get spread across the entire cluster. However, the load balancer does allow you to declare a list of functions, which, if they appear in any SELECT statement, cause that statement to executed on the master. This prevents any SELECT statements that modify data from being sent to a read replica. You can specify lists of functions using the parameters "black_function_list" and "white_function_list" in the configuration panel for a cluster.

Q. How much downtime occurs during fail-over?

A. If the master fails over there will be a short period of downtime for writes as a new master is created and attached to the old master's data, preventing any data loss. The time period is dependent on the size of the machine being created, its region, and performance of the Amazon infrastructure.

Q. How are replicas created in Cloud Database?

A. Replicas are kept up to date with the master server using Postgres' built-in streaming replication in Hot Standby mode.

Q. Is streaming replication synchronous?

A. No, it is asynchronous. Depending on configuration settings, load and other factors affecting performance, PostgreSQL's streaming replication is fast enough that each transaction can be replicated from the master database server to a replica server as quickly as the master database can perform a single transaction.

Q. How much data loss occurs in a fail-over situation?

A. If the master fails, all completed transactions are saved as the data is attached to a new master instance. If a replica fails, its replacement may be behind the master initially, but it will catch up as streaming replication resumes.

Q. Do the master, replicas, and console app use public or private IP addresses to communicate?

A. They use private IP addresses with certificate-based communication.

Can I manage the Postgres configuration parameters using Cloud Database?

A. Yes, by using the Configurations panel in the Cloud Database console Clusters tab. You can also create multiple parameter groups or configuration profiles that can be used for different clusters you set up.

Q. How do I configure access permissions (hba.conf) to the cluster?

A. Currently, these have to be managed manually on each server using ssh.

Q. Can I manage the pgpool configuration parameters using Cloud Database?

A. Yes, by using the Configurations pane on the Clusters tab in the Cloud Database console.

Q. How are backups made in Cloud Database?

A. Backups are made by creating an EBS backed snapshot during a timeslot you specify when you create a cluster (e.g., between 2:00 am and 4:00 am). You can also specify how many rolling daily backups to retain (e.g., the last 3 days). This is handled for you automatically.

Q. Does Cloud Database support point in time recovery (PITR)?

A. Yes.

Q. What kind of scaling is available in Cloud Database?

A. You can automatically scale the storage capacity and connections according to thresholds pre-set by you. For example, if you set a 75% storage threshold, then when the threshold value is exceeded, the Postgres Plus Cloud Database will automatically allocate, deploy, and attach additional storage for you, and record the events in the Event viewer. Also, you can manually scale to larger or smaller machine sizes.

Q. Does auto-scaling scale down with a reduction in demand?

A. No, it must be handled manually.

Q. What is the performance difference between cloud computing and running directly on physical hardware?

A. There are too many variables and use cases to make a realistic comparison. Suffice to say that in Amazon's public service, virtual machines as large as 64 CPUs and 128 GB memory are available, which should be more than enough to satisfy most applications.

Q. What is the largest database I can use?

A. Cloud Database can support multi-terabyte databases.

Q. What kind of monitoring does Cloud Database provide?

A. Cloud Database provides charts displaying CPU Load and Storage Space metrics. It also has an Event viewer that shows when instances join or leave a cluster, error events, and other status indicators. Finally, you can use Postgres Enterprise Manager to monitor your instances in much greater detail along with alerting and other features such as capacity management.

Q. Can Postgres Enterprise Manager agents monitor Cloud Database instances?

A. Yes, PEM can monitor PostgreSQL and Postgres Plus Advanced Server instances on public and private clouds or regular bare metal installations in the data center performed by Cloud Database.

Q. Can I use my existing Postgres based tools with Postgres Plus Cloud Database instances?

A. Yes.

Q. Where can I find documentation for Cloud Database?

A.You can download Cloud Database documentation here. The Cloud Database Console main dashboard also includes links to tutorials covering various tasks.

Developer FAQs

Q. How does Cloud Database help developers?

A. Cloud Database allows developers to easily and quickly set up robust PostgreSQL environments complete with automated backups, high availability with auto-failover, replication within the cluster, load balancing for optimizing the entire cluster, connection pooling to handle more users, and auto-scaling for spiky demand loads. Simply click a few buttons, copy the connection URL to your cluster and your database is ready-to-go. This can focus your time on your application and not database administration issues.

Q. How do I create my first cluster?

A. Log into the Cloud Database console and click the Launch DB Cluster button on the main dashboard. Specify your cluster details in Step 1, then your Backup preferences in Step 2, and click the launch button.

Q. My first instance is up and running, how do I connect my application or a client like pgAdmin?

A. Select the Clusters tab and click the server instance you want to connect to. Open the Details pane below the Cluster list and you will see the DNS name table to use in your client connections. Use the LBPort to connect through the load balancer and use the DBPort to connect directly to the server by-passing the load balancer.

Q. Can a Java application running in Tomcat on EC2 be connected to a Cloud Database cluster?

A. Yes. EC2 to EC2 connectivity is supported and you connect using the standard methods you use today by constructing a JDBC URL composed of the Amazon DNS name and port for the running database cluster. The DNS name and port are supplied to you immediately after you create a cluster.

Q. How do I scale my cluster up adding another replica?

A. Log into the Cloud Database console and click the Clusters tab. Select the Cluster you wish to scale and click the Scale Up icon in the left hand navigation pane. In Step 1 specify how many replicas and storage to add and in Step 2 press the Scale Up button.

Q. How do I create a sandbox environment using a copy of production data?

A. Log into the Cloud Database console and click the Backups tab. Click the desired backup from the list and click the Recover icon. Give the new instance a name and assign it a Server class and click Recover. That's it!