7 alat untuk menjinakkan data besar dengan Hadoop

Banjir yang menghancurkan industri cakera keras di Thailand kini berusia setengah tahun, dan harga per terabyte akhirnya turun sekali lagi. Ini bermaksud data akan mula menumpuk dan orang di sekitar pejabat akan tertanya-tanya apa yang dapat dilakukan dengannya. Mungkin terdapat beberapa pandangan dalam fail log tersebut? Mungkin sedikit analisis statistik akan menemui sebilangan nugget emas yang terkubur dalam semua kebisingan itu? Mungkin kita dapati cukup banyak perubahan yang tertimbun di kusyen sofa fail-fail ini untuk memberi kita kenaikan gaji?

Industri sekarang mempunyai kata kunci, "data besar," untuk bagaimana kita akan melakukan sesuatu dengan sejumlah besar maklumat yang menumpuk. "Data besar" menggantikan "kecerdasan perniagaan," yang merangkumi "pelaporan", yang memberikan gambaran yang lebih baik pada "spreadsheet", yang mengalahkan "cetakan kuno". Pengurus yang lama belajar mencetak kini mengupah ahli matematik yang mengaku sebagai pakar data besar untuk membantu mereka menyelesaikan masalah lama yang sama: Apa yang menjual dan mengapa?

[Juga di: Hadoop Enterprise: Pemprosesan data besar dipermudah | Terokai trend dan penyelesaian terkini dalam BI dengan iGuide Business Intelligence yang interaktif. | Cari yang baru dalam aplikasi perniagaan dengan Teknologi: Buletin Aplikasi. ]

Tidak adil untuk menunjukkan bahawa kata kunci ini adalah pengganti yang mudah untuk satu sama lain. Data besar adalah dunia yang lebih rumit kerana skala jauh lebih besar. Maklumat biasanya tersebar di sejumlah pelayan, dan kerja menyusun data mesti diselaraskan di antara mereka. Pada masa lalu, karya tersebut sebagian besar didelegasikan ke perangkat lunak pangkalan data, yang akan menggunakan mekanisme JOIN ajaibnya untuk menyusun jadual, kemudian menambahkan lajur sebelum menyerahkan segi empat tepat data ke perisian pelaporan yang akan menghaluskannya. Ini sering kali lebih sukar daripada kedengarannya. Pengaturcara pangkalan data dapat memberitahu anda kisah-kisah mengenai perintah JOIN yang rumit yang akan mengunci pangkalan data mereka selama berjam-jam kerana ia cuba menghasilkan laporan untuk bos yang menginginkan kolumnya begitu.

Permainan ini jauh berbeza sekarang. Hadoop adalah alat yang popular untuk mengatur rak dan rak pelayan, dan pangkalan data NoSQL adalah alat yang popular untuk menyimpan data pada rak ini. Mekanisme ini boleh menjadi lebih kuat daripada mesin tunggal lama, tetapi mekanisme ini jauh dari digilap seperti pelayan pangkalan data lama. Walaupun SQL mungkin rumit, menulis pertanyaan JOIN untuk pangkalan data SQL sering kali lebih mudah daripada mengumpulkan maklumat dari puluhan mesin dan mengumpulkannya menjadi satu jawapan yang koheren. Pekerjaan Hadoop ditulis di Jawa, dan itu memerlukan tahap kecanggihan yang lain. Alat untuk menangani data besar baru mula mengemas kuasa pengkomputeran terdistribusi ini dengan cara yang sedikit lebih mudah digunakan.

Banyak alat data besar juga berfungsi dengan kedai data NoSQL. Ini lebih fleksibel daripada pangkalan data hubungan tradisional, tetapi fleksibiliti tidak jauh dari masa lalu seperti Hadoop. Pertanyaan NoSQL boleh menjadi lebih sederhana kerana reka bentuk pangkalan data tidak menggalakkan struktur jadual yang rumit yang mendorong kerumitan bekerja dengan SQL. Kebimbangan utama ialah perisian perlu mengantisipasi kemungkinan tidak setiap baris memiliki beberapa data untuk setiap lajur.

Cabaran terbesar mungkin berkaitan dengan jangkaan yang dihasilkan oleh filem utama "Moneyball." Semua atasan telah melihatnya dan menyerap mesej bahawa beberapa statistik pintar dapat mengubah pasukan anggaran kecil menjadi pemenang Seri Dunia. Sudahlah bahawa Oakland Athletics tidak pernah memenangi Siri Dunia semasa era "Moneyball". Itulah keajaiban prosa Michael Lewis. Semua bos berfikir, "Mungkin jika saya dapat beberapa statistik, Hollywood akan menyewa Brad Pitt untuk memainkan saya dalam versi filem."

Tidak ada perisian dalam koleksi ini yang hampir memikat Brad Pitt untuk meminta salinan skrip untuk ejennya untuk versi filem pekerjaan Hadoop anda. Itu mesti datang dari dalam diri anda atau manusia lain yang mengerjakan projek ini. Memahami data dan mencari soalan yang tepat untuk diajukan selalunya jauh lebih rumit daripada membuat pekerjaan Hadoop anda berjalan dengan cepat. Itu benar-benar mengatakan sesuatu kerana alat ini hanya separuh daripada pekerjaan.

Untuk mendapatkan pegangan janji lapangan, saya memuat turun beberapa alat data besar, dicampurkan dalam data, lalu menatap jawapan untuk pandangan kelas Einstein. Maklumat itu datang dari fail log ke laman web yang menjual beberapa buku saya (wayner.org), dan saya mencari idea mengenai apa yang dijual dan mengapa. Oleh itu, saya membongkar perisian dan mengemukakan soalan.

 

Alat data besar: Jaspersoft BI Suite

Pakej Jaspersoft adalah salah satu pemimpin sumber terbuka untuk menghasilkan laporan dari lajur pangkalan data. Perisian ini dipoles dengan baik dan sudah terpasang di banyak perniagaan menjadikan jadual SQL menjadi PDF yang dapat diteliti oleh semua orang semasa mesyuarat.

Syarikat ini menggunakan kereta data besar, dan ini bermaksud menambahkan lapisan perisian untuk menghubungkan perisian penghasilan laporannya ke tempat-tempat di mana data besar disimpan. Pelayan JasperReports kini menawarkan perisian untuk menyedut data dari banyak platform penyimpanan utama, termasuk MongoDB, Cassandra, Redis, Riak, CouchDB, dan Neo4j. Hadoop juga terwakili dengan baik, dengan JasperReports menyediakan penyambung Hive untuk mencapai bahagian dalam HBase.

Usaha ini terasa seperti masih dimulakan - banyak halaman wiki dokumentasi kosong dan alatnya tidak digabungkan sepenuhnya. Perancang pertanyaan visual, misalnya, belum berfungsi dengan Cassandra's CQL. Anda boleh menaip pertanyaan ini dengan tangan.

Sebaik sahaja anda mendapat data dari sumber-sumber ini, pelayan Jaspersoft akan memasukkannya ke jadual dan grafik interaktif. Laporan boleh menjadi alat interaktif yang cukup canggih yang membolehkan anda menyelidiki pelbagai sudut. Anda boleh meminta lebih banyak dan lebih terperinci jika anda memerlukannya.

Ini adalah sudut dunia perisian yang berkembang dengan baik, dan Jaspersoft berkembang dengan mempermudah penggunaan 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 mendapati ini sangat berguna. Pengumpulan data saya cukup untuk memahami asas siapa yang pergi ke laman web dan kapan mereka pergi ke sana.

 

Alat data besar: Analisis Perniagaan Pentaho

Pentaho adalah platform perisian lain yang bermula sebagai mesin penjana laporan; seperti JasperSoft, memasukkan data besar dengan mempermudah penyerapan maklumat dari sumber baru. Anda boleh menghubungkan alat Pentaho ke banyak pangkalan data NoSQL yang paling popular seperti MongoDB dan Cassandra. Setelah pangkalan data disambungkan, anda boleh menyeret dan melepaskan lajur ke dalam paparan dan laporan seolah-olah maklumat itu berasal dari pangkalan data SQL.

Saya mendapati jadual menyusun dan menyaring klasik sangat berguna untuk memahami siapa yang menghabiskan paling banyak masa di laman web saya. Hanya menyusun mengikut alamat IP dalam fail log menunjukkan apa yang dilakukan pengguna berat.

Pentaho juga menyediakan perisian untuk melukis data fail HDFS dan data HBase dari kluster Hadoop. Salah satu alat yang lebih menarik ialah antara muka pengaturcaraan grafik yang dikenali sebagai Kettle atau Pentaho Data Integration. Ia mempunyai sekumpulan modul bawaan yang boleh anda seret dan lepas ke gambar, kemudian sambungkan. Pentaho telah mengintegrasikan Hadoop dan sumber-sumber lain ke dalam ini, jadi anda boleh menulis kod anda dan menghantarnya untuk dilaksanakan di kluster.

 

Alat data besar: Karmasphere Studio and Analyst

Sebilangan besar alat data besar tidak memulakan hidup sebagai alat pelaporan. Karmasphere Studio, misalnya, adalah satu set plug-in yang dibina di atas Eclipse. Ini adalah IDE khusus yang menjadikannya lebih mudah untuk membuat dan menjalankan pekerjaan Hadoop.

Saya mempunyai perasaan gembira yang jarang berlaku ketika saya mula mengkonfigurasi pekerjaan Hadoop dengan alat pembangun ini. Terdapat beberapa tahap dalam kehidupan pekerjaan Hadoop, dan alat Karmasphere memandu Anda melalui setiap langkah, menunjukkan hasil separa di sepanjang jalan. Saya rasa debuger selalu memungkinkan kita mengintip mekanisme seperti yang dilakukannya, tetapi Karmasphere Studio melakukan sesuatu yang sedikit lebih baik: Semasa anda mengatur aliran kerja, alat-alat tersebut menunjukkan keadaan data ujian pada setiap langkah. Anda akan melihat bagaimana data sementara akan dipisahkan, dianalisis, kemudian dikurangkan.

Karmasphere juga menyebarkan alat yang disebut Karmasphere Analyst, yang dirancang untuk mempermudah proses membajak semua data dalam kluster Hadoop. Ia dilengkapi dengan banyak blok bangunan yang berguna untuk memprogram pekerjaan Hadoop yang baik, seperti subrutin untuk memampatkan fail log zip. Kemudian menyatukannya dan membuat parameter panggilan Hive untuk menghasilkan jadual output untuk meneliti.

 

Alat data besar: Talend Open Studio

Talend juga menawarkan IDE berasaskan Eclipse untuk menggabungkan pekerjaan pemprosesan data dengan Hadoop. Alatnya dirancang untuk membantu integrasi data, kualiti data, dan pengurusan data, semuanya dengan subrutin disesuaikan dengan pekerjaan ini.

Talend Studio membolehkan anda membina pekerjaan dengan menyeret dan menjatuhkan ikon kecil ke kanvas. Sekiranya anda ingin mendapatkan suapan RSS, komponen Talend akan mengambil RSS dan menambahkan proksi jika perlu. Terdapat berpuluh-puluh komponen untuk mengumpulkan maklumat dan puluhan lagi untuk melakukan perkara-perkara seperti "pertandingan kabur." Kemudian anda dapat mengeluarkan hasilnya.

Menggabungkan blok secara visual boleh menjadi mudah setelah anda memahami apa yang sebenarnya dilakukan dan tidak dilakukan oleh komponen. Ini lebih mudah bagi saya untuk mengetahui ketika saya mula melihat kod sumber yang dipasang di belakang kanvas. Talend membolehkan anda melihat ini, dan saya fikir ia adalah kompromi yang ideal. Pengaturcaraan visual mungkin kelihatan seperti tujuan yang tinggi, tetapi saya mendapati bahawa ikon tidak dapat mewakili mekanisme dengan perincian yang cukup untuk memungkinkan untuk memahami apa yang sedang berlaku. Saya memerlukan kod sumber.

Talend juga mengekalkan TalendForge, koleksi sambungan sumber terbuka yang memudahkan kerja dengan produk syarikat. Sebilangan besar alat nampaknya merupakan penapis atau perpustakaan yang menghubungkan perisian Talend dengan produk utama lain seperti Salesforce.com dan SugarCRM. Anda boleh memasukkan maklumat dari sistem ini ke dalam projek anda sendiri, mempermudah integrasi.

 

Alat data besar: Pelayan Skytree

Tidak semua alat dirancang untuk mempermudah merangkai kod dengan mekanisme visual. Skytree menawarkan kumpulan yang melaksanakan banyak algoritma pembelajaran mesin yang lebih canggih. Yang diperlukan hanyalah menaip perintah yang betul ke baris perintah.

Skytree lebih tertumpu pada keberanian daripada GUI yang berkilat. Pelayan Skytree dioptimumkan untuk menjalankan sejumlah algoritma pembelajaran mesin klasik pada data anda menggunakan pelaksanaan yang dituntut oleh syarikat dapat 10.000 kali lebih cepat daripada pakej lain. Ia dapat mencari melalui data anda untuk mencari kumpulan item yang serupa secara matematik, kemudian membalikkannya untuk mengenal pasti garis besar yang mungkin ada masalah, peluang, atau keduanya. Algoritma dapat lebih tepat daripada manusia, dan mereka dapat mencari melalui sejumlah besar data mencari entri yang agak tidak biasa. Ini mungkin penipuan - atau pelanggan yang sangat baik yang akan berbelanja dan berbelanja.

Versi perisian percuma menawarkan algoritma yang sama dengan versi proprietari, tetapi ia terhad kepada set data 100,000 baris. Ini harus cukup untuk menentukan sama ada perisian itu sesuai.

 

Alat data besar: Tableau Desktop dan Server

Tableau Desktop adalah alat visualisasi yang memudahkan untuk melihat data anda dengan cara baru, kemudian memotongnya dan melihatnya dengan cara yang berbeza. Anda bahkan boleh mencampurkan data dengan data lain dan memeriksanya dengan cahaya lain. Alat ini dioptimumkan untuk memberi anda semua lajur untuk data dan membiarkan anda mencampurkannya sebelum memasukkannya ke salah satu daripada puluhan templat grafik yang disediakan.

Perisian Tableau mula merangkul Hadoop beberapa versi yang lalu, dan sekarang anda dapat memperlakukan Hadoop "seperti yang anda lakukan dengan sambungan data." Tableau bergantung pada Hive untuk menyusun pertanyaan, kemudian berusaha sebaik mungkin untuk menyimpan maklumat dalam memori sebanyak mungkin untuk membolehkan alat ini interaktif. Walaupun banyak alat pelaporan lain dibina berdasarkan tradisi membuat laporan di luar talian, Tableau ingin menawarkan mekanisme interaktif supaya anda dapat mengiris data anda berulang kali. Caching membantu menangani beberapa latensi kluster Hadoop.

Perisian ini digilap dengan baik dan menyenangkan secara estetik. Saya sering mendapati bahawa saya menjual semula data hanya untuk melihatnya dalam grafik yang lain, walaupun tidak banyak yang dapat dipelajari dengan beralih dari carta pai ke grafik bar dan seterusnya. Pasukan perisian dengan jelas merangkumi sebilangan orang yang mempunyai bakat seni.

 

Alat data besar: Splunk

Splunk sedikit berbeza dengan pilihan lain. Ini bukan alat penghasil laporan atau kumpulan rutin AI, walaupun ia banyak melaksanakannya. Ini membuat indeks data anda seolah-olah data anda adalah buku atau sekumpulan teks. Ya, pangkalan data juga membina indeks, tetapi pendekatan Splunk jauh lebih dekat dengan proses pencarian teks.

Pengindeksan ini sangat fleksibel. Splunk sudah disesuaikan dengan aplikasi tertentu saya, memahami fail log, dan menghisapnya dengan betul. Ini juga dijual dalam sejumlah paket penyelesaian yang berbeza, termasuk satu untuk memantau pelayan Microsoft Exchange dan yang lain untuk mengesan serangan Web. Indeks membantu menghubungkan data dalam senario ini dan beberapa senario biasa pelayan biasa.