Atjaunināt sīkdatņu piekrišanu

Cloud Computing: A Hands-On Approach [Mīkstie vāki]

4.14/5 (81 ratings by Goodreads)
, (Georgia Institute of Technology Atlanta USA)
  • Formāts: Paperback / softback, height x width x depth: 254x178x23 mm, weight: 785 g, black & white illustrations
  • Izdošanas datums: 09-Dec-2013
  • Izdevniecība: Createspace
  • ISBN-10: 1494435144
  • ISBN-13: 9781494435141
Citas grāmatas par šo tēmu:
  • Mīkstie vāki
  • Cena: 86,09 €
  • Grāmatu piegādes laiks ir 3-4 nedēļas, ja grāmata ir uz vietas izdevniecības noliktavā. Ja izdevējam nepieciešams publicēt jaunu tirāžu, grāmatas piegāde var aizkavēties.
  • Daudzums:
  • Ielikt grozā
  • Piegādes laiks - 4-6 nedēļas
  • Pievienot vēlmju sarakstam
  • Formāts: Paperback / softback, height x width x depth: 254x178x23 mm, weight: 785 g, black & white illustrations
  • Izdošanas datums: 09-Dec-2013
  • Izdevniecība: Createspace
  • ISBN-10: 1494435144
  • ISBN-13: 9781494435141
Citas grāmatas par šo tēmu:
About the Book

Recent industry surveys expect the cloud computing services market to be in excess of $20 billion and cloud computing jobs to be in excess of 10 million worldwide in 2014 alone. In addition, since a majority of existing information technology (IT) jobs is focused on maintaining legacy in-house systems, the demand for these kinds of jobs is likely to drop rapidly if cloud computing continues to take hold of the industry.

However, there are very few educational options available in the area of cloud computing beyond vendor-specific training by cloud providers themselves. Cloud computing courses have not found their way (yet) into mainstream college curricula.

This book is written as a textbook on cloud computing for educational programs at colleges. It can also be used by cloud service providers who may be interested in offering a broader perspective of cloud computing to accompany their own customer and employee training programs. The typical reader is expected to have completed a couple of courses in programming using traditional high-level languages at the college-level, and is either a senior or a beginning graduate student in one of the science, technology, engineering or mathematics (STEM) fields. We have tried to write a comprehensive book that transfers knowledge through an immersive "hands-on approach", where the reader is provided the necessary guidance and knowledge to develop working code for real-world cloud applications.

Additional support is available at the book's website: www.cloudcomputingbook.info

Organization
The book is organized into three main parts. Part I covers technologies that form the foundations of cloud computing. These include topics such as virtualization, load balancing, scalability & elasticity, deployment, and replication. Part II introduces the reader to the design & programming aspects of cloud computing. Case studies on design and implementation of several cloud applications in the areas such as image processing, live streaming and social networks analytics are provided. Part III introduces the reader to specialized aspects of cloud computing including cloud application benchmarking, cloud security, multimedia applications and big data analytics. Case studies in areas such as IT, healthcare, transportation, networking and education are provided.

I Introduction & Concepts 17(98)
1 Introduction to Cloud Computing
19(20)
1.1 Introduction
20(1)
1.1.1 Definition of Cloud Computing
20(1)
1.2 Characteristics of Cloud Computing
20(2)
1.3 Cloud Models
22(3)
1.3.1 Service Models
22(1)
1.3.2 Deployment Models
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)
1.4.3 SaaS: Salesforce
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)
2.1 Virtualization
40(1)
2.2 Load Balancing
41(4)
2.3 Scalability & Elasticity
45(1)
2.4 Deployment
46(1)
2.5 Replication
47(2)
2.6 Monitoring
49(2)
2.7 Software Defined Networking
51(3)
2.8 Network Function Virtualization
54(2)
2.9 MapReduce
56(1)
2.10 Identity and Access Management
57(1)
2.11 Service Level Agreements
58(1)
2.12 Billing
59(4)
3 Cloud Services & Platforms
63(30)
3.1 Compute Services
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)
3.2 Storage Services
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)
3.3 Database Services
70(4)
3.3.1 Amazon Relational Data Store
71(1)
3.3.2 Amazon DynamoDB
72(1)
3.3.3 Google Cloud SQL
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)
3.4 Application Services
74(6)
3.4.1 Application Runtimes & Frameworks
75(2)
3.4.2 Queuing Services
77(1)
3.4.3 Email Services
78(1)
3.4.4 Notification Services
78(2)
3.4.5 Media Services
80(1)
3.5 Content Delivery Services
80(1)
3.5.1 Amazon CloudFront
81(1)
3.5.2 Windows Azure Content Delivery Network
81(1)
3.6 Analytics Services
81(2)
3.6.1 Amazon Elastic MapReduce
81(1)
3.6.2 Google MapReduce Service
82(1)
3.6.3 Google Big Query
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)
3.9.1 CloudStack
86(1)
3.9.2 Eucalyptus
86(1)
3.9.3 OpenStack
87(6)
4 Hadoop & MapReduce
93(22)
4.1 Apache Hadoop
94(1)
4.2 Hadoop MapReduce Job Execution
95(7)
4.2.1 NameNode
96(1)
4.2.2 Secondary NameNode
96(1)
4.2.3 JobTracker
96(1)
4.2.4 TaskTracker
96(1)
4.2.5 DataNode
96(1)
4.2.6 MapReduce Job Execution Workflow
97(5)
4.3 Hadoop Schedulers
102(2)
4.3.1 FIFO
102(1)
4.3.2 Fair Scheduler
102(1)
4.3.3 Capacity Scheduler
103(1)
4.4 Hadoop Cluster Setup
104(13)
4.4.1 Install Java
105(1)
4.4.2 Install Hadoop
105(1)
4.4.3 Networking
106(1)
4.4.4 Configure Hadoop
107(1)
4.4.5 Starting and Stopping Hadoop Cluster
108(7)
II Developing For Cloud 115(186)
5 Cloud Application Design
117(26)
5.1 Introduction
118(1)
5.2 Design Considerations for Cloud Applications
118(2)
5.2.1 Scalability
118(1)
5.2.2 Reliability & Availability
119(1)
5.2.3 Security
119(1)
5.2.4 Maintenance & Upgradation
120(1)
5.2.5 Performance
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)
6 Python Basics
143(26)
6.1 Introduction
144(1)
6.2 Installing Python
145(1)
6.3 Python Data Types & Data Structures
145(6)
6.3.1 Numbers
145(2)
6.3.2 Strings
147(1)
6.3.3 Lists
148(1)
6.3.4 Tuples
149(1)
6.3.5 Dictionaries
150(1)
6.3.6 Type Conversions
151(1)
6.4 Control Flow
151(3)
6.4.1 if
151(1)
6.4.2 for
152(1)
6.4.3 while
153(1)
6.4.4 range
153(1)
6.4.5 break/continue
153(1)
6.4.6 pass
154(1)
6.5 Functions
154(3)
6.6 Modules
157(2)
6.7 Packages
159(1)
6.8 File Handling
160(2)
6.9 Date/Time Operations
162(1)
6.10 Classes
163(6)
7 Python for Cloud
169(78)
7.1 Python for Amazon Web Services
170(17)
7.1.1 Amazon EC2
171(2)
7.1.2 Amazon AutoScaling
173(4)
7.1.3 Amazon S3
177(1)
7.1.4 Amazon RDS
177(3)
7.1.5 Amazon DynamoDB
180(2)
7.1.6 Amazon SQS
182(3)
7.1.7 Amazon EMR
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)
7.2.3 Google Cloud SQL
193(3)
7.2.4 Google BigQuery
196(3)
7.2.5 Google Cloud Datastore
199(3)
7.2.6 Google App Engine
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)
7.3.3 Azure Storage
207(3)
7.4 Python for MapReduce
210(1)
7.5 Python Packages of Interest
211(12)
7.5.1 JSON
211(2)
7.5.2 XML
213(1)
7.5.3 HTTPLib & URLLib
214(2)
7.5.4 SMTPLib
216(3)
7.5.5 NumPy
219(3)
7.5.6 Scikit-learn
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)
8.1 Design Approaches
248(2)
8.1.1 Design methodology for IaaS service model
248(1)
8.1.2 Design methodology for PaaS service model
249(1)
8.2 Image Processing App
250(9)
8.3 Document Storage App
259(13)
8.4 MapReduce App
272(12)
8.5 Social Media Analytics App
284(17)
III Advanced Topics 301(130)
9 Big Data Analytics
303(38)
9.1 Introduction
304(1)
9.2 Clustering Big Data
304(12)
9.2.1 k-means clustering
305(4)
9.2.2 DBSCAN clustering
309(4)
9.2.3 Parallelizing Clustering Algorithms using MapReduce
313(3)
9.3 Classification of Big Data
316(19)
9.3.1 Naive Bayes
317(6)
9.3.2 Decision Trees
323(3)
9.3.3 Random Forest
326(5)
9.3.4 Support Vector Machine
331(4)
9.4 Recommendation Systems
335(6)
10 Multimedia Cloud
341(24)
10.1 Introduction
342(1)
10.2 Case Study: Live Video Streaming App
342(10)
10.3 Streaming Protocols
352(2)
10.3.1 RTMP Streaming
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)
11.1 Introduction
366(2)
11.1.1 Trace Collection/Generation
367(1)
11.1.2 Workload Modeling
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)
11.5 Benchmarking Tools
373(2)
11.5.1 Types of Tests
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)
12 Cloud Security
391(20)
12.1 Introduction
392(1)
12.2 CSA Cloud Security Architecture
393(2)
12.3 Authentication
395(3)
12.3.1 Single Sign-on (SSO)
395(3)
12.4 Authorization
398(3)
12.5 Identity & Access Management
401(1)
12.6 Data Security
402(5)
12.6.1 Securing Data at Rest
402(4)
12.6.2 Securing Data in Motion
406(1)
12.7 Key Management
407(2)
12.8 Auditing
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