Twitter Open Source-kan Heron, Framework Real Time Stream Processing

Satu lagi framework yang bergabung ke dalam ekosistem Big Data Open Source. Meramaikan percaturan dalam pemrosesan Big Data, khususnya real-time streaming data processing, bulan Mei lalu Twitter mengumumkan bahwa mereka meng-open-source-kan Heron, sistem real-time stream processing yang mereka kembangkan untuk menggantikan Apache Storm.

Setelah sebelumnya mengumumkan bahwa mereka mengganti framework pemrosesan real-time streaming mereka dari Storm ke Heron, dan menerbitkan paper mengenai arsitekturnya, baru setahun kemudian publik dapat ikut menggunakan dan mengembangkannya.

Alasan Twitter mengembangkan Heron pada awalnya adalah karena beberapa kesulitan yang mereka hadapi ketika menggunakan Storm, terutama ketika sistem yang mereka deploy sudah sangat besar. Beberapa kesulitan yang dihadapi di antaranya adalah kesulitan dalam hal profiling dan reasoning mengenai Storm worker di tingkat data dan tingkat topologi, alokasi resource yang bersifat statis, tidak adanya dukungan back-pressure, dan lain sebagainya.

Mengapa saat itu Twitter tidak beralih ke Apache Spark streaming atau Apache Flink misalnya, dan justru memutuskan untuk mengembangkan sendiri sistemnya secara internal? Alasan utamanya adalah peralihan framework tersebut akan menyebabkan mereka harus menulis ulang banyak sekali code dari sistem mereka yang sudah sangat besar. Sebab, sebagai pihak yang mengembangkan Storm, Twitter adalah pengguna Apache Storm yang paling lama, jauh sebelum Storm menjadi open source.

Heron didesain sebagai sebuah sistem yang memiliki backward compatibility dengan Apache Storm. Hal ini merupakan sebuah keputusan yang strategis, bukan saja untuk Twitter sendiri, namun juga untuk pengguna yang sudah mengimplementasikan Apache Storm, mereka dapat beralih ke Heron dengan relatif mudah.

Paradigma pemrosesan Heron sangat mirip dengan Apache Storm, di mana dasarnya adalah DAG (Direct Acyclic Diagram) yang disebut topology, dengan komponennya berupa spout dan bolt.

Heron dibangun dengan perubahan mendasar dalam arsitektur streamingnya, dari sistem berbasis thread, menjadi sebuah sistem berbasis proses. Heron juga didesain untuk deployment dalam cluster dengan mengintegrasikannya dengan scheduler open source yang powerful seperti Apache Mesos, Apache Aurora, Apache REEF atau Slurm.

Banyak yang dijanjikan dengan Heron, seperti misalnya 2-5 kali efisiensi, kemudahan dan stabilitas, dan lain sebagainya. Salah satu kelebihan utama Heron adalah sudah dibuktikan dalam skala yang besar di Twitter sendiri, dan kompatibilitasnya dengan Storm sebagai framework yang sudah banyak diimplementasi sebelumnya. Namun apakah masyarakat Big Data akan dengan serta merta mengadopsinya sebagai framework pilihan mereka, masih harus kita lihat bagaimana perkembangannya ke depan. Karena saat ini banyak sekali framework open source untuk pemrosesan streaming yang ada dan berkompetisi untuk menjadi yang terdepan, seperti misalnya Apache Spark, Apache Flink, Apache Samza, Apache Apex, atau bahkan Apache Storm sendiri yang juga telah me-release versi 1.0 dengan banyak perubahan dan perbaikan.

Baca juga : APACHE STORM 1.0 PENINGKATAN PERFORMA DAN SARAT FITUR BARU


Source : ID Big Data