Mengenal AWS PVC : Membahas Amazon Web Services Athena – 2
Fitur AWS Athena
Di antara banyak layanan yang disediakan oleh Amazon, Athena adalah salah satunya. Athena memiliki beberapa fitur yang membuatnya cocok untuk analisis data. Mari kita lihat berbagai fitur ini satu per satu.
- Easy Implementation : Athena tidak memerlukan instalasi, dan dapat diakses langsung dari AWS CLI atau AWS Console.
- Serverless : Athena adalah layanan serverless, sehingga pengguna tidak perlu khawatir tentang infrastruktur, konfigurasi, skalabilitas, atau kegagalan. Athena mengurus semuanya dengan sendirinya.
- Pay per Query : Athena mengenakan biaya hanya untuk kueri yang dijalankan, yaitu jumlah data yang dikelola per kueri. Dapat menghemat banyak biaya jika dapat mengompres dan memformat dataset secara tepat.
- Fast : Athena adalah alat analisis yang sangat cepat. Ini dapat menjalankan kueri kompleks dengan cepat dengan memecahnya menjadi kueri yang lebih sederhana dan menjalankannya secara paralel, kemudian menggabungkan hasilnya untuk memberikan output yang diinginkan.
- Secure : Dengan bantuan kebijakan IAM dan identitas AWS, Athena memberikan kontrol penuh atas dataset. Karena data disimpan di bucket S3, kebijakan IAM dapat membantu untuk mengelola kontrol pengguna.
- Highly Available : Dengan jaminan dari AWS, Athena sangat tersedia, dan pengguna dapat menjalankan kueri sepanjang waktu. Seperti AWS yang memiliki ketersediaan 99,999%, begitu juga Athena.
- Integration : Fitur terbaik Athena adalah dapat diintegrasikan dengan AWS Glue. AWS Glue akan membantu pengguna membangun repositori data yang lebih terintegrasi. Ini membantu Anda membuat versi data yang lebih baik, tabel, tampilan, dll.
Keterbatasan Amazon Athena :
- Optimisasi terbatas pada kueri. Misalnya, data yang sudah disimpan di S3 tidak dapat dioptimalkan.Tidak ada opsi indeks.
- Opsi-indeks biasanya muncul di database tradisional. Tanpa indeks, beban operasi pada Athena meningkat, yang berpotensi memengaruhi kinerja.
- Kueri efisien memerlukan partisi. Untuk menjalankan kueri dengan efisien, data harus dipartisi terlebih dahulu, dan partisi harus dikelola agar sesuai dengan kebutuhan kinerja yang terbaik.
- Prosedur tersimpan, kueri parameter, dan konektor federasi Presto tidak didukung. Amazon Athena Federated Query diperlukan untuk menghubungkan sumber data.
- Saat mengkueri tabel dengan ribuan partisi, Athena dapat mengalami time-out.
- File sumber yang dimulai dengan garis bawah atau titik dianggap tersembunyi.
- Ukuran baris dan kolom tidak boleh melebihi 32 megabita.
- Athena tidak mendukung pengkuerian data dalam kelas penyimpanan S3 Glacier dan S3 Glacier Deep Archive.
- Pernyataan seperti CREATE TABLE LIKE, DESCRIBE INPUT dan DESCRIBE OUTPUT, EXECUTE ? USING, MERGE, dan UPDATE tidak didukung.
Perbedaan AWS Athena vs. AWS Glue
Sejak diluncurkan pada Agustus 2017, AWS Glue telah beroperasi sebagai layanan Extract, Transform, and Load (ETL) yang sepenuhnya dikelola. Ini dilengkapi dengan tiga komponen utama:
- Penjadwal fleksibel untuk mengelola pemantauan pekerjaan
- Mesin ETL yang mampu menghasilkan kode Scala atau Python
- Katalog data yang berfungsi sebagai repositori metadata pusat
AWS Glue membantu untuk menemukan dan mentransformasi set data serta mempersiapkannya untuk penemuan dan pengkuerian dengan alat-alat ini.
Kelebihan dan Kekurangan Menggunakan AWS Athena:
Kelebihan AWS Athena:
- Serverless : Dikirimkan sebagai layanan serverless yang sepenuhnya dikelola, AWS Athena menghemat Anda dari semua kerumitan yang terkait dengan mengelola infrastruktur. Tidak perlu khawatir tentang menyiapkan klaster, mengatur kapasitas, atau memuat data.
- Cost-effective : AWS Athena tidak hanya hemat biaya tetapi juga cukup terjangkau dibandingkan dengan pesaingnya yang dekat. Layanan ini tidak membebankan biaya berbasis instance. Anda hanya membayar untuk kueri yang Anda jalankan.
- widely Accessible : Sebagai layanan yang menjalankan kueri menggunakan SQL standar, AWS Athena dapat diakses oleh siapa saja – bukan hanya pengembang dan insinyur. Dapat diadopsi oleh analis bisnis dan profesional data lainnya, karena kueri SQL standar sangat sederhana dan langsung ke depan.
- Flexibility : Arsitektur terbuka dan serbaguna Amazon Athena tidak membatasi Anda pada vendor, teknologi, atau perangkat tertentu. Misalnya, dapat bekerja dengan berbagai format file open-source dan beralih bebas antar mesin kueri tanpa harus menyesuaikan skema.
Kekurangan AWS Athena:
- No data Optimization : AWS Athena tidak menawarkan banyak kemampuan kustomisasi. Hanya dapat mengoptimalkan kueri – bukan data yang mendasarinya. Bahkan saat mencoba mengganti data Amazon S3 menggunakan AWS Glue, tetap perlu berhati-hati agar tidak merusak layanan lain yang mengakses data yang sama.
- Shared Resources : Menurut Perjanjian Tingkat Layanan (SLA) Amazon, semua pengguna AWS Athena di seluruh dunia berbagi sumber daya yang sama saat menjalankan kueri mereka. Pendekatan multi-tenancy ini dapat memicu stres sumber daya dari waktu ke waktu, yang mengakibatkan kinerja kueri yang bervariasi.
- Reduction on Data Manipulation Operations : AWS Athena hanya layanan kueri, dan hanya ada satu mesin kueri di sini. Tidak dilengkapi dengan antarmuka Bahasa Manipulasi Data (DML) bawaan untuk memasukkan, menghapus, dan memperbarui data.
- Requires Data Partitioning : Untuk menjalankan kueri SQL dengan efisien, perlu mempartisi set data yang disimpan di Amazon S3. Jumlah partisi yang harus dibuat akan mempengaruhi kecepatan dan kinerja kueri secara signifikan. Misalnya, setiap 500 partisi yang dipindai akan meningkatkan waktu kueri satu detik.
- Lack of indices : Meskipun indexing selalu tersedia sebagai ketentuan bawaan dalam database tradisional, tidak mendapatkan hak istimewa ini dengan AWS Athena. Oleh karena itu, harus diharapkan tantangan dalam operasi seperti mengkonsolidasikan tabel-tabel besar.
Berapa harga AWS Athena?
Seperti yang sudah disebutkan, AWS Athena mengikuti jadwal penetapan harga yang mengenakan biaya berdasarkan kueri yang dipilih untuk menjalankan analisis data. Amazon menghitung byte dan kemudian membulatkannya ke megabita terdekat, dengan jumlah minimal per kueri sebesar 10MB.
Anda harus mengharapkan untuk membayar $5 untuk setiap terabyte (TB) data yang dapat dikelola. Selama itu, tidak akan dikenakan biaya untuk kueri gagal, pernyataan untuk mengelola partisi, serta pernyataan Bahasa Definisi Data (DDL).
Namun, Amazon juga memungkinkan pengurangan biaya per kueri hingga 30% hingga 90%. Hanya perlu membagi, mengompres, atau mengonversi data ke format kolomar.