AWS Athena: Semua yang Perlu Anda Ketahui
Diterbitkan: 2022-05-02AWS Athena adalah layanan kueri yang fleksibel dan hemat biaya untuk data yang disimpan di AWS S3.
AWS adalah salah satu penyedia cloud terbesar di dunia. Ini menawarkan banyak layanan untuk penyimpanan cloud dan kebutuhan komputasi. AWS S3 adalah salah satu layanan paling populer di platform AWS. Ini menawarkan daya tahan dan ketersediaan data yang tak tertandingi sekaligus menjadi salah satu opsi penyimpanan termurah di cloud.

Mengingat banyaknya fitur dan penyimpanan yang secara teoritis tak terbatas, Anda dapat memiliki terabyte atau petabyte data dalam bucket S3. Menganalisis data seperti itu hampir tidak mungkin jika kita membuka setiap file dan membaca petabyte data secara manual. Di sinilah Layanan AWS Athena masuk.
Dengan kata sederhana, AWS Athena digunakan sebagai layanan analisis data hanya dengan mengakses data yang tersedia di bucket S3 menggunakan kueri SQL. Jadi, jika Anda memahami bahkan dasar-dasar SQL, Anda dapat mulai bekerja menganalisis data S3 dengan AWS Athena.
Mari kita pahami ini dengan contoh singkat. Mari kita asumsikan Anda telah mengonfigurasi salah satu bucket Anda sebagai bucket log akses untuk semua penyeimbang yang Anda miliki di beberapa akun di organisasi Anda. Bagaimana Anda menanyakan data log selama bertahun-tahun dan mendapatkan wawasan penting yang bermakna dari file log ini? Jawabannya adalah AWS Athena.
Fitur AWS Athena
- Alat Berbasis SQL: AWS Athena adalah layanan berbasis SQL yang sangat mudah digunakan. Anda cukup mengarahkan Athena ke salah satu bucket Anda, menentukan skema data Anda, lalu mulai menggunakan kueri SQL di bucket Anda.
- Tanpa server: Anda tidak perlu memelihara infrastruktur untuk menjalankan AWS Athena. Athena tanpa server dan dioptimalkan untuk menggunakan beberapa sumber daya komputasi secara otomatis sesuai kebutuhan Anda.
- Cepat dan dioptimalkan: Athena telah dioptimalkan untuk menggunakan jumlah sumber daya yang efisien untuk memberikan hasil kueri Anda sesegera mungkin. Ini bekerja sangat baik dengan analisis kecil dan kompleks dari data S3.
- Hemat biaya: Athena adalah layanan bayar sesuai penggunaan. Ini berarti tidak ada biaya dasar untuk menggunakan AWS Athena; Anda hanya membayar untuk kueri yang Anda jalankan di Layanan Athena.
- Ketahanan dan Ketersediaan data: Karena Athena mengandalkan data di bucket S3 Anda, Anda dapat yakin bahwa data tersebut sangat tersedia dan tahan lama.
- Dukungan: Athena mendukung beberapa format file seperti JSON, CSV, Avro, ORC, dan lainnya.
- Keamanan: Athena menggunakan fitur keamanan seperti IAM, kebijakan bucket, dan ACL, yang membuatnya sangat aman.
- Athena Backend: Athena menggunakan Presto open-source sebagai backend. Presto adalah mesin SQL terdistribusi untuk menanyakan dan menganalisis beban kerja data besar.
Harga dan pengoptimalan AWS Athena
Saat menggunakan AWS Athena, Anda akan dikenakan biaya sebesar $5 per terabyte yang dipindai saat menggunakan AWS Athena. Harga ini mungkin sedikit berbeda untuk beberapa wilayah AWS.
- Kueri yang efisien : Jika Anda terbiasa dengan SQL, Anda harus tahu bahwa ada lebih dari satu cara untuk mendapatkan hasil tertentu dari data menggunakan SQL. Untuk mengoptimalkan Athena, Anda dapat menggunakan kueri efisien yang membutuhkan waktu lebih sedikit untuk menjalankan kueri Anda.
- Transformasi Data: Jika Anda ingin mengoptimalkan kueri Anda lebih jauh, Anda dapat mengompresi, mempartisi, atau mengonversi data Anda ke kumpulan data yang lebih kecil, yang semakin mengurangi waktu berjalan kueri Anda. Dengan menggunakan transformasi data, Anda dapat mengoptimalkan kueri hingga 90%.
- Bergabung dengan tabel virtual: Bergabung dengan tabel adalah fitur yang sangat penting dari SQL. Meskipun mungkin tampak seperti operasi sederhana, itu bisa menjadi operasi yang sangat kompleks. Disarankan untuk menyimpan tabel yang lebih besar di sebelah kiri dan tabel dengan data yang lebih sedikit di sebelah kanan.
Perbedaan antara AWS Athena dan Redshift Spectrum
Redshift Spectrum adalah layanan lain yang dapat digunakan untuk menjalankan kueri pada bucket AWS S3. Baik Redshift Spectrum maupun Athena tidak memiliki server, dapat menjalankan kueri kompleks di S3, dan diberi harga 5% per Terrabyte data yang diproses, jadi apa bedanya?

Pertunjukan
AWS Athena menggunakan sumber daya komputasi dari kumpulan sumber daya yang disediakan oleh AWS. Sebaliknya, spektrum Redshift menggunakan sumber daya yang dialokasikan menurut ukuran cluster Redshift. Hal ini memungkinkan Anda untuk memiliki kontrol lebih besar atas sumber daya yang digunakan oleh layanan Redshift Spectrum, dan jika Anda ingin meningkatkan kinerja, Anda selalu dapat meningkatkan ukuran cluster Redshift Anda.
Memuat data untuk diproses
Kedua layanan menggunakan tabel virtual untuk menjalankan kueri SQL pada data Anda. Tabel Virtual dibuat menggunakan Katalog Data Lem untuk manajemen skema. Athena dapat langsung menggunakan data dari skema Katalog Data Lem, sedangkan saat menggunakan Spektrum Redshift, Anda perlu mengonfigurasi tabel eksternal dari Skema Katalog Data Lem.
Ini adalah perbedaan utama antara kedua layanan, jadi ketika memilih antara spektrum Redshift dan Athena. Anda harus menggunakan Redshift Spectrum jika Anda ingin membuat kueri data di S3 bersama dengan data yang disimpan di gudang data Redshift atau jika Anda bersedia membayar biaya yang lebih tinggi untuk meningkatkan kinerja kueri Anda di S3. Athena dapat berguna ketika semua data Anda hanya ada di ember S3.
Perbedaan antara AWS Athena dan S3 Select
S3 select adalah layanan tanpa server lain dari AWS untuk melakukan kueri data di S3 menggunakan SQL. Namun, perbedaan utama antara S3 Select dan Athena adalah Anda hanya dapat menggunakan kueri SQL SELECT saat menggunakan S3 Select, sedangkan Athena dapat digunakan untuk semua jenis kueri SQL. Keterbatasan lain dari pemilihan S3 adalah Anda hanya dapat melakukan operasi SELECT pada satu objek pada satu waktu.
Jadi, jika kebutuhan Anda hanya untuk menarik data atau subset data dari objek S3, Anda harus menggunakan S3 Select. Untuk kueri dan operasi kompleks seperti GABUNG atau untuk memproses data di seluruh bucket S3, Anda harus menggunakan AWS Athena.
Keuntungan menggunakan AWS Athena
- Athena menghilangkan kebutuhan untuk mengembangkan alat analisis data yang kompleks dan mahal untuk data Anda.
- Athena tidak memiliki server, yang menjadikannya layanan yang cukup mudah digunakan. Anda tidak perlu memelihara infrastruktur.
- AWS telah mengoptimalkan Athena untuk dapat mengambil hasil kueri dalam hitungan detik setelah Anda menjalankan kueri Athena.
- Karena Athena tidak memiliki server, Anda tidak perlu membayar untuk layanan Athena. Anda hanya membayar untuk kueri yang Anda pilih untuk dijalankan. Bahkan jika Anda membatalkan kueri, Anda hanya akan dikenakan biaya untuk data yang diproses dan bukan seluruh kueri.
- Athena dapat diintegrasikan dengan layanan AWS lainnya dengan mudah. Salah satu integrasi terpenting dan berharga untuk AWS Athena adalah dengan layanan AWS Glue. AWS Glue adalah layanan ETL yang dapat digunakan untuk mengubah data menjadi bentuk yang lebih efisien dan mudah dibaca, yang kemudian dapat dianalisis dengan AWS Athena.
- Athena memungkinkan Anda menjalankan beberapa kueri secara bersamaan.
Batasan AWS Athena
- Ukuran baris: Ukuran baris dalam tabel AWS Athena virtual tidak boleh melebihi 32 Megabita. Batas ini dapat ditingkatkan dalam kasus yang sangat terbatas untuk file CSV dan JSON hingga 100 Megabyte, tetapi sangat disarankan untuk membatasi ukuran baris hingga 32 Megabyte untuk menghindari kesalahan yang tidak diinginkan.
- File Tersembunyi: File dengan nama yang dimulai dengan garis bawah (_) atau titik (.) diperlakukan sebagai disembunyikan oleh Layanan Athena. Ini dapat digunakan sebagai fitur untuk menghindari pemrosesan file yang tidak diinginkan.
- Athena tidak dapat memproses data di S3 Glacier atau S3 Glacier Deep Archive. Kelas penyimpanan ini hanya untuk opsi pengarsipan data dan memiliki waktu pengambilan dari menit hingga jam, sehingga dapat dipahami jika AWS Athena tidak dapat mengambil data dari kelas ini.
- Athena tidak mendukung prosedur tersimpan .
- Athena versi 1 tidak mendukung kueri berparameter . Ini didukung di Athena versi 2.
- Pernyataan seperti MERGE, UPDATE, CREATE TABLE LIKE,
DESCRIBE INPUT
danDESCRIBE OUTPUT
tidak didukung.
Kesimpulan
Dalam artikel ini, kami telah membahas alat analisis data dari AWS AWS Athena, fitur, kelebihan, dan beberapa batasannya. Athena adalah salah satu alat paling canggih untuk memproses dan menganalisis data di bucket S3. Bahkan batasan layanannya cukup sederhana dan dapat diatasi jika diperlukan.
Anda juga dapat melihat beberapa praktik terbaik untuk mengamankan Penyimpanan AWS S3.