Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Jalankan kueri Athena dengan Step Functions
Anda dapat mengintegrasikan AWS Step Functions dengan Amazon Athena untuk memulai dan menghentikan eksekusi kueri dan mendapatkan hasil kueri dengan Step Functions. Menggunakan Step Functions, Anda dapat menjalankan kueri ad-hoc atau data terjadwal, dan mengambil hasil yang menargetkan danau data S3 Anda. Athena bersifat nirserver, sehingga tidak ada infrastruktur yang disiapkan atau dikelola dan Anda hanya membayar untuk kueri yang Anda jalankan. Halaman ini mencantumkan Athena yang didukung APIs dan memberikan contoh Task
status untuk memulai kueri Athena.
Untuk belajar tentang berintegrasi dengan AWS servicesin Step Functions, lihat Integrasi layanan dan. Meneruskan parameter ke layanan API di Step Functions
Fitur utama dari integrasi Athena yang Dioptimalkan
-
Pola Jalankan Tugas (.sync) integrasi didukung.
-
Tidak ada pengoptimalan untuk pola Minta Respons integrasi.
-
Pola Tunggu Callback dengan Task Token integrasi tidak didukung.
Untuk mengintegrasikan AWS Step Functions dengan Amazon Athena, Anda menggunakan integrasi layanan Athena yang disediakan. APIs
Integrasi APIs layanan sama dengan Athena APIs yang sesuai. Tidak semua APIs mendukung semua pola integrasi, seperti yang ditunjukkan pada tabel berikut.
API | Respons Permintaan | Jalankan Tugas (.sync) |
---|---|---|
StartQueryExecution |
Didukung | Didukung |
StopQueryExecution |
Didukung | Tidak didukung |
GetQueryExecution |
Didukung | Tidak didukung |
GetQueryResults |
Didukung | Tidak didukung |
Berikut ini mencakup status tugas yang memulai kueri Athena.
"Start an Athena query": {
"Type": "Task",
"Resource": "arn:aws:states:::athena:startQueryExecution.sync",
"Parameters": {
"QueryString": "SELECT * FROM \"myDatabase\".\"myTable\" limit 1",
"WorkGroup": "primary",
"ResultConfiguration": {
"OutputLocation": "s3://amzn-s3-demo-bucket"
}
},
"Next": "Get results of the query"
}
Amazon Athena APIs yang didukung:
-
-
Parameter yang didukung:
-
-
Parameter yang didukung:
-
-
Parameter yang didukung:
catatan
Ada kuota untuk input maksimum atau ukuran data hasil untuk tugas di Step Functions. Ini membatasi Anda untuk 256 KB data sebagai string yang dikodekan UTF -8 saat Anda mengirim ke, atau menerima data dari, layanan lain. Lihat Kuota yang berkaitan dengan eksekusi mesin status.
IAMkebijakan untuk memanggil Amazon Athena
Contoh template berikut menunjukkan bagaimana AWS Step Functions menghasilkan IAM kebijakan berdasarkan sumber daya dalam definisi mesin negara Anda. Untuk informasi selengkapnya, silakan lihat Bagaimana Step Functions menghasilkan IAM kebijakan untuk layanan terintegrasi dan Temukan pola integrasi layanan di Step Functions.
StartQueryExecution
Sumber daya statis
Sumber daya dinamis
StopQueryExecution
Sumber
{
"Version": "2012-10-17",
"Statement":[
{
"Effect": "Allow",
"Action": [
"athena:stopQueryExecution"
],
"Resource": [
"arn:aws:athena:{{region}}:{{accountId}}:workgroup/*"
]
}
]
}
GetQueryExecution
Sumber
{
"Version": "2012-10-17",
"Statement":[
{
"Effect": "Allow",
"Action": [
"athena:getQueryExecution"
],
"Resource": [
"arn:aws:athena:{{region}}:{{accountId}}:workgroup/*"
]
}
]
}
GetQueryResults
Sumber
{
"Version": "2012-10-17",
"Statement":[
{
"Effect": "Allow",
"Action": [
"athena:getQueryResults"
],
"Resource": [
"arn:aws:athena:{{region}}:{{accountId}}:workgroup/*"
]
},
{
"Effect": "Allow",
"Action": [
"s3:GetObject"
],
"Resource": [
"arn:aws:s3:::*"
]
}
]
}