Integrate Amazon SageMaker with Tiger Cloud
Build, train, and deploy ML models with time-series data storage and analysis
Amazon SageMaker AI is a fully managed machine learning (ML) service. With SageMaker AI, data scientists and developers can quickly and confidently build, train, and deploy ML models into a production-ready hosted environment.
This page shows you how to integrate Amazon SageMaker with a Tiger Cloud service.
Prerequisites
Section titled “Prerequisites”To follow the procedure on this page you need to:
-
Create a target Tiger Cloud service.
This procedure also works for self-hosted TimescaleDB.
- Set up an AWS Account
Prepare your service to ingest data from SageMaker
Section titled “Prepare your service to ingest data from SageMaker”Create a table in Tiger Cloud service to store model predictions generated by SageMaker.
-
Connect to your Tiger Cloud service
For Tiger Cloud, open an SQL editor in Tiger Console. For self-hosted TimescaleDB, use
psql. -
For better performance and easier real-time analytics, create a hypertable
Hypertables are PostgreSQL tables that automatically partition your data by time. You interact with hypertables in the same way as regular PostgreSQL tables, but with extra features that makes managing your time-series data much easier.
CREATE TABLE model_predictions (time TIMESTAMPTZ NOT NULL,model_name TEXT NOT NULL,prediction DOUBLE PRECISION NOT NULL) WITH (tsdb.hypertable);When you create a hypertable using CREATE TABLE … WITH …, the default partitioning column is automatically the first column with a timestamp data type. Also, TimescaleDB creates a columnstore policy that automatically converts your data to the columnstore, after an interval equal to the value of the chunk_interval, defined through
afterin the policy. This columnar format enables fast scanning and aggregation, optimizing performance for analytical workloads while also saving significant storage space. In the columnstore conversion, hypertable chunks are compressed by up to 98%, and organized for efficient, large-scale queries.You can customize this policy later using alter_job. However, to change
afterorcreated_before, the compression settings, or the hypertable the policy is acting on, you must remove the columnstore policy and add a new one.You can also manually convert chunks in a hypertable to the columnstore.
Create the code to inject data into a service
Section titled “Create the code to inject data into a service”-
Create a SageMaker Notebook instance
- In Amazon SageMaker > Notebooks and Git repos, click
Create Notebook instance. - Follow the wizard to create a default Notebook instance.
- In Amazon SageMaker > Notebooks and Git repos, click
-
Write a Notebook script that inserts data into your Tiger Cloud service
-
When your Notebook instance is
inService,clickOpen JupyterLaband clickconda_python3. -
Update the following script with your connection details, then paste it in the Notebook.
import psycopg2from datetime import datetimedef insert_prediction(model_name, prediction, host, port, user, password, dbname):conn = psycopg2.connect(host=host,port=port,user=user,password=password,dbname=dbname)cursor = conn.cursor()query = """INSERT INTO model_predictions (time, model_name, prediction)VALUES (%s, %s, %s);"""values = (datetime.utcnow(), model_name, prediction)cursor.execute(query, values)conn.commit()cursor.close()conn.close()# Example usageinsert_prediction(model_name="example_model",prediction=0.95,host="<host>",port="<port>",user="<user>",password="<password>",dbname="<dbname>")
-
-
Test your SageMaker script
-
Run the script in your SageMaker notebook.
-
Verify that the data is in your service
Open an SQL editor and check the
sensor_datatable:SELECT * FROM model_predictions;You see something like:
time model_name prediction 2025-02-06 16:56:34.370316+00 timescale-cloud-model 0.95
-
Now you can seamlessly integrate Amazon SageMaker with Tiger Cloud to store and analyze time-series data generated by machine learning models. You can also integrate visualization tools like Grafana or Tableau with Tiger Cloud to create real-time dashboards of your model predictions.