Skip to content

Using AWS RDS PostgreSQL with DataRobot

はじめに

DataRobot supports and recommends using managed services, including AWS RDS PostgreSQL, to store and manage data. This documentation provides detailed instructions on configuring DataRobot to utilize AWS RDS PostgreSQL as a database solution.

Steps to configure AWS RDS PostgreSQL with DataRobot

1. Create an AWS RDS PostgreSQL instance

  • Log in to the AWS Management Console.
  • Navigate to the Amazon RDS service.
  • Click "Create Database" and choose "PostgreSQL" as the engine.
  • Configure the following settings:
  • DB Instance Size: Choose an appropriate instance size based on the database requirements.
  • Master username: Set postgres as master username.
  • Master password: Set a master password for accessing the database.
  • DB Engine Version: Select the PostgreSQL engine version 12 .
  • Allocated Storage: Set the desired disk space for the database.
  • Database authentication: Select "Password authentication" to use passwords for database authentication.
  • Follow the on-screen instructions to set up other parameters if required

Required PostgreSQL extensions

DataRobot requires the following PostgreSQL extensions. When connecting as a superuser, DataRobot's initialization scripts create these extensions automatically.

Extension 必須 目的
pgcrypto If Covalent is enabled Cryptographic functions used by Covalent
pgvector If Memory Service is enabled Vector similarity search
pg_trgm If Memory Service is enabled Trigram-based text search

These extensions are available in AWS RDS by default and do not require parameter group changes.

!!! Warning: When limited permissions are granted to database user If the PostgreSQL connection uses a non-superuser account that cannot run CREATE EXTENSION, you must manually create the required extensions on each database before installing DataRobot:

``` 
-- Connect to the covalent database as a superuser, then:
CREATE EXTENSION IF NOT EXISTS pgcrypto;

-- Connect to the memoryservice database as a superuser (if Memory Service is enabled):
CREATE EXTENSION IF NOT EXISTS vector;
CREATE EXTENSION IF NOT EXISTS pg_trgm; 
```

2. Obtain RDS PostgreSQL endpoint

  • Once the RDS instance is created, note down the Endpoint. You'll need this for configuring DataRobot.

3. Configure DataRobot to use AWS RDS PostgreSQL

When PostgreSQL is configured as an external service, additional YAML override values must be provided.

postgresql-ha:
  postgresql:
    postgresPassword: YOUR_AWS_RDS_PASSWORD 

then add to your values.yaml within the datarobot chart.

global:
  postgresql:
    internal: false
    hostname:  "YOUR_AWS_RDS_ENDPOINT"

core-integration-tasks:
  jobs:
    setup:
      config_env_vars:
        PGSQL_INIT_SCRIPT: /init-config/db

build-service:
  buildService:
    envApp:
      secret:
        POSTGRES_HOST: "YOUR_AWS_RDS_ENDPOINT" 

Built-in backup service

Amazon RDS offers a built-in backup service that automatically performs backups of your databases according to a specified schedule. You can configure the backup retention period and frequency to meet your data retention requirements. Additionally, you can perform manual backups and create snapshots of specific instances at any time.

成果

By following these steps, you can seamlessly integrate AWS RDS PostgreSQL with DataRobot, providing a reliable and scalable database solution. This setup enhances data storage and retrieval, contributing to the overall efficiency of your DataRobot instance. If issues arise, refer to DataRobot documentation and AWS RDS documentation for troubleshooting guidance.

Note: Always ensure that you follow best practices for security and compliance when configuring external databases with DataRobot and AWS RDS.

Fresh Install or Upgrade to 10.2.3

AWS RDS

  • Modify the parameter group, to add password_encryption set to scram-sha-256. If you only have default parameter group set then create a new option group and configure your RDS to use the option group

  • Once option group is added to RDS, reboot the RDS instance with failover

  • Follow guide to delete the existing secret

  • Continue with upgrade as in the admin guide