Architecting Data Intensive Applications

Anuj Kumar

  • 出版商: Packt Publishing
  • 出版日期: 2018-07-31
  • 售價: $1,380
  • 貴賓價: 9.5$1,311
  • 語言: 英文
  • 頁數: 340
  • 裝訂: Paperback
  • ISBN: 1786465094
  • ISBN-13: 9781786465092
  • 相關分類: 資料庫
  • 立即出貨 (庫存=1)

商品描述

Architect and design data-intensive applications and, in the process, learn how to collect, process, store, govern, and expose data for a variety of use cases

Key Features

  • Integrate the data-intensive approach into your application architecture
  • Create a robust application layout with effective messaging and data querying architecture
  • Enable smooth data flow and make the data of your application intensive and fast

Book Description

Are you an architect or a developer who looks at your own applications gingerly while browsing through Facebook and applauding it silently for its data-intensive, yet ?uent and efficient, behaviour? This book is your gateway to build smart data-intensive systems by incorporating the core data-intensive architectural principles, patterns, and techniques directly into your application architecture.

This book starts by taking you through the primary design challenges involved with architecting data-intensive applications. You will learn how to implement data curation and data dissemination, depending on the volume of your data. You will then implement your application architecture one step at a time. You will get to grips with implementing the correct message delivery protocols and creating a data layer that doesn’t fail when running high traffic. This book will show you how you can divide your application into layers, each of which adheres to the single responsibility principle. By the end of this book, you will learn to streamline your thoughts and make the right choice in terms of technologies and architectural principles based on the problem at hand.

What you will learn

  • Understand how to envision a data-intensive system
  • Identify and compare the non-functional requirements of a data collection component
  • Understand patterns involving data processing, as well as technologies that help to speed up the development of data processing systems
  • Understand how to implement Data Governance policies at design time using various Open Source Tools
  • Recognize the anti-patterns to avoid while designing a data store for applications
  • Understand the different data dissemination technologies available to query the data in an efficient manner
  • Implement a simple data governance policy that can be extended using Apache Falcon

Who this book is for

This book is for developers and data architects who have to code, test, deploy, and/or maintain large-scale, high data volume applications. It is also useful for system architects who need to understand various non-functional aspects revolving around Data Intensive Systems.

Table of Contents

  1. Exploring the Data Ecosystem
  2. Defining a Reference Architecture for Data Intensive Systems
  3. Patterns of the Data Intensive Architecture
  4. Discussing Data-Centric Architectures
  5. Understanding Data Collection and Normalization Requirements and Techniques
  6. Creating a Data Pipeline for Consistent Data Collection, Processing, and Dissemination
  7. Building a Robust and Fault-Tolerant Data Collection System
  8. Challenges of Data Processing
  9. Let Us Process Data in Batches
  10. Handling Streams of Data
  11. Let Us Store the Data
  12. When Data Dissemination is as Important as Data Itself

商品描述(中文翻譯)

設計和建構數據密集型應用程序,同時學習如何收集、處理、存儲、管理和公開各種用例的數據。

主要特點:
- 將數據密集型方法融入應用程序架構中
- 創建具有有效的消息傳遞和數據查詢架構的強大應用程序佈局
- 實現流暢的數據流動,使應用程序的數據密集和快速

書籍描述:
你是一位建築師或開發人員,當你瀏覽Facebook並默默為其數據密集、流暢和高效的行為鼓掌時,你小心翼翼地看著自己的應用程序嗎?本書將直接將核心數據密集型架構原則、模式和技術融入你的應用程序架構,幫助你構建智能的數據密集型系統。

本書首先介紹了設計數據密集型應用程序所涉及的主要設計挑戰。你將學習如何根據數據量實施數據整理和數據傳播。然後,你將逐步實施應用程序架構。你將掌握實現正確的消息傳遞協議和創建在高流量運行時不會失敗的數據層。本書將向你展示如何將應用程序分為各個層次,每個層次都遵循單一職責原則。通過本書,你將學會整理思路,根據問題選擇合適的技術和架構原則。

你將學到:
- 理解如何設想數據密集型系統
- 辨識和比較數據收集組件的非功能性需求
- 理解涉及數據處理的模式,以及有助於加快數據處理系統開發的技術
- 理解如何在設計時使用各種開源工具實施數據治理策略
- 識別在設計應用程序的數據存儲時應避免的反模式
- 理解可用於高效查詢數據的不同數據傳播技術
- 實施一個簡單的數據治理策略,並使用Apache Falcon進行擴展

本書適合對編碼、測試、部署和/或維護大規模、高數據量應用程序的開發人員和數據架構師。對於需要了解圍繞數據密集型系統的各種非功能性方面的系統架構師也很有用。

目錄:
1. 探索數據生態系統
2. 為數據密集型系統定義參考架構
3. 數據密集型架構的模式
4. 討論以數據為中心的架構
5. 理解數據收集和規範化的需求和技術
6. 創建一個用於一致數據收集、處理和傳播的數據管道
7. 構建強大且容錯的數據收集系統
8. 數據處理的挑戰
9. 批量處理數據
10. 處理數據流
11. 存儲數據
12. 當數據傳播和數據本身同等重要時