More details about big data analytics techniques can be found in [2,4] as well as in the chapter in this book on“Big Data Analytics.” Clustering Algorithms for Big Data Clustering algori
Trang 1Borko Furht · Flavio Villanustre
Big Data
Technologies and
Applications
Trang 2Big Data Technologies and Applications
Trang 3Borko Furht Flavio Villanustre
Big Data Technologies and Applications
123
Trang 4Borko Furht
Department of Computer and Electrical
Engineering and Computer Science
Florida Atlantic University
Boca Raton, FL
USA
Flavio VillanustreLexisNexis Risk SolutionsAlpharetta, GA
USA
ISBN 978-3-319-44548-9 ISBN 978-3-319-44550-2 (eBook)
DOI 10.1007/978-3-319-44550-2
Library of Congress Control Number: 2016948809
© Springer International Publishing Switzerland 2016
This work is subject to copyright All rights are reserved by the Publisher, whether the whole or part
of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on micro films or in any other physical way, and transmission
or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed.
The use of general descriptive names, registered names, trademarks, service marks, etc in this publication does not imply, even in the absence of a speci fic statement, that such names are exempt from the relevant protective laws and regulations and therefore free for general use.
The publisher, the authors and the editors are safe to assume that the advice and information in this book are believed to be true and accurate at the date of publication Neither the publisher nor the authors or the editors give a warranty, express or implied, with respect to the material contained herein or for any errors or omissions that may have been made.
Printed on acid-free paper
This Springer imprint is published by Springer Nature
The registered company is Springer International Publishing AG
The registered company address is: Gewerbestrasse 11, 6330 Cham, Switzerland
Trang 5The scope of this book includes leading edge in big data systems, architectures, andapplications Big data computing refers to capturing, managing, analyzing, andunderstanding the data at volumes and rates that push the frontiers of currenttechnologies The challenge of big data computing is to provide the hardwarearchitectures and related software systems and techniques which are capable oftransforming ultra large data into valuable knowledge Big data and data-intensivecomputing demand a fundamentally different set of principles than mainstreamcomputing Big data applications typically are well suited for large-scale parallelismover the data and also require extremely high degree of fault tolerance, reliability,and availability In addition, most big data applications require relatively fastresponse The objective of this book is to introduce the basic concepts of big datacomputing and then to describe the total solution to big data problems developed byLexisNexis Risk Solutions.
This book comprises of three parts, which consists of 15 chapters Part I on BigData Technologies includes the chapters dealing with introduction to big dataconcepts and techniques, big data analytics and relating platforms, and visualizationtechniques and deep learning techniques for big data Part II on LexisNexis RiskSolution to Big Data focuses on specific technologies and techniques developed atLexisNexis to solve critical problems that use big data analytics It covers the opensource high performance computing cluster (HPCC Systems®) platform and itsarchitecture, as well as, parallel data languages ECL and KEL, developed toeffectively solve big data problems Part III on Big Data Applications describesvarious data-intensive applications solved on HPCC Systems It includes applica-tions such as cyber security, social network analytics, including insurance fraud,fraud in prescription drugs, and fraud in Medicaid, and others Other HPCCSystems applications described include Ebola spread modeling using big dataanalytics and unsupervised learning and image classification
With the dramatic growth of data-intensive computing and systems and big dataanalytics, this book can be the definitive resource for persons working in this field
as researchers, scientists, programmers, engineers, and users This book is intendedfor a wide variety of people including academicians, designers, developers,
v
Trang 6educators, engineers, practitioners, and researchers and graduate students Thisbook can also be beneficial for business managers, entrepreneurs, and investors.The main features of this book can be summarized as follows:
1 This book describes and evaluates the current state of the art in thefield of bigdata and data-intensive computing
2 This book focuses on LexisNexis’ platform and its solutions to big data
3 This book describes the real-life solutions to big data analytics
Boca Raton, FL, USA Borko FurhtAlpharetta, GA, USA Flavio Villanustre2016
Trang 7We would like to thank a number of contributors to this book The LexisNexiscontributors include David Bayliss, Gavin Halliday, Anthony M Middleton, EdinMuharemagic, Jesse Shaw, Bob Foreman, Arjuna Chala, and Flavio Villanustre.The Florida Atlantic University contributors include Ankur Agarwal, TaghiKhoshgoftaar, DingDing Wang, Maryam M Najafabadi, Abhishek Jain, KarlWeiss, Naeem Seliva, Randal Wald, and Borko Furht The other contributorsinclude I Itauma, M.S Aslan, and X.W Chen from Wayne State University;Chun-Wei Tsai, Chin-Feng Lai, Han-Chieh Chao, and Athanasios V Vasilakosfrom Lulea University of Technology in Sweden; and Akaterina Olshannikova,Aleksandr Ometov, Yevgeni Koucheryavy, and Thomas Olsson from TampereUniversity of Technology in Finland.
Without their expertise and effort, this book would never come to fruition.Springer editors and staffs also deserve our sincere recognition for their supportthroughout the project
vii
Trang 8Part I Big Data Technologies
1 Introduction to Big Data 3
Borko Furht and Flavio Villanustre Concept of Big Data 3
Big Data Workflow 4
Big Data Technologies 5
Big Data Layered Architecture 5
Big Data Software 6
Splunk 6
LexisNexis’ High-Performance Computer Cluster (HPCC) 6
Big Data Analytics Techniques 7
Clustering Algorithms for Big Data 8
Big Data Growth 9
Big Data Industries 9
Challenges and Opportunities with Big Data 10
References 11
2 Big Data Analytics 13
Chun-Wei Tsai, Chin-Feng Lai, Han-Chieh Chao and Athanasios V Vasilakos Introduction 14
Data Analytics 16
Data Input 17
Data Analysis 17
Output the Result 19
Summary 22
Big Data Analytics 24
Big Data Input 25
Big Data Analysis Frameworks and Platforms 26
Researches in Frameworks and Platforms 27
Comparison Between the Frameworks/Platforms of Big Data 30
ix
Trang 9Big Data Analysis Algorithms 31
Mining Algorithms for Specific Problem 31
Machine Learning for Big Data Mining 33
Output the Result of Big Data Analysis 36
Summary of Process of Big Data Analytics 37
The Open Issues 40
Platform and Framework Perspective 40
Input and Output Ratio of Platform 40
Communication Between Systems 40
Bottlenecks on Data Analytics System 41
Security Issues 41
Data Mining Perspective 42
Data Mining Algorithm for Map-Reduce Solution 42
Noise, Outliers, Incomplete and Inconsistent Data 42
Bottlenecks on Data Mining Algorithm 43
Privacy Issues 43
Conclusions 44
References 45
3 Transfer Learning Techniques 53
Karl Weiss, Taghi M Khoshgoftaar and DingDing Wang Introduction 53
Definitions of Transfer Learning 55
Homogeneous Transfer Learning 59
Instance-Based Transfer Learning 60
Asymmetric Feature-Based Transfer Learning 61
Symmetric Feature-Based Transfer Learning 64
Parameter-Based Transfer Learning 68
Relational-Based Transfer Learning 70
Hybrid-Based (Instance and Parameter) Transfer Learning 71
Discussion of Homogeneous Transfer Learning 72
Heterogeneous Transfer Learning 73
Symmetric Feature-Based Transfer Learning 74
Asymmetric Feature-Based Transfer Learning 79
Improvements to Heterogeneous Solutions 82
Experiment Results 83
Discussion of Heterogeneous Solutions 83
Negative Transfer 85
Transfer Learning Applications 88
Conclusion and Discussion 90
Appendix 92
References 93
Trang 104 Visualizing Big Data 101
Ekaterina Olshannikova, Aleksandr Ometov, Yevgeni Koucheryavy and Thomas Olsson Introduction 101
Big Data: An Overview 103
Big Data Processing Methods 104
Big Data Challenges 107
Visualization Methods 109
Integration with Augmented and Virtual Reality 119
Future Research Agenda and Data Visualization Challenges 121
Conclusion 123
References 124
5 Deep Learning Techniques in Big Data Analytics 133
Maryam M Najafabadi, Flavio Villanustre, Taghi M Khoshgoftaar, Naeem Seliya, Randall Wald and Edin Muharemagc Introduction 133
Deep Learning in Data Mining and Machine Learning 136
Big Data Analytics 138
Applications of Deep Learning in Big Data Analytics 140
Semantic Indexing 141
Discriminative Tasks and Semantic Tagging 144
Deep Learning Challenges in Big Data Analytics 147
Incremental Learning for Non-stationary Data 147
High-Dimensional Data 148
Large-Scale Models 149
Future Work on Deep Learning in Big Data Analytics 150
Conclusion 152
References 153
Part II LexisNexis Risk Solution to Big Data 6 The HPCC/ECL Platform for Big Data 159
Anthony M Middleton, David Alan Bayliss, Gavin Halliday, Arjuna Chala and Borko Furht Introduction 159
Data-Intensive Computing Applications 160
Data-Parallelism 161
The“Big Data” Problem 161
Data-Intensive Computing Platforms 162
Cluster Configurations 162
Common Platform Characteristics 163
HPCC Platform 164
HPCC System Architecture 164
HPCC Thor System Cluster 167
HPCC Roxie System Cluster 169
Trang 11ECL Programming Language 170
ECL Features and Capabilities 171
ECL Compilation, Optimization, and Execution 173
ECL Development Tools and User Interfaces 177
ECL Advantages and Key Benefits 177
HPCC High Reliability and High Availability Features 179
Conclusion 180
References 182
7 Scalable Automated Linking Technology for Big Data Computing 185
Anthony M Middleton, David Bayliss and Bob Foreman Introduction 185
SALT—Basic Concepts 186
SALT Process 187
Specification File Language 188
SALT—Applications 195
Data Profiling 196
Data Hygiene 199
Data Source Consistency Checking 201
Delta File Comparison 202
Data Ingest 202
Record Linkage—Process 205
Record Matching Field Weight Computation 206
Generating Specificities 208
Internal Linking 209
External Linking 213
Base File Searching 218
Remote Linking 219
Attribute Files 220
Summary and Conclusions 220
References 222
8 Aggregated Data Analysis in HPCC Systems 225
David Bayliss Introduction 225
The RDBMS Paradigm 226
The Reality of SQL 227
Normalizing an Abnormal World 228
A Data Centric Approach 230
Data Analysis 232
Case Study: Fuzzy Matching 233
Case Study: Non-obvious Relationship Discovery 234
Conclusion 235
Trang 129 Models for Big Data 237
David Bayliss Structures Data 237
Text (and HTML) 241
Semi-structures Data 242
Bridging the Gap—The Key-Value Pair 243
XML—Structured Text 244
RDF 246
Data Model Summary 247
Data Abstraction—An Alternative Approach 247
Structured Data 248
Text 249
Semi-structured Data 249
Key-Value Pairs 250
XML 251
RDF 252
Model Flexibility in Practice 253
Conclusion 255
10 Data Intensive Supercomputing Solutions 257
Anthony M Middleton Introduction 257
Data-Intensive Computing Applications 259
Data-Parallelism 260
The“Data Gap” 260
Characteristics of Data-Intensive Computing Systems 261
Processing Approach 262
Common Characteristics 263
Grid Computing 264
Data-Intensive System Architectures 265
Google MapReduce 265
Hadoop 269
LexisNexis HPCC 273
Programming Language ECL 279
Hadoop Versus HPCC Comparison 282
Terabyte Sort Benchmark 283
Pig Versus ECL 285
Architecture Comparison 287
Conclusion 303
References 305
11 Graph Processing with Massive Datasets: A Kel Primer 307
David Bayliss and Flavio Villanustre Introduction 307
Motivation 308
Trang 13Background 309
The Open Source HPCC Systems Platform Architecture 309
KEL—Knowledge Engineering Language for Graph Problems 309
KEL—A Primer 310
Proposed Solution 313
Data Primitives with Graph Primitive Extensions 313
Generated Code and Graph Libraries 315
KEL Compiler 316
KEL Language—Principles 316
KEL Language—Syntax 318
KEL—The Summary 323
KEL Present and Future 328
References 328
Part III Big Data Applications 12 HPCC Systems for Cyber Security Analytics 331
Flavio Villanustre and Mauricio Renzi The Advanced Persistent Threat 332
LexisNexis HPPS Systems for Deep Forensic Analysis 335
Pre-computed Analytics for Cyber Security 335
The Benefits of Pre-computed Analytics 337
Deep Forensics Analysis 338
Conclusion 339
13 Social Network Analytics: Hidden and Complex Fraud Schemes 341
Flavio Villanustre and Borko Furht Introduction 341
Case Study: Insurance Fraud 341
Case Study: Fraud in Prescription Drugs 341
Case Study: Fraud in Medicaid 342
Case Study: Network Traffic Analysis 343
Case Study: Property Transaction Risk 346
14 Modeling Ebola Spread and Using HPCC/KEL System 347
Jesse Shaw, Flavio Villanustre, Borko Furht, Ankur Agarwal and Abhishek Jain Introduction 347
Survey of Ebola Modeling Techniques 349
Basic Reproduction Number (R0) 349
Case Fatality Rate (CFR) 350
SIR Model 351
Improved SIR (ISIR) Model 352
SIS Model 353
SEIZ Model 353
Trang 14Agent-Based Model 355
A Contact Tracing Model 357
Spatiotemporal Spread of 2014 Outbreak of Ebola Virus Disease 360
Quarantine Model 361
Global Epidemic and Mobility Model 362
Other Critical Issues in Ebola Study 364
Delays in Outbreak Detection 364
Lack of Public Health Infrastructure 365
Health Worker Infections 366
Misinformation Propagation in Social Media 367
Risk Score Approach in Modeling and Predicting Ebola Spread 368
Beyond Compartmental Modeling 368
Physical and Social Graphs 369
Graph Knowledge Extraction 369
Graph Propagation 370
Mobile Applications Related to Ebola Virus Disease 373
ITU Ebola—Info—Sharing 373
Ebola Prevention App 373
Ebola Guidelines 373
About Ebola 374
Stop Ebola WHO Official 374
HealthMap 374
#ISurvivedEbola 374
Ebola Report Center 374
What is Ebola 375
Ebola 375
Stop Ebola 375
Virus Tracker 375
Ebola Virus News Alert 376
Sierra Leone Ebola Trends 376
The Virus Ebola 376
MSF Guidance 376
Novarum Reader 376
Work Done by Government 378
Innovative Mobile Application for Ebola Spread 378
Registering a New User 379
Login the Application 380
Basic Information 380
Geofencing 380
Web Service Through ECL 382
Conclusion 383
References 384
Trang 1515 Unsupervised Learning and Image Classification
in High Performance Computing Cluster 387
I Itauma, M.S Aslan, X.W Chen and Flavio Villanustre Introduction 387
Background and Advantages of HPCC SystemsR 388
Contributions 389
Methods 390
Image Reading in HPCC Systems Platform 390
Feature Learning 391
Feature Extraction 393
Classification 393
Experiments and Results 393
Discussion 398
Conclusion 398
References 399
Trang 16About the Authors
Borko Furht is a professor in the Department ofElectrical and Computer Engineering and ComputerScience at Florida Atlantic University (FAU) in BocaRaton, Florida He is also the director of the NSFIndustry/University Cooperative Research Center forAdvanced Knowledge Enablement Before joiningFAU, he was a vice president of research and a seniordirector of development at Modcomp (Ft Lauderdale),
a computer company of Daimler Benz, Germany; aprofessor at University of Miami in Coral Gables,Florida; and a senior researcher in the Institute BorisKidric-Vinca, Yugoslavia Professor Furht received hisPh.D degree in electrical and computer engineering from the University ofBelgrade His current research is in multimedia systems, multimedia big data and itsapplications, 3-D video and image systems, wireless multimedia, and Internet andcloud computing He is presently the Principal Investigator and Co-PI of severalprojects sponsored by NSF and various high-tech companies He is the author ofnumerous books and articles in the areas of multimedia, data-intensive applications,computer architecture, real-time computing, and operating systems He is a founderand an editor-in-chief of two journals: Journal of Big Data and Journal ofMultimedia Tools and Applications He has received several technical and pub-lishing awards and has been a consultant for many high-tech companies includingIBM, Hewlett-Packard, Adobe, Xerox, General Electric, JPL, NASA, Honeywell,and RCA He has also served as a consultant to various colleges and universities
He has given many invited talks, keynote lectures, seminars, and tutorials Heserved on the board of directors of several high-tech companies
Dr Flavio Villanustre leads HPCC Systems® and is also VP, Technology forLexisNexis Risk Solutions® In this position, he is responsible for information andphysical security, overall platform strategy, and new product development He isalso involved in a number of projects involving Big Data integration, analytics, and
xvii
Trang 17Business Intelligence Previously, he was the director
of Infrastructure for Seisint Prior to 2001, he served in
a variety of roles at different companies includinginfrastructure, information security, and informationtechnology In addition to this, he has been involvedwith the open source community for over 15 yearsthrough multiple initiatives Some of these includefounding the first Linux User Group in Buenos Aires(BALUG) in 1994, releasing several pieces of softwareunder different open source licenses, and evangelizingopen source to different audiences through confer-ences, training, and education Prior to his technologycareer, he was a neurosurgeon
Trang 18Part I Big Data Technologies
Trang 19Chapter 1
Introduction to Big Data
Borko Furht and Flavio Villanustre
Concept of Big Data
In this chapter we present the basic terms and concepts in Big Data computing Bigdata is a large and complex collection of data sets, which is difficult to process usingon-hand database management tools and traditional data processing applications.Big Data topics include the following activities:
Velocity refers to ways of transferring big data including batch, near time, realtime, and streams Velocity also includes time and latency characteristics of datahandling The data can be analyzed, processed, stored, and managed in a fast rate,
or with a lag time between events
Variety of big data refers to different formats of data including structured,unstructured, semi-structured data, and the combination of these The data formatcan be in the forms of documents, emails, text messages, audio, images, video,graphics data, and others
In addition to these three main characteristics of big data, there are two tional features: Value, and Veracity [1] Value refers to benefits/value obtained bythe user from the big data Veracity refers to the quality of big data
addi-© Springer International Publishing Switzerland 2016
B Furht and F Villanustre, Big Data Technologies and Applications,
DOI 10.1007/978-3-319-44550-2_1
3
Trang 20Sources of big data can be classified to: (1) various transactions, (2) enterprisedata, (3) public data, (4) social media, and (5) sensor data Table1.1illustrates thedifference between traditional data and big data.
Big Data Workflow
Big data workflow consists of the following steps, as illustrated in Fig 1.1.These steps are defined as:
Collection—Structured, unstructured and semi-structured data from multiplesources
Ingestion—loading vast amounts of data onto a single data store
Discovery and Cleansing—understanding format and content; clean up andformatting
Integration—linking, entity extraction, entity resolution, indexing and data fusionAnalysis—Intelligence, statistics, predictive and text analytics, machine learningDelivery—querying, visualization, real time delivery on enterprise-classavailability
Table 1.1 Comparison between traditional and big data (adopted from [ 2 ])
Fig 1.1 Big data workflow
Trang 21Big Data Technologies
Big Data technologies is a new generation of technologies and architecturesdesigned to economically extract value from very large volumes of a wide variety
of data by enabling high-velocity capture, discovery, and analysis Big Datatechnologies include:
• Massively Parallel Processing (MPP)
• Data mining tools and techniques
• Distributed file systems and databases
• Cloud computing platforms
• Scalable storage systems
Big Data Layered Architecture
As proposed in [2], the big data system can be represented using a layered tecture, as shown in Fig.1.2 The big data layered architecture consists of threelevels: (1) infrastructure layer, (2) computing layer, and (3) application layer.The infrastructure layer consists of a pool of computing and storage resourcesincluding cloud computer infrastructure They must meet the big data demand interms of maximizing system utilization and storage requirements
archi-The computing layer is a middleware layer and includes various big data toolsfor data integration, data management, and the programming model
The application layer provides interfaces by the programming models toimplement various data analysis functions including statistical analyses, clustering,classification, data mining, and others and build various big data applications
Fig 1.2 Layered architecture
of big data (adopted from [ 2 ]
Trang 22Big Data Software
Hadoop (Apache Foundation)
Hadoop is open source software framework for storage and large scale data cessing on clusters computers It is used for processing, storing and analyzing largeamount of distributed unstructured data Hadoop consists of two components:HDFS, distributive file system, and Map Reduce, which is programming frame-work In Map Reduce programming component large task is divided into twophases: Map and Reduce, as shown in Fig.1.3 The Map phase divides the largetask into smaller pieces and dispatches each small piece onto one active node in thecluster The Reduce phase collects the results from the Map phase and processes theresults to get thefinal result More details can be found in [3]
pro-Splunk
Captures, indexes and correlates real-time data in a searchable repository fromwhich it can generate graphs, reports, alerts, dashboards and visualizations
LexisNexis ’ High-Performance Computer Cluster (HPCC)
HPCC system and software are developed by LexisNexis Risk Solutions
A software architecture, shown in Fig.1.4, implemented on computing clusters
Storage
Synchronization: Aggregate intermediate results
Reduce Reduce Reduce
Final Results
Fig 1.3 MapReduce framework
Trang 23provides data parallel processing for applications with Big Data Includes adata-centric programming language for parallel data processing—ECL The part II
of the book is focused on details of the HPCC system and Part III describes variousHPCC applications
Big Data Analytics Techniques
We classify big data analytics in the followingfive categories [4]:
Audio analytics or speech analytic techniques are used to analyze and extractinformation from unstructured audio data Typical applications of audio analyticsare customer call centers and healthcare companies
Video analytics or video content analysis deals with analyzing and extractingmeaningful information from video streams Video analytics can be used in variousvideo surveillance applications
Social media analytics includes the analysis of structured and unstructured datafrom various social media sources including Facebook, Linkedin, Twitter,YouTube, Instagram, Wikipedia, and others
Fig 1.4 The architecture of the HPCC system
Trang 24Predictive analytics includes techniques for predicting future outcomes based
on past and current data The popular predictive analytic techniques include NNs,SVMs, decision trees, linear and logistic regression, association rules, andscorecards
More details about big data analytics techniques can be found in [2,4] as well as
in the chapter in this book on“Big Data Analytics.”
Clustering Algorithms for Big Data
Clustering algorithms are developed to analyze large volume of data with the mainobjective to categorize data into clusters based on the specific metrics An excellentsurvey of clustering algorithms for big data is presented in [5] The authors pro-posed the categorization of the clustering algorithms into the following fivecategories:
• Partitioning-based algorithms
• Hierarchical-based algorithms
• Density-based algorithms
• Grid-based algorithms, and
• Model-based clustering algorithms
The clustering algorithms were evaluated for big data applications with respect
to three Vs defied earlier and the results of evaluation are given in [5] and theauthors proposed the candidate clustering algorithms for big data that meet thecriteria relating to three V
In the case of clustering algorithms, Volume refers to the ability of a clusteringalgorithm to deal with a large amount of data Variety refers to the ability of aclustering algorithm to handle different types of data, and Velocity refers to thespeed of a clustering algorithm on big data In [5] the authors selected the followingfive clustering algorithms as the most appropriate for big data:
• Fuzzy-CMeans (FCM) clustering algorithm
• The BIRCH clustering algorithm
• The DENCLUE clustering algorithm
• Optimal Grid (OPTIGRID) clustering algorithm, and
• Expectation-Maximization (EM) clustering algorithm
Authors also performed experimental evaluation of these algorithms on real data[5]
Trang 25Big Data Growth
Figure1.5shows the forecast in big data growth by Reuter (2012) that today thereare less than 10 zettabytes of data They estimate that by 2020 there will be morethan 30 Zettabyte of data, with the big data market growth of 45 % annually
Big Data Industries
Media and entertainment applications include digital recording, production, andmedia delivery Also, it includes collection of large amounts of rich content anduser viewing behaviors
Healthcare applications include electronic medical records and images, publichealth monitoring programs, and long-term epidemiological research programs.Life science applications include low-cost gene sequencing that generates tens ofterabytes of information that must be analyzed for genetic variations
Video surveillance applications include big data analysis received from camerasand recording systems
Applications in transportation, logistics, retails, utilities and telecommunicationsinclude sensor data generated from GPS transceivers, RFID tag readers, smart
Fig 1.5 Big data growth (Source Reuter 2012)
Trang 26meters, and cell phones Data is analyzed and used to optimize operations and driveoperational business intelligence.
Challenges and Opportunities with Big Data
In 2012, a group of prominent researchers from leading US universities including
UC Santa Barbara, UC Berkeley, MIT, Cornell University, University of Michigan,Columbia University, Stanford University and a few others, as well as researchersfrom leading companies including Microsoft, HP, Google, IBM, and Yahoo!,created a white paper on this topic [6] Here we present some conclusions from thispaper
One of the conclusions is that Big Data has the potential to revolutionizeresearch; however it has also potential to revolutionize education The prediction isthat big database of every student’s academic performance can be created and thisdata can be then used to design the most effective approaches to education, startingfrom reading, writing, and math, to advanced college-level courses [6]
The analysis of big data consists of various phases as shown in Fig.1.6, andeach phase introduces challenges, which are discussed in detail in [6] Here wesummarize the main challenges
In the Data Acquisition and Recording phase the main challenge is to select datafilters, which will extract the useful data Another challenge is to automaticallygenerate the right metadata to describe what data is recorded and measured
In the Information Extraction and Clustering phase the main challenge is toconvert the original data in a structured form, which is suitable for analysis
Fig 1.6 The big data analysis pipeline [ 6 ]
Trang 27Methods for querying and mining Big Data are fundamentally different fromtraditional statistical analysis on small data samples The characteristics of Big Data
is that it is often noisy, dynamic, heterogeneous, inter-related, and untrustworthy.These is another challenge
The interpretation of the obtained results from big data analysis is anotherchallenge Usually, the interpretation involves examining all the assumptions madeand retracting the analysis
6 Challenges and opportunities with big data White paper; 2012.
7 Fang H et al A survey of big data research In: IEEE network; 2015 p 6 –9.
Trang 28Chapter 2
Big Data Analytics
Chun-Wei Tsai, Chin-Feng Lai, Han-Chieh Chao
and Athanasios V Vasilakos
Abbreviations
PCA Principal components analysis
3Vs Volume, velocity, and variety
IDC International Data Corporation
KDD Knowledge discovery in databases
SVM Support vector machine
SSE Sum of squared errors
GLADE Generalized linear aggregates distributed engine
BDAF Big data architecture framework
CBDMASP Cloud-based big data mining and analyzing services platformSODSS Service-oriented decision support system
HPCC High performance computing cluster system
BI&I Business intelligence and analytics
DBMS Database management system
MSF Multiple speciesflocking
GA Genetic algorithm
SOM Self-organizing map
MBP Multiple back-propagation
YCSB Yahoo cloud serving benchmark
HPC High performance computing
EEG Electroencephalography
This chapter has been adopted from the Journal of Big Data, Borko Furht and TaghiKhoshgoftaar, Editors-in-Chief Springer, Vol 2, No 21, October 2015
© Springer International Publishing Switzerland 2016
B Furht and F Villanustre, Big Data Technologies and Applications,
DOI 10.1007/978-3-319-44550-2_2
13
Trang 29As the information technology spreads fast, most of the data were born digital aswell as exchanged on internet today According to the estimation of Lyman andVarian [1], the new data stored in digital media devices have already been morethan 92 % in 2002, while the size of these new data was also more than fiveexabytes In fact, the problems of analyzing the large scale data were not suddenlyoccurred but have been there for several years because the creation of data isusually much easier thanfinding useful things from the data Even though computersystems today are much faster than those in the 1930s, the large scale data is a strain
to analyze by the computers we have today
In response to the problems of analyzing large-scale data, quite a few efficientmethods [2], such as sampling, data condensation, density-based approaches,grid-based approaches, divide and conquer, incremental learning, and distributedcomputing, have been presented Of course, these methods are constantly used toimprove the performance of the operators of data analytics process.1The results ofthese methods illustrate that with the efficient methods at hand, we may be able toanalyze the large-scale data in a reasonable time The dimensional reductionmethod (e.g., principal components analysis; PCA [3]) is a typical example that isaimed at reducing the input data volume to accelerate the process of data analytics.Another reduction method that reduces the data computations of data clustering issampling [4], which can also be used to speed up the computation time of dataanalytics
Although the advances of computer systems and internet technologies havewitnessed the development of computing hardware following the Moore’s law forseveral decades, the problems of handling the large-scale data still exist when weare entering the age of big data That is why Fisher et al [5] pointed out that bigdata means that the data is unable to be handled and processed by most currentinformation systems or methods because data in the big data era will not onlybecome too big to be loaded into a single machine, it also implies that mosttraditional data mining methods or data analytics developed for a centralized dataanalysis process may not be able to be applied directly to big data In addition to theissues of data size, Laney [6] presented a well-known definition (also called 3Vs) toexplain what is the“big” data: volume, velocity, and variety The definition of 3Vsimplies that the data size is large, the data will be created rapidly, and the data will
be existed in multiple types and captured from different sources, respectively Laterstudies [7,8] pointed out that the definition of 3Vs is insufficient to explain the bigdata we face now Thus, veracity, validity, value, variability, venue, vocabulary,and vagueness were added to make some complement explanation of big data [8]
1 In this chapter, by the data analytics, we mean the whole KDD process, while by the data analysis, we mean the part of data analytics that is aimed at finding the hidden information in the data, such as data mining.
Trang 30The report of IDC [9] indicates that the marketing of big data is about $16.1billion in 2014 Another report of IDC [10] forecasts that it will grow up to $32.4billion by 2017 The reports of [11] and [12] further pointed out that the marketing
of big data will be $46.34 billion and $114 billion by 2018, respectively As shown
in Fig.2.1, even though the marketing values of big data in these researches andtechnology reports [9–15] are different, these forecasts usually indicate that thescope of big data will be grown rapidly in the forthcoming future
In addition to marketing, from the results of disease control and prevention [16],business intelligence [17], and smart city [18], we can easily understand that bigdata is of vital importance everywhere A numerous researches are thereforefocusing on developing effective technologies to analyze the big data To discuss indeep the big data analytics, this paper gives not only a systematic description oftraditional large-scale data analytics but also a detailed discussion about the dif-ferences between data and big data analytics framework for the data scientists orresearchers to focus on the big data analytics
Moreover, although several data analytics and frameworks have been presented
in recent years, with their pros and cons being discussed in different studies, acomplete discussion from the perspective of data mining and knowledge discovery
in databases still is needed As a result, this paper is aimed at providing a briefreview for the researchers on the data mining and distributed computing domains tohave a basic idea to use or develop data analytics for big data
Figure2.2shows the roadmap of this paper, and the remainder of the paper isorganized as follows.“Data analytics” begins with a brief introduction to the dataanalytics, and then “Big data analytics” will turn to the discussion of big dataanalytics as well as stateof-the-art data analytics algorithms and frameworks Theopen issues are discussed in“The open issues” while the conclusions and futuretrends are drawn in“Conclusions”
Fig 2.1 Expected trend of
the marketing of big data
between 2012 and 2018 Note
that yellow, red, and blue of
different colored box
represent the order of
appearance of reference in
this paper for particular year
Trang 31of KDD To make the discussions on the main operators of KDD process moreconcise, the following sections will focus on those depicted in Fig.2.3, which weresimplified to three parts (input, data analytics, and output) and seven operators(gathering, selection, preprocessing, transformation, data mining, evaluation, andinterpretation).
Fig 2.2 Roadmap of this paper
Fig 2.3 The process of
knowledge discovery in
databases
Trang 32Data Input
As shown in Fig.2.3, the gathering, selection, preprocessing, and transformationoperators are in the input part The selection operator usually plays the role ofknowing which kind of data was required for data analysis and select the relevantinformation from the gathered data or databases; thus, these gathered data fromdifferent data resources will need to be integrated to the target data The prepro-cessing operator plays a different role in dealing with the input data which is aimed
at detecting, cleaning, andfiltering the unnecessary, inconsistent, and incompletedata to make them the useful data After the selection and preprocessing operators,the characteristics of the secondary data still may be in a number of different dataformats; therefore, the KDD process needs to transform them into adata-mining-capable format which is performed by the transformation operator Themethods for reducing the complexity and downsizing the data scale to make thedata useful for data analysis part are usually employed in the transformation, such
as dimensional reduction, sampling, coding, or transformation
The data extraction, data cleaning, data integration, data transformation, and datareduction operators can be regarded as the preprocessing processes of data analysis[20] which attempts to extract useful data from the raw data (also called the primarydata) and refine them so that they can be used by the following data analyses If thedata are a duplicate copy, incomplete, inconsistent, noisy, or outliers, then theseoperators have to clean them up If the data are too complex or too large to behandled, these operators will also try to reduce them If the raw data have errors oromissions, the roles of these operators are to identify them and make them con-sistent It can be expected that these operators may affect the analytics result ofKDD, be it positive or negative In summary, the systematic solutions are usually toreduce the complexity of data to accelerate the computation time of KDD and toimprove the accuracy of the analytics result
Data Analysis
Since the data analysis (as shown in Fig.2.3) in KDD is responsible forfinding thehidden patterns/rules/information from the data, most researchers in this field usethe term data mining to describe how they refine the “ground” (i.e., raw data) into
“gold nugget” (i.e., information or knowledge) The data mining methods [20] arenot limited to data problem specific methods In fact, other technologies (e.g.,statistical or machine learning technologies) have also been used to analyze the datafor many years In the early stages of data analysis, the statistical methods wereused for analyzing the data to help us understand the situation we are facing, such aspublic opinion poll or TV programme rating Like the statistical analysis, theproblem specific methods for data mining also attempted to understand the meaningfrom the collected data
Trang 33After the data mining problem was presented, some of the domain specificalgorithms are also developed An example is the apriori algorithm [21] which isone of the useful algorithms designed for the association rules problem Althoughmost definitions of data mining problems are simple, the computation costs arequite high To speed up the response time of a data mining operator, machinelearning [22], metaheuristic algorithms [23], and distributed computing [24] wereused alone or combined with the traditional data mining algorithms to provide more
efficient ways for solving the data mining problem One of the well-known binations can be found in [25], Krishna and Murty attempted to combine geneticalgorithm and k-means to get better clustering result than k-means alone does AsFig.2.4 shows, most data mining algorithms contain the initialization, data inputand output, data scan, rules construction, and rules update operators [26] InFig.2.4, D represents the raw data, d the data from the scan operator, r the rules, othe predefined measurement, and v the candidate rules The scan, construct, andupdate operators will be performed repeatedly until the termination criterion is met.The timing to employ the scan operator depends on the design of the data miningalgorithm; thus, it can be considered as an optional operator Most of the dataalgorithms can be described by Fig.2.4in which it also shows that the represen-tative algorithms—clustering, classification, association rules, and sequential pat-terns—will apply these operators to find the hidden information from the raw data.Thus, modifying these operators will be one of the possible ways for enhancing theperformance of the data analysis
com-Clustering is one of the well-known data mining problems because it can be used
to understand the “new” input data The basic idea of this problem [27] is toseparate a set of unlabeled input data2to k different groups, e.g., such as k-means[28] Classification [20] is the opposite of clustering because it relies on a set oflabeled input data to construct a set of classifiers (i.e., groups) which will then beused to classify the unlabeled input data to the groups to which they belong Tosolve the classification problem, the decision tree-based algorithm [29], nạveBayesian classification [30], and support vector machine (SVM) [31] are widelyused in recent years
Fig 2.4 Data mining
algorithm
2 In this chapter, by an unlabeled input data, we mean that it is unknown to which group the input data belongs If all the input data are unlabeled, it means that the distribution of the input data is unknown.
Trang 34Unlike clustering and classification that attempt to classify the input data to kgroups, association rules and sequential patterns are focused on finding out the
“relationships” between the input data The basic idea of association rules [21] isfind all the co-occurrence relationships between the input data For the associationrules problem, the apriori algorithm [21] is one of the most popular methods.Nevertheless, because it is computationally very expensive, later studies [32] haveattempted to use different approaches to reducing the cost of the apriori algorithm,such as applying the genetic algorithm to this problem [33] In addition to con-sidering the relationships between the input data, if we also consider the sequence
or time series of the input data, then it will be referred to as the sequential patternmining problem [34] Several apriori-like algorithms were presented for solving it,such as generalized sequential pattern [34] and sequential pattern discovery usingequivalence classes [35]
Output the Result
Evaluation and interpretation are two vital operators of the output Evaluationtypically plays the role of measuring the results It can also be one of the operatorsfor the data mining algorithm, such as the sum of squared errors which was used bythe selection operator of the genetic algorithm for the clustering problem [25]
To solve the data mining problems that attempt to classify the input data, two ofthe major goals are: (1) cohesion—the distance between each data and the centroid(mean) of its cluster should be as small as possible, and (2) coupling—the distancebetween data which belong to different clusters should be as large as possible Inmost studies of data clustering or classification problems, the sum of squared errors(SSE), which was used to measure the cohesion of the data mining results, can be
where k is the number of clusters which is typically given by the user; nithe number
of data in the ith cluster; xijthe jth datum in the ith cluster; ci is the mean of the ithcluster; and n¼Pk
i ¼1niis the number of data The most commonly used distancemeasure for the data mining problem is the Euclidean distance, which is defined as
Trang 35Accuracy (ACC) is another well-known measurement [37] which is defined as
ACC¼Number of cases correctly classified
Total number of test cases : ð2:4Þ
To evaluate the classification results, precision (p), recall (r), and F-measure can
be used to measure how many data that do not belong to group A are incorrectlyclassified into group A; and how many data that belong to group A are not classifiedinto group A A simple confusion matrix of a classifier [37] as given in Table2.1
can be used to cover all the situations of the classification results In Table2.1, TPand TN indicate the numbers of positive examples and negative examples that arecorrectly classified, respectively; FN and FP indicate the numbers of positiveexamples and negative examples that are incorrectly classified, respectively Withthe confusion matrix at hand, it is much easier to describe the meaning of precision(p), which is defined as
p¼ TP
TPþ FP; ð2:5Þand the meaning of recall (r), which is defined as
r¼ TP
TPþ FN: ð2:6ÞThe F-measure can then be computed as
F¼ 2pr
In addition to the above-mentioned measurements for evaluating the data miningresults, the computation cost and response time are another two well-knownmeasurements When two different mining algorithms canfind the same or similar
Table 2.1 Confusion matrix
Trang 36results, of course, how fast they can get the final mining results will become themost important research topic.
After something (e.g., classification rules) is found by data mining methods, thetwo essential research topics are: (1) the work to navigate and explore the meaning
of the results from the data analysis to further support the user to do the applicabledecision can be regarded as the interpretation operator [38], which in most cases,gives useful interface to display the information [39] and (2) a meaningful sum-marization of the mining results [40] can be made to make it easier for the user tounderstand the information from the data analysis The data summarization isgenerally expected to be one of the simple ways to provide a concise piece ofinformation to the user because human has trouble of understanding vast amounts
of complicated information A simple data summarization can be found in theclustering search engine, when a query “oasis” is sent to Carrot2 (http://search.carrot2.org/stable/search), it will return some keywords to represent each group ofthe clustering results for web links to help us recognize which category needed bythe user, as shown in the left side of Fig.2.5
A useful graphical user interface is another way to provide the meaningfulinformation to an user As explained by Shneiderman in [39], we need“overviewfirst, zoom and filter, then retrieve the details on demand” The useful graphical userinterface [38,41] also makes it easier for the user to comprehend the meaning of theresults when the number of dimensions is higher than three How to display theresults of data mining will affect the user’s perspective to make the decision Forinstance, data mining can help usfind “type A influenza” at a particular region, butwithout the time series andflu virus infected information of patients, the govern-ment could not recognize what situation (pandemic or controlled) we are facingnow so as to make appropriate responses to that For this reason, a better solution to
Fig 2.5 Screenshot of the result of clustering search engine
Trang 37merge the information from different sources and mining algorithm results will beuseful to let the user make the right decision.
Summary
Since the problems of handling and analyzing large-scale and complex input dataalways exist in data analytics, several efficient analysis methods were presented toaccelerate the computation time or to reduce the memory cost for the KDD process,
as shown in Table2.2 The study of [42] shows that the basic mathematical cepts (i.e., triangle inequality) can be used to reduce the computation cost of aclustering algorithm Another study [43] shows that the new technologies (i.e.,distributed computing by GPU) can also be used to reduce the computation time ofdata analysis method In addition to the well-known improved methods for theseanalysis methods (e.g., triangle inequality or distributed computing), a large pro-portion of studies designed their efficient methods based on the characteristics ofmining algorithms or problem itself, which can be found in [32,44, 45], and soforth This kind of improved methods typically was designed for solving thedrawback of the mining algorithms or using different ways to solve the miningproblem These situations can be found in most association rules and sequential
con-Table 2.2 Efficient data
analytics methods for data
Trang 38patterns problems because the original assumption of these problems is for theanalysis of large-scale dataset Since the earlier frequent pattern algorithm (e.g.,apriori algorithm) needs to scan the whole dataset many times which is computa-tionally very expensive How to reduce the number of times the whole dataset isscanned so as to save the computation cost is one of the most important things in allthe frequent pattern studies The similar situation also exists in data clustering andclassification studies because the design concept of earlier algorithms, such asmining the patterns on-the-fly [46], mining partial patterns at different stages [47],and reducing the number of times the whole dataset is scanned [32], are thereforepresented to enhance the performance of these mining algorithms Since some ofthe data mining problems are NP-hard [48] or the solution space is very large,several recent studies [23,49] have attempted to use metaheuristic algorithm as themining algorithm to get the approximate solution within a reasonable time.Abundant research results of data analysis [20,27,62] show possible solutionsfor dealing with the dilemmas of data mining algorithms It means that the openissues of data analysis from the literature [2,63] usually can help us easilyfind thepossible solutions For instance, the clustering result is extremely sensitive to theinitial means, which can be mitigated by using multiple sets of initial means [64].According to our observation, most data analysis methods have limitations for bigdata, that can be described as follows:
• Unscalability and centralization Most data analysis methods are not forlarge-scale and complex dataset The traditional data analysis methods cannot bescaled up because their design does not take into account large or complexdatasets The design of traditional data analysis methods typically assumed theywill be performed in a single machine, with all the data in memory for the dataanalysis process For this reason, the performance of traditional data analyticswill be limited in solving the volume problem of big data
• Non-dynamic Most traditional data analysis methods cannot be dynamicallyadjusted for different situations, meaning that they do not analyze the input dataon-the-fly For example, the classifiers are usually fixed which cannot beautomatically changed The incremental learning [65] is a promising researchtrend because it can dynamically adjust the the classifiers on the training processwith limited resources As a result, the performance of traditional data analyticsmay not be useful to the problem of velocity problem of big data
• Uniform data structure Most of the data mining problems assume that theformat of the input data will be the same Therefore, the traditional data miningalgorithms may not be able to deal with the problem that the formats of differentinput data may be different and some of the data may be incomplete How tomake the input data from different sources the same format will be a possiblesolution to the variety problem of big data
Because the traditional data analysis methods are not designed for large-scaleand complex data, they are almost impossible to be capable of analyzing the bigdata Redesigning and changing the way the data analysis methods are designed are
Trang 39two critical trends for big data analysis Several important concepts in the design ofthe big data analysis method will be given in the following sections.
Big Data Analytics
Nowadays, the data that need to be analyzed are not just large, but they are posed of various data types, and even including streaming data [66] Since big datahas the unique features of “massive, high dimensional, heterogeneous, complex,unstructured, incomplete, noisy, and erroneous,” which may change the statisticaland data analysis approaches [67] Although it seems that big data makes it possiblefor us to collect more data tofind more useful information, the truth is that moredata do not necessarily mean more useful information It may contain moreambiguous or abnormal data For instance, a user may have multiple accounts, or anaccount may be used by multiple users, which may degrade the accuracy of themining results [68] Therefore, several new issues for data analytics come up, such
com-as privacy, security, storage, fault tolerance, and quality of data [69]
The big data may be created by handheld device, social network, internet ofthings, multimedia, and many other new applications that all have the character-istics of volume, velocity, and variety As a result, the whole data analytics has to
be re-examined from the following perspectives:
• From the volume perspective, the deluge of input data is the very first thing that
we need to face because it may paralyze the data analytics Different fromtraditional data analytics, for the wireless sensor network data analysis, Baraniuk[70] pointed out that the bottleneck of big data analytics will be shifted fromsensor to processing, communications, storage of sensing data, as shown inFig 2.6 This is because sensors can gather much more data, but whenuploading such large data to upper layer system, it may create bottleneckseverywhere
• In addition, from the velocity perspective, real-time or streaming data bring upthe problem of large quantity of data coming into the data analytics within ashort duration but the device and system may not be able to handle these inputdata This situation is similar to that of the networkflow analysis for which wetypically cannot mirror and analyze everything we can gather
• From the variety perspective, because the incoming data may use different types
or have incomplete data, how to handle them also bring up another issue for theinput operators of data analytics
In this section, we will turn the discussion to the big data analytics process
Trang 40Big Data Input
The problem of handling a vast quantity of data that the system is unable to process
is not a brand-new research issue; in fact, it appeared in several early approaches [2,
21,71], e.g., marketing analysis, networkflow monitor, gene expression analysis,weather forecast, and even astronomy analysis This problem still exists in big dataanalytics today; thus, preprocessing is an important task to make the computer,platform, and analysis algorithm be able to handle the input data The traditionaldata preprocessing methods [72] (e.g., compression, sampling, feature selection,and so on) are expected to be able to operate effectively in the big data age.However, a portion of the studies still focus on how to reduce the complexity of theinput data because even the most advanced computer technology cannot efficientlyprocess the whole input data by using a single machine in most cases By usingdomain knowledge to design the preprocessing operator is a possible solution forthe big data In [73], Ham and Lee used the domain knowledge, B-tree,divide-and-conquer tofilter the unrelated log information for the mobile web loganalysis A later study [74] considered that the computation cost of preprocessingwill be quite high for massive logs, sensor, or marketing data analysis Thus,Dawelbeit and McCrindle employed the bin packing partitioning method to dividethe input data between the computing processors to handle this high computations
of preprocessing on cloud system The cloud system is employed to preprocess theraw data and then output the refined data (e.g., data with uniform format) to make iteasier for the data analysis method or system to preform the further analysis work.Sampling and compression are two representative data reduction methods for bigdata analytics because reducing the size of data makes the data analytics compu-tationally less expensive, thus faster, especially for the data coming to the system
Fig 2.6 The comparison
between traditional data
analysis and big data analysis
on wireless sensor network