I Introduction & Concepts |
|
17 | (98) |
|
1 Introduction to Cloud Computing |
|
|
19 | (20) |
|
|
20 | (1) |
|
1.1.1 Definition of Cloud Computing |
|
|
20 | (1) |
|
1.2 Characteristics of Cloud Computing |
|
|
20 | (2) |
|
|
22 | (3) |
|
|
22 | (1) |
|
|
23 | (2) |
|
1.4 Cloud Services Examples |
|
|
25 | (5) |
|
1.4.1 IaaS: Amazon EC2, Google Compute Engine, Azure VMs |
|
|
25 | (2) |
|
1.4.2 PaaS: Google App Engine |
|
|
27 | (1) |
|
|
28 | (2) |
|
1.5 Cloud-based Services & Applications |
|
|
30 | (9) |
|
1.5.1 Cloud Computing for Healthcare |
|
|
30 | (1) |
|
1.5.2 Cloud Computing for Energy Systems |
|
|
31 | (1) |
|
1.5.3 Cloud Computing for Transportation Systems |
|
|
32 | (2) |
|
1.5.4 Cloud Computing for Manufacturing Industry |
|
|
34 | (1) |
|
1.5.5 Cloud Computing for Government |
|
|
34 | (1) |
|
1.5.6 Cloud Computing for Education |
|
|
34 | (2) |
|
1.5.7 Cloud Computing for Mobile Communication |
|
|
36 | (3) |
|
2 Cloud Concepts & Technologies |
|
|
39 | (24) |
|
|
40 | (1) |
|
|
41 | (4) |
|
2.3 Scalability & Elasticity |
|
|
45 | (1) |
|
|
46 | (1) |
|
|
47 | (2) |
|
|
49 | (2) |
|
2.7 Software Defined Networking |
|
|
51 | (3) |
|
2.8 Network Function Virtualization |
|
|
54 | (2) |
|
|
56 | (1) |
|
2.10 Identity and Access Management |
|
|
57 | (1) |
|
2.11 Service Level Agreements |
|
|
58 | (1) |
|
|
59 | (4) |
|
3 Cloud Services & Platforms |
|
|
63 | (30) |
|
|
64 | (3) |
|
3.1.1 Amazon Elastic Compute Cloud |
|
|
66 | (1) |
|
3.1.2 Google Compute Engine |
|
|
66 | (1) |
|
3.1.3 Windows Azure Virtual Machines ' |
|
|
67 | (1) |
|
|
67 | (3) |
|
3.2.1 Amazon Simple Storage Service |
|
|
68 | (1) |
|
3.2.2 Google Cloud Storage |
|
|
69 | (1) |
|
3.2.3 Windows Azure Storage |
|
|
70 | (1) |
|
|
70 | (4) |
|
3.3.1 Amazon Relational Data Store |
|
|
71 | (1) |
|
|
72 | (1) |
|
|
72 | (2) |
|
3.3.4 Google Cloud Datastore |
|
|
74 | (1) |
|
3.3.5 Windows Azure SQL Database |
|
|
74 | (1) |
|
3.3.6 Windows Azure Table Service |
|
|
74 | (1) |
|
|
74 | (6) |
|
3.4.1 Application Runtimes & Frameworks |
|
|
75 | (2) |
|
|
77 | (1) |
|
|
78 | (1) |
|
3.4.4 Notification Services |
|
|
78 | (2) |
|
|
80 | (1) |
|
3.5 Content Delivery Services |
|
|
80 | (1) |
|
|
81 | (1) |
|
3.5.2 Windows Azure Content Delivery Network |
|
|
81 | (1) |
|
|
81 | (2) |
|
3.6.1 Amazon Elastic MapReduce |
|
|
81 | (1) |
|
3.6.2 Google MapReduce Service |
|
|
82 | (1) |
|
|
83 | (1) |
|
3.6.4 Windows Azure HDInsight |
|
|
83 | (1) |
|
3.7 Deployment & Management-Services |
|
|
83 | (1) |
|
3.7.1 Amazon Elastic Beanstalk |
|
|
83 | (1) |
|
3.7.2 Amazon CloudFormation |
|
|
83 | (1) |
|
3.8 Identity & Access Management Services |
|
|
84 | (1) |
|
3.8.1 Amazon Identity & Access Management |
|
|
85 | (1) |
|
3.8.2 Windows Azure Active Directory |
|
|
85 | (1) |
|
3.9 Open Source Private Cloud Software |
|
|
85 | (8) |
|
|
86 | (1) |
|
|
86 | (1) |
|
|
87 | (6) |
|
|
93 | (22) |
|
|
94 | (1) |
|
4.2 Hadoop MapReduce Job Execution |
|
|
95 | (7) |
|
|
96 | (1) |
|
|
96 | (1) |
|
|
96 | (1) |
|
|
96 | (1) |
|
|
96 | (1) |
|
4.2.6 MapReduce Job Execution Workflow |
|
|
97 | (5) |
|
|
102 | (2) |
|
|
102 | (1) |
|
|
102 | (1) |
|
|
103 | (1) |
|
|
104 | (13) |
|
|
105 | (1) |
|
|
105 | (1) |
|
|
106 | (1) |
|
|
107 | (1) |
|
4.4.5 Starting and Stopping Hadoop Cluster |
|
|
108 | (7) |
II Developing For Cloud |
|
115 | (186) |
|
5 Cloud Application Design |
|
|
117 | (26) |
|
|
118 | (1) |
|
5.2 Design Considerations for Cloud Applications |
|
|
118 | (2) |
|
|
118 | (1) |
|
5.2.2 Reliability & Availability |
|
|
119 | (1) |
|
|
119 | (1) |
|
5.2.4 Maintenance & Upgradation |
|
|
120 | (1) |
|
|
120 | (1) |
|
5.3 Reference Architectures for Cloud Applications |
|
|
120 | (4) |
|
5.4 Cloud Application Design Methodologies |
|
|
124 | (10) |
|
5.4.1 Service Oriented Architecture |
|
|
124 | (3) |
|
5.4.2 Cloud Component Model |
|
|
127 | (2) |
|
5.4.3 IaaS, PaaS and SaaS services for cloud applications |
|
|
129 | (1) |
|
5.4.4 Model View Controller |
|
|
130 | (2) |
|
5.4.5 RESTful Web Services |
|
|
132 | (2) |
|
5.5 Data Storage Approaches |
|
|
134 | (9) |
|
5.5.1 Relational (SQL) Approach |
|
|
134 | (4) |
|
5.5.2 Non-Relational (No-SQL) Approach |
|
|
138 | (5) |
|
|
143 | (26) |
|
|
144 | (1) |
|
|
145 | (1) |
|
6.3 Python Data Types & Data Structures |
|
|
145 | (6) |
|
|
145 | (2) |
|
|
147 | (1) |
|
|
148 | (1) |
|
|
149 | (1) |
|
|
150 | (1) |
|
|
151 | (1) |
|
|
151 | (3) |
|
|
151 | (1) |
|
|
152 | (1) |
|
|
153 | (1) |
|
|
153 | (1) |
|
|
153 | (1) |
|
|
154 | (1) |
|
|
154 | (3) |
|
|
157 | (2) |
|
|
159 | (1) |
|
|
160 | (2) |
|
|
162 | (1) |
|
|
163 | (6) |
|
|
169 | (78) |
|
7.1 Python for Amazon Web Services |
|
|
170 | (17) |
|
|
171 | (2) |
|
|
173 | (4) |
|
|
177 | (1) |
|
|
177 | (3) |
|
|
180 | (2) |
|
|
182 | (3) |
|
|
185 | (2) |
|
7.2 Python for Google Cloud Platform |
|
|
187 | (17) |
|
7.2.1 Google Compute Engine |
|
|
187 | (3) |
|
7.2.2 Google Cloud Storage |
|
|
190 | (3) |
|
|
193 | (3) |
|
|
196 | (3) |
|
7.2.5 Google Cloud Datastore |
|
|
199 | (3) |
|
|
202 | (2) |
|
7.3 Python for Windows Azure |
|
|
204 | (6) |
|
7.3.1 Azure Cloud Service |
|
|
204 | (2) |
|
7.3.2 Azure Virtual Machines |
|
|
206 | (1) |
|
|
207 | (3) |
|
|
210 | (1) |
|
7.5 Python Packages of Interest |
|
|
211 | (12) |
|
|
211 | (2) |
|
|
213 | (1) |
|
|
214 | (2) |
|
|
216 | (3) |
|
|
219 | (3) |
|
|
222 | (1) |
|
7.6 Python Web Application Framework - Django |
|
|
223 | (14) |
|
7.6.1 Django Architecture |
|
|
223 | (1) |
|
7.6.2 Starting Development with Django |
|
|
224 | (9) |
|
7.6.3 Django Case Study - Blogging App |
|
|
233 | (4) |
|
7.7 Designing a RESTful Web API |
|
|
237 | (10) |
|
8 Cloud Application Development in Python |
|
|
247 | (54) |
|
|
248 | (2) |
|
8.1.1 Design methodology for IaaS service model |
|
|
248 | (1) |
|
8.1.2 Design methodology for PaaS service model |
|
|
249 | (1) |
|
|
250 | (9) |
|
|
259 | (13) |
|
|
272 | (12) |
|
8.5 Social Media Analytics App |
|
|
284 | (17) |
III Advanced Topics |
|
301 | (130) |
|
|
303 | (38) |
|
|
304 | (1) |
|
|
304 | (12) |
|
|
305 | (4) |
|
|
309 | (4) |
|
9.2.3 Parallelizing Clustering Algorithms using MapReduce |
|
|
313 | (3) |
|
9.3 Classification of Big Data |
|
|
316 | (19) |
|
|
317 | (6) |
|
|
323 | (3) |
|
|
326 | (5) |
|
9.3.4 Support Vector Machine |
|
|
331 | (4) |
|
9.4 Recommendation Systems |
|
|
335 | (6) |
|
|
341 | (24) |
|
|
342 | (1) |
|
10.2 Case Study: Live Video Streaming App |
|
|
342 | (10) |
|
|
352 | (2) |
|
|
353 | (1) |
|
10.3.2 HTTP Live Streaming |
|
|
353 | (1) |
|
10.3.3 HTTP Dynamic Streaming |
|
|
354 | (1) |
|
10.4 Case Study: Video Transcoding App |
|
|
354 | (11) |
|
11 Cloud Application Benchmarking & Tuning |
|
|
365 | (26) |
|
|
366 | (2) |
|
11.1.1 Trace Collection/Generation |
|
|
367 | (1) |
|
|
367 | (1) |
|
11.1.3 Workload Specification |
|
|
367 | (1) |
|
11.1.4 Synthetic Workload Generation |
|
|
367 | (1) |
|
11.1.5 User Emulation vs Aggregate Workloads |
|
|
368 | (1) |
|
11.2 Workload Characteristics |
|
|
368 | (4) |
|
11.3 Application Performance Metrics |
|
|
372 | (1) |
|
11.4 Design Considerations for a Benchmarking Methodology |
|
|
372 | (1) |
|
|
373 | (2) |
|
|
374 | (1) |
|
11.6 Deployment Prototyping |
|
|
375 | (1) |
|
11.7 Load Testing & Bottleneck Detection Case Study |
|
|
376 | (3) |
|
11.8 Hadoop Benchmarking Case Study |
|
|
379 | (12) |
|
|
391 | (20) |
|
|
392 | (1) |
|
12.2 CSA Cloud Security Architecture |
|
|
393 | (2) |
|
|
395 | (3) |
|
12.3.1 Single Sign-on (SSO) |
|
|
395 | (3) |
|
|
398 | (3) |
|
12.5 Identity & Access Management |
|
|
401 | (1) |
|
|
402 | (5) |
|
12.6.1 Securing Data at Rest |
|
|
402 | (4) |
|
12.6.2 Securing Data in Motion |
|
|
406 | (1) |
|
|
407 | (2) |
|
|
409 | (2) |
|
13 Cloud for Industry, Healthcare & Education |
|
|
411 | (20) |
|
13.1 Cloud Computing for Healthcare |
|
|
412 | (3) |
|
13.2 Cloud Computing for Energy Systems |
|
|
415 | (5) |
|
13.3 Cloud Computing for Transportation Systems |
|
|
420 | (3) |
|
13.4 Cloud Computing for Manufacturing Industry |
|
|
423 | (1) |
|
13.5 Cloud Computing for Education |
|
|
424 | (7) |
Appendix A: Setting up Ubuntu VM |
|
431 | (13) |
Appendix B: Setting up Django |
|
444 | (6) |
Bibliography |
|
450 | (1) |
Index |
|
451 | |