Contoh Amazon Data Firehose - Amazon Athena

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Contoh Amazon Data Firehose

Saat Anda menggunakan Firehose untuk mengirimkan data ke Amazon S3, konfigurasi default akan menulis objek dengan kunci yang terlihat seperti contoh berikut:

s3://amzn-s3-demo-bucket/prefix/yyyy/MM/dd/HH/file.extension

Untuk membuat tabel Athena yang menemukan partisi secara otomatis pada waktu kueri, alih-alih harus menambahkannya ke AWS Glue Data Catalog saat data baru tiba, Anda dapat menggunakan proyeksi partisi.

CREATE TABLEContoh berikut menggunakan konfigurasi Firehose default.

CREATE EXTERNAL TABLE my_ingested_data ( ... ) ... PARTITIONED BY ( datehour STRING ) LOCATION "s3://amzn-s3-demo-bucket/prefix/" TBLPROPERTIES ( "projection.enabled" = "true", "projection.datehour.type" = "date", "projection.datehour.format" = "yyyy/MM/dd/HH", "projection.datehour.range" = "2021/01/01/00,NOW", "projection.datehour.interval" = "1", "projection.datehour.interval.unit" = "HOURS", "storage.location.template" = "s3://amzn-s3-demo-bucket/prefix/${datehour}/" )

TBLPROPERTIESKlausul dalam CREATE TABLE pernyataan tersebut memberi tahu Athena sebagai berikut:

  • Gunakan proyeksi partisi saat menanyakan tabel

  • Kunci partisi datehour adalah tipe date (yang mencakup waktu opsional)

  • Bagaimana tanggal diformat

  • Kisaran waktu tanggal. Perhatikan bahwa nilai harus dipisahkan dengan koma, bukan tanda hubung.

  • Di mana menemukan data di Amazon S3.

Saat Anda menanyakan tabel, Athena menghitung nilai datehour dan menggunakan templat lokasi penyimpanan untuk menghasilkan daftar lokasi partisi.