| |
| |
List of figures | |
| |
| |
List of tables | |
| |
| |
Foreword | |
| |
| |
Preface | |
| |
| |
Warranty | |
| |
| |
| |
Overview of cloud computing | |
| |
| |
| |
Introduction | |
| |
| |
| |
Cloud definitions | |
| |
| |
| |
System architecture | |
| |
| |
| |
Deployment models | |
| |
| |
| |
Cloud characteristics | |
| |
| |
| |
Cloud evolution | |
| |
| |
| |
Getting ready for the cloud | |
| |
| |
| |
Brief history | |
| |
| |
| |
Comparison with related technologies | |
| |
| |
| |
Cloud services | |
| |
| |
| |
Cloud projects | |
| |
| |
| |
Commercial products | |
| |
| |
| |
Research projects | |
| |
| |
| |
Cloud challenges | |
| |
| |
| |
MapReduce programming model | |
| |
| |
| |
Data management | |
| |
| |
| |
Resource scheduling | |
| |
| |
| |
Concluding remarks | |
| |
| |
| |
Resource scheduling for cloud computing | |
| |
| |
| |
Introduction | |
| |
| |
| |
Cloud service scheduling hierarchy | |
| |
| |
| |
Economic models for resource-allocation scheduling | |
| |
| |
| |
Market strategies | |
| |
| |
| |
Auction strategies | |
| |
| |
| |
Economic schedulers | |
| |
| |
| |
Heuristic models for task-execution scheduling | |
| |
| |
| |
Static strategies | |
| |
| |
| |
Dynamic strategies | |
| |
| |
| |
Heuristic schedulers | |
| |
| |
| |
Real-time scheduling in cloud computing | |
| |
| |
| |
Fixed priority strategies | |
| |
| |
| |
Dynamic priority strategies | |
| |
| |
| |
Real-time schedulers | |
| |
| |
| |
Concluding remarks | |
| |
| |
| |
Game theoretical allocation in a cloud datacenter | |
| |
| |
| |
Introduction | |
| |
| |
| |
Game theory | |
| |
| |
| |
Normal formulation | |
| |
| |
| |
Payoff choice and utility function | |
| |
| |
| |
Strategy choice and Nash equilibrium | |
| |
| |
| |
Cloud resource allocation model | |
| |
| |
| |
Bid-shared auction | |
| |
| |
| |
Non-cooperative game | |
| |
| |
| |
Nash equilibrium allocation algorithms | |
| |
| |
| |
Bid functions | |
| |
| |
| |
Parameters estimation | |
| |
| |
| |
Equilibrium price | |
| |
| |
| |
Implementation in a cloud datacenter | |
| |
| |
| |
Cloudsim toolkit | |
| |
| |
| |
Communication among entities | |
| |
| |
| |
Bidding algorithms | |
| |
| |
| |
Comparison of forecasting methods | |
| |
| |
| |
Concluding remarks | |
| |
| |
| |
Multi-dimensional data analysis in a cloud datacenter | |
| |
| |
| |
Introduction | |
| |
| |
| |
Pre-computing | |
| |
| |
| |
Data cube | |
| |
| |
| |
Sparse cube | |
| |
| |
| |
Reuse of previous query results | |
| |
| |
| |
Data compressing | |
| |
| |
| |
Data indexing | |
| |
| |
| |
Data partitioning | |
| |
| |
| |
Data partitioning methods | |
| |
| |
| |
Horizontal partitioning of a multi-dimensional dataset | |
| |
| |
| |
Vertical partitioning of a multi-dimensional dataset | |
| |
| |
| |
Data replication | |
| |
| |
| |
Query processing parallelism | |
| |
| |
| |
Inter-and intra-operators | |
| |
| |
| |
Exchange operator | |
| |
| |
| |
SQL operator parallelization | |
| |
| |
| |
Concluding remarks | |
| |
| |
| |
Data intensive applications with MapReduce | |
| |
| |
| |
Introduction | |
| |
| |
| |
MapReduce: New parallel computing model in cloud computing | |
| |
| |
| |
Dataflow model | |
| |
| |
| |
Two frameworks: GridGain versus Hadoop | |
| |
| |
| |
Communication cost analysis | |
| |
| |
| |
Distributed data storage underlying MapReduce | |
| |
| |
| |
Google file system | |
| |
| |
| |
Distributed cache memory | |
| |
| |
| |
Data accessing | |
| |
| |
| |
Large-scale data analysis based on MapReduce | |
| |
| |
| |
Data query languages | |
| |
| |
| |
Data analysis applications | |
| |
| |
| |
Comparison with shared-nothing parallel databases | |
| |
| |
| |
SimMapReduce: Simulator for modeling MapReduce framework | |
| |
| |
| |
Multi-layer architecture | |
| |
| |
| |
Input and output of simulator | |
| |
| |
| |
Implementation details of simulator | |
| |
| |
| |
Modeling process | |
| |
| |
| |
Concluding remarks | |
| |
| |
| |
Large-scale multi-dimensional data aggregation | |
| |
| |
| |
Introduction | |
| |
| |
| |
Data organization | |
| |
| |
| |
Computations in data explorations | |
| |
| |
| |
Multiple group-by query | |
| |
| |
| |
Choosing a right MapReduce framework | |
| |
| |
| |
Advantages of GridGain | |
| |
| |
| |
Combiner support in Hadoop and GridGain | |
| |
| |
| |
Realizing MapReduce applications with GridGain | |
| |
| |
| |
Workflow analysis of GridGain procedure | |
| |
| |
| |
Parallelizing single group-by query with MapReduce | |
| |
| |
| |
Parallelizing multiple group-by query with MapReduce | |
| |
| |
| |
Data partitioning and data placement | |
| |
| |
| |
MapReduce model-based implementation | |
| |
| |
| |
MapCombineReduce model-based implementation | |
| |
| |
| |
Cost estimation | |
| |
| |
| |
MapReduce model-based implementation | |
| |
| |
| |
MapCombineReduce model-based implementation | |
| |
| |
| |
Comparison of implementations | |
| |
| |
| |
Concluding remarks | |
| |
| |
| |
Multi-dimensional data analysis optimization | |
| |
| |
| |
Introduction | |
| |
| |
| |
Data-locating based job-scheduling | |
| |
| |
| |
Job-scheduling implementation | |
| |
| |
| |
Two-level scheduling | |
| |
| |
| |
Alternative job-scheduling schemes | |
| |
| |
| |
Improvements by speed-up measurements | |
| |
| |
| |
Horizontal partitioning | |
| |
| |
| |
Vertical partitioning | |
| |
| |
| |
Improvements by affecting factors | |
| |
| |
| |
Query selectivity | |
| |
| |
| |
Side effects | |
| |
| |
| |
Improvement by cost estimation | |
| |
| |
| |
Horizontal partitioning | |
| |
| |
| |
Vertical partitioning | |
| |
| |
| |
Comparison of partitioning | |
| |
| |
| |
Compressed data structures | |
| |
| |
| |
Data structure description | |
| |
| |
| |
Data structures for storing recordId-list | |
| |
| |
| |
Compressed data structures for different dimensions | |
| |
| |
| |
Bitmap sparcity and compressing | |
| |
| |
| |
Concluding remarks | |
| |
| |
| |
Real-time scheduling with MapReduce | |
| |
| |
| |
Introduction | |
| |
| |
| |
Real-time scheduling problem | |
| |
| |
| |
Real-time task | |
| |
| |
| |
Processing resource | |
| |
| |
| |
Scheduling algorithms | |
| |
| |
| |
Schedulability test in the cloud datacenter | |
| |
| |
| |
Pseudo-polynomial complexity | |
| |
| |
| |
Polynomial complexity | |
| |
| |
| |
Constant complexity | |
| |
| |
| |
Utilization bounds for schedulability testing | |
| |
| |
| |
Classical bound | |
| |
| |
| |
Closer periods | |
| |
| |
| |
Harmonic chains | |
| |
| |
| |
Hyperbolic bound | |
| |
| |
| |
Real-time task scheduling with MapReduce | |
| |
| |
| |
System model | |
| |
| |
| |
MapReduce segmentation | |
| |
| |
| |
Worst pattern for a schedulable task set | |
| |
| |
| |
Reliability indication methods | |
| |
| |
| |
Reliability indicator | |
| |
| |
| |
Schedulability test conditions | |
| |
| |
| |
Comparison of rate monotonic conditions | |
| |
| |
| |
Comparison of deadline monotonic conditions | |
| |
| |
| |
Concluding remarks | |
| |
| |
| |
Future for cloud computing | |
| |
| |
Bibliography | |
| |
| |
Index | |