Προγραμματισμός

7 εργαλεία για εξομάλυνση μεγάλων δεδομένων με το Hadoop

Οι πλημμύρες που κατέστρεψαν τη βιομηχανία σκληρών δίσκων στην Ταϊλάνδη είναι πλέον μισού έτους, και οι τιμές ανά terabyte πέφτουν τελικά για άλλη μια φορά. Αυτό σημαίνει ότι τα δεδομένα θα αρχίσουν να συσσωρεύονται και οι άνθρωποι γύρω από το γραφείο θα αναρωτηθούν τι μπορεί να γίνει με αυτό. Ίσως υπάρχουν κάποιες πληροφορίες σε αυτά τα αρχεία καταγραφής; Ίσως κάποια στατιστική ανάλυση θα βρει μερικά ψήγματα χρυσού θαμμένα σε όλο αυτό το θόρυβο; Ίσως μπορούμε να βρούμε αρκετή αλλαγή θαμμένη στα μαξιλάρια αυτών των αρχείων για να μας αυξήσει;

Η βιομηχανία έχει τώρα μια λέξη-κλειδί, «μεγάλα δεδομένα», για το πώς θα κάνουμε κάτι με τη συσσώρευση τεράστιων πληροφοριών. Το "Big data" αντικαθιστά την "επιχειρηματική ευφυΐα", η οποία ακολούθησε την "αναφορά", η οποία έδωσε μια πιο ωραία στιλπνότητα στα "υπολογιστικά φύλλα", τα οποία ξεπέρασαν τις ντεμοντέ "εκτυπώσεις". Οι διαχειριστές που μελετούσαν εδώ και πολύ καιρό εκτυπώσεις προσλαμβάνουν τώρα μαθηματικούς που ισχυρίζονται ότι είναι ειδικοί σε δεδομένα για να τους βοηθήσουν να λύσουν το ίδιο παλιό πρόβλημα: Τι πωλεί και γιατί;

[Επίσης στο: Enterprise Hadoop: Η ευρεία επεξεργασία δεδομένων έγινε πιο εύκολη | Εξερευνήστε τις τρέχουσες τάσεις και λύσεις στο BI με το διαδραστικό Business Intelligence iGuide. | Ανακαλύψτε τι νέο υπάρχει στις επιχειρηματικές εφαρμογές με το ενημερωτικό δελτίο τεχνολογίας: Εφαρμογές. ]

Δεν είναι δίκαιο να υποδηλώνουμε ότι αυτές οι λέξεις-κλειδιά είναι απλές αντικαταστάσεις μεταξύ τους. Τα μεγάλα δεδομένα είναι ένας πιο περίπλοκος κόσμος επειδή η κλίμακα είναι πολύ μεγαλύτερη. Οι πληροφορίες συνήθως διανέμονται σε διάφορους διακομιστές και το έργο της συλλογής των δεδομένων πρέπει να συντονίζεται μεταξύ τους. Στο παρελθόν, το έργο ανατέθηκε σε μεγάλο βαθμό στο λογισμικό της βάσης δεδομένων, το οποίο θα χρησιμοποιούσε τον μαγικό μηχανισμό JOIN για τη σύνταξη πινάκων και, στη συνέχεια, θα προσθέσει τις στήλες προτού παραδώσει το ορθογώνιο των δεδομένων στο λογισμικό αναφοράς που θα το παγώσει. Αυτό ήταν συχνά πιο δύσκολο από ό, τι ακούγεται. Οι προγραμματιστές βάσεων δεδομένων μπορούν να σας πουν τις ιστορίες για περίπλοκες εντολές JOIN που θα κλειδώσουν τη βάση δεδομένων τους για ώρες καθώς προσπάθησε να δημιουργήσει μια αναφορά για το αφεντικό που ήθελε τις στήλες του ακριβώς έτσι.

Το παιχνίδι είναι πολύ διαφορετικό τώρα. Το Hadoop είναι ένα δημοφιλές εργαλείο για την οργάνωση των racks και racks των διακομιστών και οι βάσεις δεδομένων NoSQL είναι δημοφιλή εργαλεία για την αποθήκευση δεδομένων σε αυτά τα racks. Αυτοί οι μηχανισμοί μπορούν να είναι πολύ πιο ισχυροί από το παλιό ενιαίο μηχάνημα, αλλά απέχουν πολύ από το να είναι τόσο στιλβωμένοι όσο οι παλιοί διακομιστές βάσης δεδομένων. Παρόλο που η SQL μπορεί να είναι περίπλοκη, η σύνταξη του ερωτήματος JOIN για τις βάσεις δεδομένων SQL ήταν συχνά πολύ πιο απλή από τη συλλογή πληροφοριών από δεκάδες μηχανήματα και τη σύνταξη τους σε μια συνεκτική απάντηση. Οι εργασίες Hadoop είναι γραμμένες στην Java, και αυτό απαιτεί ένα άλλο επίπεδο πολυπλοκότητας. Τα εργαλεία για την αντιμετώπιση μεγάλων δεδομένων μόλις αρχίζουν να συσκευάζουν αυτήν την κατανεμημένη υπολογιστική ισχύ με τρόπο που είναι λίγο πιο εύκολο στη χρήση.

Πολλά από τα μεγάλα εργαλεία δεδομένων συνεργάζονται επίσης με καταστήματα δεδομένων NoSQL. Αυτές είναι πιο ευέλικτες από τις παραδοσιακές σχεσιακές βάσεις δεδομένων, αλλά η ευελιξία δεν είναι τόσο μεγάλη απόκλιση από το παρελθόν όσο το Hadoop. Τα ερωτήματα NoSQL μπορούν να είναι απλούστερα επειδή ο σχεδιασμός της βάσης δεδομένων αποθαρρύνει την περίπλοκη δομή πίνακα που οδηγεί στην πολυπλοκότητα της εργασίας με τη SQL. Η κύρια ανησυχία είναι ότι το λογισμικό πρέπει να προβλέψει την πιθανότητα ότι κάθε σειρά δεν θα έχει κάποια δεδομένα για κάθε στήλη.

Η μεγαλύτερη πρόκληση μπορεί να είναι η αντιμετώπιση των προσδοκιών που δημιουργήθηκαν από τη μεγάλη κινηματογραφική ταινία "Moneyball". Όλα τα αφεντικά το έχουν δει και απορροφήσει το μήνυμα ότι κάποια έξυπνα στατιστικά μπορούν να μετατρέψουν μια ομάδα μικρού προϋπολογισμού σε νικητή του World Series. Δεν πειράζει ότι το Oakland Athletics δεν κέρδισε ποτέ την Παγκόσμια Σειρά κατά την εποχή του "Moneyball". Αυτή είναι η μαγεία της πεζογραφίας του Michael Lewis. Τα αφεντικά σκέφτονται όλοι, "Ίσως αν μπορώ να πάρω κάποια καλά στατιστικά, το Χόλιγουντ θα προσλάβει τον Μπραντ Πιτ για να με παίξει στην ταινία."

Κανένα από το λογισμικό αυτής της συλλογής δεν θα προσελκύσει τον Μπραντ Πιτ για να ζητήσει από τον πράκτορά του αντίγραφο του σεναρίου για την έκδοση ταινίας της δουλειάς σας Hadoop. Αυτό πρέπει να προέλθει από εσάς ή από τους άλλους ανθρώπους που εργάζονται στο έργο. Η κατανόηση των δεδομένων και η εύρεση της σωστής ερώτησης είναι συχνά πολύ πιο περίπλοκη από τη γρήγορη εκτέλεση της δουλειάς σας Hadoop. Αυτό πραγματικά λέει κάτι γιατί αυτά τα εργαλεία είναι μόνο το ήμισυ της δουλειάς.

Για να πάρω μια λαβή για την υπόσχεση του πεδίου, κατέβασα μερικά μεγάλα εργαλεία δεδομένων, αναμειγνύονται σε δεδομένα και μετά κοίταξα τις απαντήσεις για διορατικότητα βαθμού Einstein. Οι πληροφορίες προέρχονταν από αρχεία καταγραφής στον ιστότοπο που πουλά μερικά από τα βιβλία μου (wayner.org) και έψαχνα κάποια ιδέα για το τι πουλούσε και γιατί. Έτσι αποσυσκευάστησα το λογισμικό και έκανα τις ερωτήσεις.

 

Μεγάλα εργαλεία δεδομένων: Jaspersoft BI Suite

Το πακέτο Jaspersoft είναι ένας από τους ηγέτες ανοιχτού κώδικα για την παραγωγή αναφορών από στήλες βάσης δεδομένων. Το λογισμικό είναι καλά επεξεργασμένο και έχει ήδη εγκατασταθεί σε πολλές επιχειρήσεις, μετατρέποντας πίνακες SQL σε PDF που όλοι μπορούν να ελέγξουν σε συναντήσεις.

Η εταιρεία πηδάει στο μεγάλο τρένο δεδομένων, και αυτό σημαίνει την προσθήκη ενός επιπέδου λογισμικού για να συνδέσει το λογισμικό δημιουργίας αναφορών με τα μέρη όπου αποθηκεύονται μεγάλα δεδομένα. Ο διακομιστής JasperReports προσφέρει τώρα λογισμικό για την απορρόφηση δεδομένων από πολλές από τις μεγάλες πλατφόρμες αποθήκευσης, συμπεριλαμβανομένων των MongoDB, Cassandra, Redis, Riak, CouchDB και Neo4j. Το Hadoop είναι επίσης καλά αντιπροσωπευόμενο, με τα JasperReports να παρέχουν μια σύνδεση Hive για να φτάσουν στο εσωτερικό του HBase.

Αυτή η προσπάθεια φαίνεται ότι ξεκινά ακόμα - πολλές σελίδες του wiki τεκμηρίωσης είναι κενές και τα εργαλεία δεν είναι πλήρως ενσωματωμένα. Ο σχεδιαστής οπτικών ερωτημάτων, για παράδειγμα, δεν λειτουργεί ακόμα με το CQL της Cassandra. Μπορείτε να πληκτρολογήσετε αυτά τα ερωτήματα με το χέρι.

Μόλις λάβετε τα δεδομένα από αυτές τις πηγές, ο διακομιστής της Jaspersoft θα τα ενσωματώσει σε διαδραστικούς πίνακες και γραφήματα. Οι αναφορές μπορεί να είναι αρκετά εξελιγμένα διαδραστικά εργαλεία που σας επιτρέπουν να εξερευνήσετε διάφορες γωνίες. Μπορείτε να ζητήσετε περισσότερες και περισσότερες λεπτομέρειες εάν τις χρειάζεστε.

Αυτή είναι μια καλά αναπτυγμένη γωνιά του κόσμου του λογισμικού και η Jaspersoft επεκτείνεται διευκολύνοντας τη χρήση αυτών των εξελιγμένων αναφορών με νεότερες πηγές δεδομένων. Η Jaspersoft δεν προσφέρει ιδιαίτερα νέους τρόπους για την εξέταση των δεδομένων, αλλά πιο εξελιγμένους τρόπους πρόσβασης σε δεδομένα που είναι αποθηκευμένα σε νέες τοποθεσίες. Το βρήκα εκπληκτικά χρήσιμο. Η συγκέντρωση των δεδομένων μου ήταν αρκετή για να κατανοήσω ποιος πήγαινε στον ιστότοπο και πότε πήγαιναν εκεί.

 

Μεγάλα εργαλεία δεδομένων: Pentaho Business Analytics

Το Pentaho είναι μια άλλη πλατφόρμα λογισμικού που ξεκίνησε ως μηχανή δημιουργίας αναφορών. Είναι, όπως η JasperSoft, διακλαδίζοντας μεγάλα δεδομένα διευκολύνοντας την απορρόφηση πληροφοριών από τις νέες πηγές. Μπορείτε να συνδέσετε το εργαλείο Pentaho με πολλές από τις πιο δημοφιλείς βάσεις δεδομένων NoSQL όπως το MongoDB και το Cassandra. Μόλις συνδεθούν οι βάσεις δεδομένων, μπορείτε να μεταφέρετε και να αποθέσετε τις στήλες σε προβολές και αναφορές σαν να προήλθαν οι πληροφορίες από βάσεις δεδομένων SQL.

Βρήκα ότι τα κλασικά τραπέζια ταξινόμησης και κοσκινίσματος ήταν εξαιρετικά χρήσιμα για να καταλάβω ποιος ξόδεψε περισσότερο χρόνο στον ιστότοπό μου. Η απλή ταξινόμηση κατά διεύθυνση IP στα αρχεία καταγραφής αποκάλυψε τι έκαναν οι βαριοί χρήστες.

Το Pentaho παρέχει επίσης λογισμικό για τη σχεδίαση δεδομένων αρχείων HDFS και δεδομένων HBase από συστάδες Hadoop. Ένα από τα πιο ενδιαφέροντα εργαλεία είναι η γραφική διεπαφή προγραμματισμού γνωστή ως Kettle ή Pentaho Data Integration. Έχει μια δέσμη ενσωματωμένων ενοτήτων που μπορείτε να μεταφέρετε και να αποθέσετε σε μια εικόνα και, στη συνέχεια, να τις συνδέσετε. Το Pentaho έχει ενσωματώσει πλήρως το Hadoop και τις άλλες πηγές σε αυτό, ώστε να μπορείτε να γράψετε τον κωδικό σας και να τον στείλετε για εκτέλεση στο σύμπλεγμα.

 

Μεγάλα εργαλεία δεδομένων: Karmasphere Studio and Analyst

Πολλά από τα μεγάλα εργαλεία δεδομένων δεν ξεκίνησαν τη ζωή τους ως εργαλεία αναφοράς. Το Karmasphere Studio, για παράδειγμα, είναι ένα σύνολο plug-in που χτίστηκε πάνω από το Eclipse. Είναι ένα εξειδικευμένο IDE που διευκολύνει τη δημιουργία και τη διαχείριση εργασιών Hadoop.

Είχα μια σπάνια αίσθηση χαράς όταν άρχισα να διαμορφώνω μια εργασία Hadoop με αυτό το εργαλείο προγραμματιστή. Υπάρχουν πολλά στάδια στη ζωή μιας εργασίας Hadoop και τα εργαλεία του Karmasphere σας καθοδηγούν σε κάθε βήμα, δείχνοντας τα μερικά αποτελέσματα στην πορεία. Υποθέτω ότι οι προγραμματιστές εντοπισμού σφαλμάτων μας έκαναν πάντα εφικτό να κοιτάξουμε τον μηχανισμό καθώς λειτουργεί, αλλά το Karmasphere Studio κάνει κάτι καλύτερο: Καθώς ρυθμίζετε τη ροή εργασίας, τα εργαλεία εμφανίζουν την κατάσταση των δεδομένων δοκιμής σε κάθε βήμα. Βλέπετε πώς θα φαίνονται τα προσωρινά δεδομένα καθώς διαχωρίζονται, αναλύονται και μετά μειώνονται.

Το Karmasphere διανέμει επίσης ένα εργαλείο που ονομάζεται Karmasphere Analyst, το οποίο έχει σχεδιαστεί για να απλοποιεί τη διαδικασία οργώματος όλων των δεδομένων σε ένα σύμπλεγμα Hadoop. Έρχεται με πολλά χρήσιμα δομικά στοιχεία για τον προγραμματισμό μιας καλής εργασίας Hadoop, όπως υπορουτίνες για την αποσυμπίεση αρχείων καταγραφής Zipped. Στη συνέχεια τα ενώνει και παραμετροποιεί τις κλήσεις Hive για να παράγει έναν πίνακα εξόδου για να μελετήσει.

 

Μεγάλα εργαλεία δεδομένων: Talend Open Studio

Το Talend προσφέρει επίσης ένα IDE που βασίζεται στο Eclipse για να συνδυάζει εργασίες επεξεργασίας δεδομένων με το Hadoop. Τα εργαλεία του έχουν σχεδιαστεί για να βοηθούν στην ενσωμάτωση δεδομένων, την ποιότητα δεδομένων και τη διαχείριση δεδομένων, όλα με υπορουτίνες συντονισμένες σε αυτές τις εργασίες.

Το Talend Studio σάς επιτρέπει να δημιουργείτε τις δουλειές σας σύροντας και ρίχνοντας μικρά εικονίδια σε έναν καμβά. Εάν θέλετε να λάβετε μια τροφοδοσία RSS, το στοιχείο του Talend θα πάρει το RSS και θα προσθέσει διακομιστή μεσολάβησης εάν είναι απαραίτητο. Υπάρχουν δεκάδες στοιχεία για τη συλλογή πληροφοριών και δεκάδες άλλα για να κάνουμε πράγματα όπως "ασαφής αντιστοιχία". Στη συνέχεια, μπορείτε να εξάγετε τα αποτελέσματα.

Το να συνδυάζετε οπτικά μπλοκ μπορεί να είναι απλό αφού έχετε μια αίσθηση για το τι πραγματικά κάνουν και δεν κάνουν τα εξαρτήματα. Αυτό ήταν πιο εύκολο για μένα να καταλάβω όταν άρχισα να κοιτάζω τον πηγαίο κώδικα που συναρμολογείται πίσω από τον καμβά. Το Talend σάς επιτρέπει να το βλέπετε αυτό και νομίζω ότι είναι ένας ιδανικός συμβιβασμός. Ο οπτικός προγραμματισμός μπορεί να φαίνεται σαν υψηλός στόχος, αλλά έχω διαπιστώσει ότι τα εικονίδια δεν μπορούν ποτέ να αντιπροσωπεύουν τους μηχανισμούς με αρκετές λεπτομέρειες για να καταστεί δυνατή η κατανόηση του τι συμβαίνει. Χρειάζομαι τον πηγαίο κώδικα.

Το Talend διατηρεί επίσης το TalendForge, μια συλλογή επεκτάσεων ανοιχτού κώδικα που διευκολύνουν τη συνεργασία με τα προϊόντα της εταιρείας. Τα περισσότερα από τα εργαλεία φαίνεται να είναι φίλτρα ή βιβλιοθήκες που συνδέουν το λογισμικό του Talend με άλλα σημαντικά προϊόντα, όπως το Salesforce.com και το SugarCRM. Μπορείτε να απορροφήσετε πληροφορίες από αυτά τα συστήματα στα δικά σας έργα, απλοποιώντας την ενοποίηση.

 

Μεγάλα εργαλεία δεδομένων: Skytree Server

Δεν έχουν σχεδιαστεί όλα τα εργαλεία για να διευκολύνουν τη σύμπλεξη κώδικα με οπτικούς μηχανισμούς. Το Skytree προσφέρει ένα πακέτο που εκτελεί πολλούς από τους πιο εξελιγμένους αλγόριθμους μηχανικής μάθησης. Το μόνο που χρειάζεται είναι να πληκτρολογήσετε τη σωστή εντολή σε μια γραμμή εντολών.

Το Skytree επικεντρώνεται περισσότερο στα έντερα από το λαμπερό GUI. Ο Skytree Server είναι βελτιστοποιημένος για να εκτελεί έναν αριθμό κλασικών αλγορίθμων μηχανικής μάθησης στα δεδομένα σας χρησιμοποιώντας μια εφαρμογή που η εταιρεία ισχυρίζεται ότι μπορεί να είναι 10.000 φορές ταχύτερη από άλλα πακέτα. Μπορεί να πραγματοποιήσει αναζήτηση στα δεδομένα σας αναζητώντας ομάδες μαθηματικών όμοιων στοιχείων και, στη συνέχεια, να αντιστρέψει αυτό για να εντοπίσει ακραίες τιμές που μπορεί να είναι προβλήματα, ευκαιρίες ή και τα δύο. Οι αλγόριθμοι μπορεί να είναι πιο ακριβείς από τους ανθρώπους και μπορούν να αναζητήσουν τεράστιες ποσότητες δεδομένων αναζητώντας καταχωρήσεις που είναι λίγο ασυνήθιστες. Αυτό μπορεί να είναι απάτη - ή ένας ιδιαίτερα καλός πελάτης που θα ξοδέψει και θα ξοδέψει.

Η δωρεάν έκδοση του λογισμικού προσφέρει τους ίδιους αλγόριθμους με την ιδιόκτητη έκδοση, αλλά περιορίζεται σε σύνολα δεδομένων 100.000 σειρών. Αυτό θα πρέπει να επαρκεί για να εξακριβωθεί εάν το λογισμικό είναι ένα καλό ταίριασμα.

 

Μεγάλα εργαλεία δεδομένων: Επιτραπέζιος υπολογιστής και διακομιστής Tableau

Το Tableau Desktop είναι ένα εργαλείο οπτικοποίησης που διευκολύνει την προβολή των δεδομένων σας με νέους τρόπους και, στη συνέχεια, κόψτε τα και κοιτάξτε τα με διαφορετικό τρόπο. Μπορείτε ακόμη και να αναμίξετε τα δεδομένα με άλλα δεδομένα και να τα εξετάσετε με άλλο φως. Το εργαλείο έχει βελτιστοποιηθεί για να σας δώσει όλες τις στήλες για τα δεδομένα και να σας επιτρέψει να τα αναμίξετε πριν τα γεμίσετε σε ένα από τα δεκάδες γραφικά πρότυπα που παρέχονται.

Το Tableau Software άρχισε να αγκαλιάζει το Hadoop πριν από αρκετές εκδόσεις και τώρα μπορείτε να αντιμετωπίσετε το Hadoop "όπως θα κάνατε με οποιαδήποτε σύνδεση δεδομένων." Το Tableau βασίζεται στο Hive για τη δομή των ερωτημάτων και, στη συνέχεια, προσπαθεί να αποθηκεύσει τις πληροφορίες στη μνήμη ως κρυφή μνήμη για να επιτρέψει στο εργαλείο να είναι διαδραστικό. Ενώ πολλά από τα άλλα εργαλεία αναφοράς βασίζονται σε μια παράδοση δημιουργίας των αναφορών εκτός σύνδεσης, ο Tableau θέλει να προσφέρει έναν διαδραστικό μηχανισμό, ώστε να μπορείτε να κόβετε και να κόβετε τα δεδομένα σας ξανά και ξανά. Η προσωρινή αποθήκευση βοηθά στην αντιμετώπιση ορισμένων καθυστερήσεων ενός συμπλέγματος Hadoop.

Το λογισμικό είναι καλά γυαλισμένο και αισθητικά ευχάριστο. Συχνά βρήκα τον εαυτό μου να επανατοποθετεί τα δεδομένα μόνο για να τα δει σε ένα άλλο γράφημα, παρόλο που δεν υπήρχαν πολλά νέα που πρέπει να μάθω μεταβαίνοντας από ένα γράφημα πίτας σε ένα γράφημα ράβδων και μετά. Η ομάδα λογισμικού περιλαμβάνει σαφώς έναν αριθμό ατόμων με κάποιο καλλιτεχνικό ταλέντο.

 

Μεγάλα εργαλεία δεδομένων: Splunk

Το Splunk είναι λίγο διαφορετικό από τις άλλες επιλογές. Δεν είναι ακριβώς ένα εργαλείο δημιουργίας αναφορών ή μια συλλογή ρουτίνων AI, αν και επιτυγχάνει πολλά από αυτά στην πορεία. Δημιουργεί ένα ευρετήριο των δεδομένων σας σαν τα δεδομένα σας να είναι ένα βιβλίο ή ένα τμήμα κειμένου. Ναι, οι βάσεις δεδομένων δημιουργούν επίσης δείκτες, αλλά η προσέγγιση του Splunk είναι πολύ πιο κοντά σε μια διαδικασία αναζήτησης κειμένου.

Αυτή η ευρετηρίαση είναι εκπληκτικά ευέλικτη. Το Splunk έρχεται ήδη συντονισμένο με τη συγκεκριμένη εφαρμογή μου, κατανοώντας τα αρχεία καταγραφής και τα απορρόφησε αμέσως. Πωλείται επίσης σε διάφορα πακέτα λύσεων, συμπεριλαμβανομένου ενός για την παρακολούθηση ενός διακομιστή Microsoft Exchange και ενός άλλου για τον εντοπισμό επιθέσεων στο Web. Το ευρετήριο βοηθά στη συσχέτιση των δεδομένων σε αυτά και σε πολλά άλλα κοινά σενάρια από την πλευρά του διακομιστή.