7 alat untuk menjinakkan big data dengan Hadoop

Banjir yang melanda industri hard disk di Thailand kini sudah berusia setengah tahun, dan harga per terabyte akhirnya turun sekali lagi. Artinya, data akan mulai menumpuk dan orang-orang di sekitar kantor akan bertanya-tanya apa yang bisa dilakukan dengannya. Mungkin ada beberapa wawasan dalam file log tersebut? Mungkin sedikit analisis statistik akan menemukan beberapa gumpalan emas terkubur di semua kebisingan itu? Mungkin kita bisa menemukan cukup banyak uang receh yang terkubur di bantal sofa dari file-file ini untuk memberi kita semua kenaikan gaji?

Industri ini sekarang memiliki kata kunci, "data besar", tentang bagaimana kita akan melakukan sesuatu dengan sejumlah besar informasi yang menumpuk. "Data besar" menggantikan "kecerdasan bisnis", yang mencakup "pelaporan", yang memberikan tampilan lebih bagus pada "spreadsheet", yang mengalahkan "hasil cetakan" model lama. Manajer yang dulu mempelajari hasil cetak sekarang mempekerjakan ahli matematika yang mengklaim sebagai spesialis data besar untuk membantu mereka memecahkan masalah lama yang sama: Apa yang menjual dan mengapa?

[Juga di: Enterprise Hadoop: Pemrosesan data besar menjadi lebih mudah | Jelajahi tren dan solusi terkini di BI dengan iGuide Business Intelligence yang interaktif. | Temukan apa yang baru dalam aplikasi bisnis dengan Teknologi: Buletin aplikasi. ]

Tidaklah adil untuk mengatakan bahwa kata kunci ini adalah pengganti sederhana satu sama lain. Data besar adalah dunia yang lebih rumit karena skalanya jauh lebih besar. Informasi biasanya tersebar di sejumlah server, dan pekerjaan mengumpulkan data harus dikoordinasikan di antara mereka. Di masa lalu, pekerjaan sebagian besar didelegasikan ke perangkat lunak database, yang akan menggunakan mekanisme JOIN ajaibnya untuk menyusun tabel, kemudian menambahkan kolom sebelum menyerahkan data persegi panjang ke perangkat lunak pelaporan yang akan membuat nomor itu. Ini seringkali lebih sulit daripada kedengarannya. Pemrogram database dapat memberi tahu Anda cerita tentang perintah BERGABUNG rumit yang akan mengunci database mereka selama berjam-jam saat mencoba menghasilkan laporan untuk bos yang menginginkan kolomnya begitu saja.

Permainannya jauh berbeda sekarang. Hadoop adalah alat populer untuk mengatur rak dan rak server, dan database NoSQL adalah alat populer untuk menyimpan data di rak ini. Mekanisme ini bisa jauh lebih kuat daripada mesin tunggal yang lama, tetapi mereka masih jauh dari polesan seperti server database lama. Meskipun SQL mungkin rumit, menulis kueri JOIN untuk database SQL seringkali jauh lebih sederhana daripada mengumpulkan informasi dari lusinan mesin dan menyusunnya menjadi satu jawaban yang koheren. Pekerjaan Hadoop ditulis dalam Java, dan itu membutuhkan tingkat kecanggihan lain. Alat untuk menangani data besar baru saja mulai mengemas daya komputasi terdistribusi ini dengan cara yang sedikit lebih mudah digunakan.

Banyak alat data besar juga berfungsi dengan penyimpanan data NoSQL. Ini lebih fleksibel daripada database relasional tradisional, tetapi fleksibilitasnya tidak jauh berbeda dari masa lalu seperti Hadoop. Kueri NoSQL bisa lebih sederhana karena desain database mencegah struktur tabel rumit yang mendorong kerumitan bekerja dengan SQL. Kekhawatiran utama adalah bahwa perangkat lunak perlu mengantisipasi kemungkinan bahwa tidak setiap baris memiliki beberapa data untuk setiap kolom.

Tantangan terbesar mungkin berurusan dengan ekspektasi yang dibangun oleh film utama "Moneyball". Semua bos telah melihatnya dan menyerap pesan bahwa beberapa statistik pintar dapat mengubah tim beranggaran kecil menjadi pemenang Seri Dunia. Jangankan Oakland Athletics pernah menjuarai World Series di era "Moneyball". Itulah keajaiban prosa Michael Lewis. Semua bos berpikir, "Mungkin jika saya bisa mendapatkan statistik yang bagus, Hollywood akan mempekerjakan Brad Pitt untuk memerankan saya dalam versi film."

Tak satu pun perangkat lunak dalam koleksi ini yang akan mendekati memikat Brad Pitt untuk meminta salinan skrip versi film dari pekerjaan Hadoop Anda kepada agennya. Itu harus datang dari dalam diri Anda atau manusia lain yang mengerjakan proyek. Memahami data dan menemukan pertanyaan yang tepat untuk ditanyakan seringkali jauh lebih rumit daripada menjalankan tugas Hadoop Anda dengan cepat. Itu benar-benar mengatakan sesuatu karena alat ini hanya setengah dari pekerjaan.

Untuk memahami janji di lapangan, saya mengunduh beberapa alat data besar, dicampur dalam data, lalu menatap jawaban untuk wawasan kelas Einstein. Informasi datang dari file log ke situs web yang menjual beberapa buku saya (wayner.org), dan saya sedang mencari ide tentang apa yang dijual dan mengapa. Jadi saya membongkar perangkat lunak tersebut dan mengajukan pertanyaan.

 

Alat data besar: Jaspersoft BI Suite

Paket Jaspersoft adalah salah satu pemimpin open source untuk menghasilkan laporan dari kolom database. Perangkat lunak ini dipoles dengan baik dan sudah diinstal di banyak bisnis yang mengubah tabel SQL menjadi PDF yang dapat dilihat semua orang saat rapat.

Perusahaan ini terjun ke dalam kereta data besar, dan ini berarti menambahkan lapisan perangkat lunak untuk menghubungkan perangkat lunak pembuat laporannya ke tempat penyimpanan data besar. Server JasperReports sekarang menawarkan perangkat lunak untuk menyedot data dari banyak platform penyimpanan utama, termasuk MongoDB, Cassandra, Redis, Riak, CouchDB, dan Neo4j. Hadoop juga terwakili dengan baik, dengan JasperReports menyediakan konektor Hive untuk menjangkau bagian dalam HBase.

Upaya ini terasa seperti masih dimulai - banyak halaman wiki dokumentasi kosong, dan alatnya belum terintegrasi sepenuhnya. Perancang kueri visual, misalnya, belum bekerja dengan Cassandra's CQL. Anda bisa mengetikkan kueri ini dengan tangan.

Setelah Anda mendapatkan data dari sumber ini, server Jaspersoft akan mengubahnya menjadi tabel dan grafik interaktif. Laporan dapat menjadi alat interaktif yang sangat canggih yang memungkinkan Anda menelusuri ke berbagai sudut. Anda dapat meminta lebih banyak detail jika Anda membutuhkannya.

Ini adalah sudut dunia perangkat lunak yang berkembang dengan baik, dan Jaspersoft berkembang dengan membuatnya lebih mudah untuk menggunakan laporan canggih ini dengan sumber data yang lebih baru. Jaspersoft tidak menawarkan cara baru untuk melihat data, hanya cara yang lebih canggih untuk mengakses data yang disimpan di lokasi baru. Saya menemukan ini sangat berguna. Pengumpulan data saya cukup untuk memahami siapa yang mengunjungi situs web dan kapan mereka pergi ke sana.

 

Alat data besar: Pentaho Business Analytics

Pentaho adalah platform perangkat lunak lain yang dimulai sebagai mesin pembuat laporan; itu, seperti JasperSoft, bercabang menjadi data besar dengan membuatnya lebih mudah untuk menyerap informasi dari sumber baru. Anda dapat menghubungkan alat Pentaho ke banyak database NoSQL paling populer seperti MongoDB dan Cassandra. Setelah database terhubung, Anda dapat menarik dan melepas kolom ke dalam tampilan dan laporan seolah-olah informasi tersebut berasal dari database SQL.

Saya menemukan tabel pemilahan dan pemilahan klasik sangat berguna untuk memahami siapa yang menghabiskan paling banyak waktu di situs web saya. Menyortir menurut alamat IP di file log mengungkapkan apa yang dilakukan pengguna kelas kakap.

Pentaho juga menyediakan software untuk menggambar data file HDFS dan data HBase dari cluster Hadoop. Salah satu alat yang lebih menarik adalah antarmuka pemrograman grafis yang dikenal sebagai Kettle atau Pentaho Data Integration. Ini memiliki banyak modul built-in yang dapat Anda seret dan lepas ke gambar, lalu hubungkan. Pentaho telah mengintegrasikan Hadoop dan sumber lainnya secara menyeluruh ke dalamnya, sehingga Anda dapat menulis kode Anda dan mengirimkannya untuk dieksekusi di cluster.

 

Alat data besar: Karmasphere Studio dan Analyst

Banyak alat data besar tidak dimulai sebagai alat pelaporan. Karmasphere Studio, misalnya, adalah sekumpulan plugin yang dibangun di atas Eclipse. Ini adalah IDE khusus yang memudahkan untuk membuat dan menjalankan pekerjaan Hadoop.

Saya merasakan kegembiraan yang langka ketika saya mulai mengonfigurasi pekerjaan Hadoop dengan alat pengembang ini. Ada sejumlah tahapan dalam kehidupan pekerjaan Hadoop, dan alat Karmasphere memandu Anda melalui setiap langkah, menunjukkan hasil parsial di sepanjang jalan. Saya rasa debugger selalu memungkinkan kami untuk mengintip ke dalam mekanisme saat ia melakukan tugasnya, tetapi Karmasphere Studio melakukan sesuatu yang sedikit lebih baik: Saat Anda menyiapkan alur kerja, alat menampilkan status data pengujian di setiap langkah. Anda melihat seperti apa tampilan data sementara saat dipotong, dianalisis, lalu dikurangi.

Karmasphere juga mendistribusikan alat yang disebut Karmasphere Analyst, yang dirancang untuk menyederhanakan proses pembajakan melalui semua data dalam cluster Hadoop. Muncul dengan banyak blok bangunan yang berguna untuk memprogram pekerjaan Hadoop yang baik, seperti subrutin untuk membuka kompresi file log zip. Kemudian ia menyatukannya dan membuat parameter panggilan Hive untuk menghasilkan tabel output untuk dibaca dengan teliti.

 

Alat data besar: Talend Open Studio

Talend juga menawarkan IDE berbasis Eclipse untuk merangkai pekerjaan pemrosesan data dengan Hadoop. Alatnya dirancang untuk membantu integrasi data, kualitas data, dan manajemen data, semuanya dengan subrutin yang disesuaikan dengan tugas ini.

Talend Studio memungkinkan Anda untuk membangun pekerjaan Anda dengan menyeret dan melepaskan ikon kecil ke kanvas. Jika Anda ingin mendapatkan umpan RSS, komponen Talend akan mengambil RSS dan menambahkan proxy jika perlu. Ada lusinan komponen untuk mengumpulkan informasi dan puluhan lainnya untuk melakukan hal-hal seperti "kecocokan fuzzy". Kemudian Anda dapat menampilkan hasilnya.

Merangkai blok secara visual bisa menjadi sederhana setelah Anda merasakan apa yang sebenarnya dilakukan dan tidak dilakukan komponen. Ini lebih mudah bagi saya untuk mengetahuinya ketika saya mulai melihat kode sumber yang dirakit di belakang kanvas. Talend memungkinkan Anda melihat ini, dan menurut saya ini adalah kompromi yang ideal. Pemrograman visual mungkin tampak seperti tujuan yang luhur, tetapi saya telah menemukan bahwa ikon tidak pernah dapat mewakili mekanisme dengan cukup detail untuk memungkinkan untuk memahami apa yang sedang terjadi. Saya membutuhkan kode sumbernya.

Talend juga mengelola TalendForge, kumpulan ekstensi open source yang memudahkan untuk bekerja dengan produk perusahaan. Sebagian besar alat tampaknya merupakan filter atau pustaka yang menghubungkan perangkat lunak Talend ke produk utama lainnya seperti Salesforce.com dan SugarCRM. Anda dapat menyedot informasi dari sistem ini ke dalam proyek Anda sendiri, menyederhanakan integrasi.

 

Alat data besar: Skytree Server

Tidak semua alat dirancang untuk mempermudah merangkai kode dengan mekanisme visual. Skytree menawarkan paket yang menjalankan banyak algoritme pembelajaran mesin yang lebih canggih. Yang diperlukan hanyalah mengetikkan perintah yang benar ke dalam baris perintah.

Skytree lebih fokus pada nyali daripada GUI yang mengkilap. Skytree Server dioptimalkan untuk menjalankan sejumlah algoritme pembelajaran mesin klasik pada data Anda menggunakan implementasi yang diklaim perusahaan dapat 10.000 kali lebih cepat daripada paket lainnya. Ini dapat menelusuri data Anda untuk mencari kelompok item yang serupa secara matematis, lalu membalikkannya untuk mengidentifikasi pencilan yang mungkin menjadi masalah, peluang, atau keduanya. Algoritme bisa lebih tepat daripada manusia, dan mereka dapat menelusuri data dalam jumlah besar untuk mencari entri yang agak tidak biasa. Ini mungkin penipuan - atau pelanggan yang sangat baik yang akan berbelanja dan berbelanja.

Versi gratis perangkat lunak ini menawarkan algoritme yang sama dengan versi berpemilik, tetapi terbatas pada kumpulan data 100.000 baris. Ini harus cukup untuk menetapkan apakah perangkat lunak tersebut cocok.

 

Alat data besar: Desktop Tableau dan Server

Tableau Desktop adalah alat visualisasi yang memudahkan untuk melihat data Anda dengan cara baru, kemudian mengirisnya dan melihatnya dengan cara yang berbeda. Anda bahkan dapat mencampur data dengan data lain dan memeriksanya dengan cara lain. Alat ini dioptimalkan untuk memberi Anda semua kolom untuk data dan memungkinkan Anda mencampurnya sebelum memasukkannya ke dalam salah satu dari lusinan templat grafis yang disediakan.

Software Tableau mulai menggunakan Hadoop beberapa versi yang lalu, dan sekarang Anda dapat memperlakukan Hadoop "seperti yang Anda lakukan dengan koneksi data apa pun". Tableau mengandalkan Hive untuk menyusun kueri, lalu mencoba yang terbaik untuk menyimpan sebanyak mungkin informasi dalam memori agar alat menjadi interaktif. Meskipun banyak dari alat pelaporan lainnya dibuat berdasarkan tradisi membuat laporan secara offline, Tableau ingin menawarkan mekanisme interaktif sehingga Anda dapat membagi data Anda lagi dan lagi. Caching membantu menangani beberapa latensi cluster Hadoop.

Perangkat lunak ini dipoles dengan baik dan menyenangkan secara estetika. Saya sering mendapati diri saya mereplikasi data hanya untuk melihatnya di grafik lain, meskipun tidak banyak hal baru yang bisa dipelajari dengan beralih dari diagram lingkaran ke grafik batang dan seterusnya. Tim perangkat lunak dengan jelas menyertakan sejumlah orang dengan bakat artistik.

 

Alat data besar: Splunk

Splunk sedikit berbeda dari opsi lainnya. Ini bukan alat pembuat laporan atau kumpulan rutinitas AI, meskipun itu menyelesaikan banyak hal di sepanjang jalan. Ini membuat indeks data Anda seolah-olah data Anda adalah sebuah buku atau blok teks. Ya, database juga membangun indeks, tetapi pendekatan Splunk lebih dekat ke proses pencarian teks.

Pengindeksan ini ternyata sangat fleksibel. Splunk sudah disetel ke aplikasi khusus saya, memahami file log, dan langsung menyedotnya. Itu juga dijual dalam sejumlah paket solusi yang berbeda, termasuk satu untuk memantau server Microsoft Exchange dan satu lagi untuk mendeteksi serangan Web. Indeks membantu menghubungkan data ini dan beberapa skenario sisi server umum lainnya.