Software architecture for big data and the cloud
Software Architecture for Big Data and the Cloud is designed to be a single resource that brings together research on how software architectures can solve the challenges imposed by building big data software systems. The challenges of big data on the software architecture can relate to scale, securi...
Otros Autores: | , |
---|---|
Formato: | Libro electrónico |
Idioma: | Inglés |
Publicado: |
Cambridge, Massachusetts :
Morgan Kaufmann Publishers
2017.
|
Edición: | First edition |
Materias: | |
Ver en Biblioteca Universitat Ramon Llull: | https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009630087906719 |
Tabla de Contenidos:
- Front Cover
- Software Architecture for Big Data and the Cloud
- Copyright
- Contents
- Contributors
- About the Editors
- Foreword by Mandy Chessell
- Amnesia or Progress?
- The Legacy of Data Warehousing
- Looking Back at the Impact of Big Data Technology
- The Impact of Cloud Technology
- Conclusion
- Foreword by Ian Gorton
- Preface
- Introduction
- Why a New Book on Software Architecture for Big Data and the Cloud?
- Book Outline
- Part I: Concepts and Models
- Part II: Analyzing and Evaluating
- Part III: Technologies
- Part IV: Resource Management
- Part V: Looking Ahead
- 1 Introduction. Software Architecture for Cloud and Big Data: An Open Quest for the Architecturally Signi cant Requirements
- 1.1 A Perspective into Software Architecture for Cloud and Big Data
- 1.2 Cloud Architecturally Signi cant Requirements and Their Design Implications
- 1.2.1 Dynamism and Elasticity as Cloud Architecturally Signi cant Requirements
- 1.2.2 Multitenancy as Cloud Architecturally Signi cant Requirement
- 1.2.3 Service Level Agreements (SLAs) Constraints as Cloud Architecturally Signi cant Requirement
- 1.2.4 Cloud Marketplaces as Architecturally Signi cant Requirement
- 1.2.5 Seeking Value as Cloud Architecturally Signi cant Requirement
- 1.3 Big Data Management as Cloud Architecturally Signi cant Requirement
- 1.3.1 Big Data Analytics Enabled by the Cloud and Its Architecturally Signi cant Requirements
- 1.3.2 Architecturally Signi cant Requirements in Realm of Competing Big Data Technologies
- References
- Part 1 Concepts and Models
- 2 Hyperscalability - The Changing Face of Software Architecture
- 2.1 Introduction
- 2.2 Hyperscalable Systems
- 2.2.1 Scalability
- 2.2.2 Scalability Limits
- 2.2.3 Scalability Costs
- 2.2.4 Hyperscalability
- 2.3 Principles of Hyperscalable Systems.
- 2.3.1 Automate and Optimize to Control Costs
- 2.3.1.1 Automation
- 2.3.1.2 Optimization
- 2.3.2 Simple Solutions Promote Scalability
- 2.3.3 Utilize Stateless Services
- 2.3.4 Observability is Fundamental to Success at Hyperscale
- 2.4 Related Work
- 2.5 Conclusions
- References
- 3 Architecting to Deliver Value From a Big Data and Hybrid Cloud Architecture
- 3.1 Introduction
- 3.2 Supporting the Analytics Lifecycle
- 3.3 The Role of Data Lakes
- 3.4 Key Design Features That Make a Data Lake Successful
- 3.5 Architecture Example - Context Management in the IoT
- 3.6 Big Data Origins and Characteristics
- 3.7 The Systems That Capture and Process Big Data
- 3.8 Operating Across Organizational Silos
- 3.9 Architecture Example - Local Processing of Big Data
- 3.10 Architecture Example - Creating a Multichannel View
- 3.11 Application Independent Data
- 3.12 Metadata and Governance
- 3.13 Conclusions
- 3.14 Outlook and Future Directions
- References
- 4 Domain-Driven Design of Big Data Systems Based on a Reference Architecture
- 4.1 Introduction
- 4.2 Domain-Driven Design Approach
- 4.3 Related Work
- 4.4 Feature Model of Big Data Systems
- 4.4.1 Data
- 4.4.2 Information Management
- 4.4.3 Interface and Visualization
- 4.4.4 Data Processing
- 4.4.5 Data Storage
- 4.4.6 Data Analysis
- 4.4.7 Feature Constraints
- 4.5 Deriving the Application Architectures and Example
- 4.5.1 Feature Modeling
- 4.5.2 Design Rule Modeling
- 4.5.3 Associating Design Decisions With Features
- 4.5.4 Generation of the Application Architecture and the Deployment Diagram
- 4.5.5 Deriving Big Data Architectures of Existing Systems
- 4.5.5.1 Facebook
- 4.5.5.2 Twitter
- 4.5.5.3 Energy management system
- 4.6 Conclusion
- References
- 5 An Architectural Model-Based Approach to Quality-Aware DevOps in Cloud Applications.
- 5.1 Introduction
- 5.2 A Cloud-Based Software Application
- 5.3 Differences in Architectural Models Among Development and Operations
- 5.4 The iObserve Approach
- 5.5 Addressing the Differences in Architectural Models
- 5.5.1 The iObserve Megamodel
- 5.5.2 Descriptive and Prescriptive Architectural Models in iObserve
- 5.5.3 Static and Dynamic Content in Architectural Models
- 5.6 Applying iObserve to CoCoME
- 5.6.1 Applying the iObserve Megamodel
- 5.6.2 Applying Descriptive and Prescriptive Architectural Models
- 5.6.3 Applying Live Visualization
- 5.7 Limitations
- 5.8 Related Work
- 5.9 Conclusion
- References
- 6 Bridging Ecology and Cloud: Transposing Ecological Perspective to Enable Better Cloud Autoscaling
- 6.1 Introduction
- 6.2 Motivation
- 6.3 Natural Ecosystem
- 6.4 Transposing Ecological Principles, Theories and Models to Cloud Ecosystem
- 6.5 Ecology-Inspired Self-Aware Pattern
- 6.6 Opportunities and Challenges
- 6.7 Related Work
- 6.8 Conclusion
- References
- Acknowledgement
- Part 2 Analyzing and Evaluating
- 7 Evaluating Web PKIs
- 7.1 Introduction
- 7.2 An Overview of PKI
- 7.3 Desired Features and Security Concerns
- 7.4 Existing Proposals
- 7.4.1 Classic
- 7.4.2 Difference Observation
- 7.4.2.1 Perspectives
- 7.4.2.2 DoubleCheck
- 7.4.2.3 Convergence
- 7.4.2.4 Certi cate patrol
- 7.4.2.5 CertLock
- 7.4.2.6 TACK
- 7.4.3 Scope Restriction
- 7.4.3.1 Public key pinning (PKP)
- 7.4.3.2 DANE
- 7.4.3.3 CAge
- 7.4.4 Certi cate Management Transparency
- 7.4.4.1 Sovereign keys
- 7.4.4.2 Certi cate transparency
- 7.4.4.3 Accountable key infrastructure
- 7.4.4.4 Certi cate issuance and revocation transparency
- 7.4.4.5 Attack resilient public-key infrastructure
- 7.4.4.6 Distributed transparent key infrastructure
- 7.5 Observations
- 7.5.1 Property Perspective
- 7.5.2 System Perspective.
- 7.6 Conclusion
- References
- 8 Performance Isolation in Cloud-Based Big Data Architectures
- 8.1 Introduction
- 8.2 Background
- 8.2.1 Cloud Computing
- 8.2.2 Big Data Architecture
- 8.3 Case Study and Problem Statement
- 8.3.1 Case Study
- 8.3.2 Problem Statement
- 8.4 Performance Monitoring in Cloud-Based Systems
- 8.5 Application Framework for Performance Isolation
- 8.6 Evaluation of the Framework
- 8.6.1 Evaluation Results
- 8.7 Discussion
- 8.8 Related Work
- 8.9 Conclusion
- References
- 9 From Legacy to Cloud: Risks and Bene ts in Software Cloud Migration
- 9.1 Introduction
- 9.2 Research Method
- 9.2.1 Pilot Study
- 9.2.2 Search Strategy
- 9.2.2.1 Research question
- 9.2.2.2 Data sources
- 9.2.2.3 Search query
- 9.2.2.4 Search process
- 9.2.2.5 Selection of primary studies
- 9.2.2.6 Included and excluded studies
- 9.2.2.7 Search result management
- 9.2.2.8 Quality assessment of primary studies
- 9.2.3 Data Extraction
- 9.2.4 Data Analysis Method
- 9.3 Results
- 9.3.1 Overview of Primary Studies and Quality Evaluation
- 9.3.2 Bene ts and Risks
- 9.3.3 General Measures
- 9.3.4 Models and Frameworks for Cloud Migration
- 9.4 Discussion
- 9.4.1 Findings and Lessons Learned
- 9.4.2 Threats to Validity
- 9.5 Conclusion
- References
- 10 Big Data: A Practitioners Perspective
- 10.1 Big Data Is a New Paradigm - Differences With Traditional Data Warehouse, Pitfalls and Consideration
- 10.1.1 Differences With Traditional Data Warehouse
- 10.1.2 Pitfalls
- 10.1.2.1 Insuf cient volume of data
- 10.1.2.2 Not having a business challenge
- 10.1.2.3 Ignoring the data quality
- 10.1.2.4 Big data can predict the future
- 10.1.3 Considerations
- 10.2 Product Considerations for Big Data - Use of Open Source Products for Big Data, Pitfalls and Considerations.
- 10.2.1 The Use of Open Source Product for Big Data
- 10.2.2 Pitfalls
- 10.2.2.1 Not focusing on business needs and falling to the latest hype
- 10.2.2.2 Not focusing on operational &
- nonfunctional requirements
- 10.2.2.3 Lack of suf cient document and or community base support
- 10.2.2.4 Not planning for separate environment to prove version compatibility
- 10.2.3 Considerations
- 10.3 Use of Cloud for hosting Big Data - Why to Use Cloud, Pitfalls and Consideration
- 10.3.1 Why to Use Cloud?
- 10.3.2 Pitfalls
- 10.3.2.1 Not knowing where the data will be stored
- 10.3.2.2 Not understanding the SLA with the cloud provider
- 10.3.2.3 Not understanding how to transfer data to cloud
- 10.3.2.4 Not knowing the processing pro le required as cloud can scale
- 10.3.3 Consideration
- 10.4 Big Data Implementation - Architecture De nition, Processing Framework and Migration Pattern From Data Warehouse to Big Data
- 10.4.1 Patterns for Transitioning From Data Warehouse to Big Data
- 10.5 Conclusion
- References
- Part 3 Technologies
- 11 A Taxonomy and Survey of Stream Processing Systems
- 11.1 Introduction
- 11.2 Stream Processing Platforms: A Brief Background
- 11.2.1 Requirements of Stream Processing Platforms/Engines
- 11.2.2 Generic Model of Modern Stream Processing Platforms/Engines
- 11.3 Taxonomy
- 11.3.1 Functional Aspects
- 11.3.1.1 Data streaming
- 11.3.1.2 Data execution
- 11.3.1.3 Data processing
- 11.3.1.4 Fault tolerance
- 11.3.2 Nonfunctional Aspects
- 11.3.2.1 Cost
- 11.3.2.2 Technical support
- 11.3.2.3 User community
- 11.4 A Survey of Stream Processing Platforms
- 11.4.1 Data Stream Management Systems
- 11.4.2 Complex Event Processing Systems
- 11.4.3 Stream Processing Platforms/Engines
- 11.4.3.1 Apache storm
- 11.4.3.2 Yahoo! S4
- 11.4.3.3 Apache Samza
- 11.4.3.4 Spring XD.
- 11.4.3.5 Spark streaming.