Amazon Aurora
Machine Learning (ML)
Amazon Aurora
Machine Learning allows twtech to invoke
ML models directly from SQL queries, without having to write
application code or move data outside of twtech Aurora database.
This integration brings the power of AWS ML services like Amazon SageMaker and Amazon
Comprehend directly to Aurora, enabling real-time in-database inference.
Key
Highlights
|
Feature |
Details |
|
No
data movement |
Avoids ETL — queries run ML models from within Aurora. |
|
In-SQL
integration |
Use SQL functions to call SageMaker or Comprehend. |
|
Real-time
predictions |
Useful for fraud detection, recommendation engines, etc. |
|
Supports |
Aurora MySQL
and Aurora PostgreSQL
(specific versions). |
|
Model
types |
Pretrained (e.g., NLP, sentiment) and custom models
(SageMaker). |
Supported AWS ML Services
1.
Amazon SageMaker
- Run custom ML models trained and hosted in SageMaker.
- Great for use cases like image classification, regression, fraud detection.
2.
Amazon Comprehend
- Built-in NLP tasks like sentiment analysis, entity recognition.
- No model training required.
Use Cases
- Personalized product recommendations
- Document classification / summarization
- Fraud detection
- Sentiment analysis on user reviews
- Named entity recognition from customer messages
How It Works
Aurora communicates with SageMaker or
Comprehend over AWS PrivateLink,
keeping data within the AWS network
for low latency and high security.
twtech uses SQL
functions to call ML models from within queries.
Example: Using SageMaker from SQL
MySQL:
# sql
SELECT ml.predict_sagemaker( endpoint_name => 'my-sagemaker-endpoint', payload => json_object('feature1', val1, 'feature2', val2)) AS prediction;PostgreSQL:
# sqlSELECT aws_ml.predict_sagemaker( 'my-sagemaker-endpoint', json_build_object('feature1', val1, 'feature2', val2));Example: Using Comprehend (Sentiment
Analysis)
# sql SELECT aws_ml.comprehend_detect_sentiment('I love using Aurora ML!', 'en');Returns:
# json{ "Sentiment": "POSITIVE", "SentimentScore": { "Positive": 0.998, "Negative": 0.001, "Neutral": 0.001, "Mixed": 0.0 }} Supported
Versions
|
Engine |
Minimum Version |
|
Aurora MySQL |
2.09+ (MySQL 5.7 compatible) |
|
Aurora PostgreSQL |
11.9+, 12.4+, 13.3+, 14.3+ |
Permissions & Setup
To use Aurora ML:
1.
Enable Aurora ML
integration.
2.
Create and authorize
IAM role for Aurora to invoke SageMaker/Comprehend.
3.
Use SQL functions
to call models.
Example IAM policy needs:
# json{ "Effect": "Allow", "Action": [ "sagemaker:InvokeEndpoint", "comprehend:DetectSentiment" ], "Resource": "*"}Attach this IAM role to the Aurora cluster
using the aws
rds add-role-to-db-cluster command.
Pricing
- No extra cost from Aurora.
- Pay for:
- SageMaker endpoint usage
- Comprehend API calls
- Data transfer if across regions (unlikely with PrivateLink)
Limitations
- Only inference is supported (not training).
- Limited to specific Aurora versions.
- Model input/output must be JSON format.
- Cannot chain ML calls within stored procedures or triggers (best used in queries).
No comments:
Post a Comment