Menggunakan pengoptimal berbasis biaya - Amazon Athena

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

Menggunakan pengoptimal berbasis biaya

Anda dapat menggunakan fitur pengoptimal berbasis biaya (CBO) di Athena SQL untuk mengoptimalkan kueri Anda. Anda dapat meminta Athena mengumpulkan statistik tingkat tabel atau kolom untuk salah satu tabel Anda. AWS Glue Jika semua tabel dalam kueri Anda memiliki statistik, Athena menggunakan statistik untuk membuat rencana eksekusi yang ditentukannya sebagai yang paling berkinerja. Pengoptimal kueri menghitung rencana alternatif berdasarkan model statistik dan kemudian memilih salah satu yang kemungkinan akan menjadi yang tercepat untuk menjalankan kueri.

Statistik pada AWS Glue tabel dikumpulkan dan disimpan di AWS Glue Data Catalog dan disediakan untuk Athena untuk perencanaan dan pelaksanaan kueri yang lebih baik. Statistik ini adalah statistik tingkat kolom seperti jumlah yang berbeda, jumlah nilai nol, maks, dan min pada jenis file seperti Parket, ORC, JSON, ION, CSV, dan XHTML. Amazon Athena menggunakan statistik ini untuk mengoptimalkan kueri dengan menerapkan filter paling ketat sedini mungkin dalam pemrosesan kueri. Pemfilteran ini membatasi penggunaan memori dan jumlah catatan yang harus dibaca untuk memberikan hasil kueri.

Dalam hubungannya dengan CBO, Athena menggunakan fitur yang disebut rule-based optimizer (RBO). RBO secara mekanis menerapkan aturan yang diharapkan dapat meningkatkan kinerja kueri. RBO umumnya bermanfaat karena transformasinya bertujuan untuk menyederhanakan rencana kueri. Namun, karena RBO tidak melakukan perhitungan biaya atau perbandingan rencana, kueri yang lebih rumit menyulitkan RBO untuk membuat rencana yang optimal.

Untuk alasan ini, Athena menggunakan RBO dan CBO untuk mengoptimalkan kueri Anda. Setelah Athena mengidentifikasi peluang untuk meningkatkan eksekusi kueri, Athena menciptakan rencana yang optimal. Untuk informasi tentang detail rencana eksekusi, lihatMelihat rencana eksekusi untuk kueri SQL. Untuk diskusi mendetail tentang cara kerja CBO, lihat Mempercepat kueri dengan pengoptimal berbasis biaya di Amazon Athena di Blog Big Data. AWS

Untuk menghasilkan statistik untuk tabel AWS Glue Katalog, Anda dapat menggunakan konsol Athena, AWS Glue Konsol, atau AWS Glue API. Karena Athena terintegrasi dengan AWS Glue Catalog, Anda secara otomatis mendapatkan peningkatan kinerja kueri yang sesuai saat menjalankan kueri dari Amazon Athena.

Pertimbangan dan batasan

  • Jenis tabel — Saat ini, fitur CBO di Athena hanya mendukung tabel Hive yang ada di. AWS Glue Data Catalog

  • Athena for Spark - Fitur CBO tidak tersedia di Athena untuk Spark.

  • Harga — Untuk informasi harga, kunjungi halaman AWS Glue harga.

Menghasilkan statistik tabel menggunakan konsol Athena

Bagian ini menjelaskan cara menggunakan konsol Athena untuk menghasilkan statistik tingkat tabel atau kolom untuk tabel di. AWS Glue Untuk informasi tentang penggunaan AWS Glue untuk menghasilkan statistik tabel, lihat Bekerja dengan statistik kolom di Panduan AWS Glue Pengembang.

Untuk menghasilkan statistik untuk tabel menggunakan konsol Athena
  1. Buka konsol Athena di https://console.aws.amazon.com/athena/.

  2. Dalam daftar Tabel editor kueri Athena, pilih tiga titik vertikal untuk tabel yang Anda inginkan, lalu pilih Hasilkan statistik.

    Menu konteks untuk tabel di editor kueri Athena.
  3. Dalam kotak dialog Hasilkan statistik, pilih Semua kolom untuk menghasilkan statistik untuk semua kolom dalam tabel, atau pilih Kolom yang dipilih untuk memilih kolom tertentu. Semua kolom adalah pengaturan default.

    Kotak dialog menghasilkan statistik.
  4. Untuk peran AWS Glue layanan, buat atau pilih peran layanan yang ada untuk memberikan izin AWS Glue untuk menghasilkan statistik. Peran AWS Glue layanan juga memerlukan S3:GetObjectizin ke bucket Amazon S3 yang berisi data tabel.

    Memilih peran AWS Glue layanan.
  5. Pilih Hasilkan statistik. Sebuah Menghasilkan statistik untuk banner notifikasi table_name menampilkan status tugas.

    Spanduk pemberitahuan statistik Menghasilkan.
  6. Untuk melihat detail di AWS Glue konsol, pilih Lihat di Glue.

    Untuk informasi tentang melihat statistik di AWS Glue konsol, lihat Melihat statistik kolom di Panduan AWS Glue Pengembang.

  7. Setelah statistik dihasilkan, tabel dan kolom yang memiliki statistik menunjukkan kata Statistik dalam tanda kurung, seperti pada gambar berikut.

    Tabel yang menunjukkan ikon statistik di editor kueri Athena.

Sekarang ketika Anda menjalankan kueri Anda, Athena akan melakukan optimasi berbasis biaya pada tabel dan kolom yang statistiknya dihasilkan.

Sumber daya tambahan

Untuk informasi tambahan, lihat sumber daya berikut.

Enhance query performance using AWS Glue Data Catalog statistics (AWS YouTube channel)