ebook img

Scalable Big Data Architecture: A practitioners guide to choosing relevant Big Data architecture PDF

147 Pages·2016·4.21 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Scalable Big Data Architecture: A practitioners guide to choosing relevant Big Data architecture

BOOKS FOR PROFESSIONALS BY PROFESSIONALS® A THE EXPERT’S VOICE® IN BIG DATA z a rm i S Scalable Big Data Architecture c a l a This book highlights the diff erent types of data architecture and illustrates the many possibilities b Scalable Big Data l hidden behind the term “Big Data”, from the usage of NoSQL databases to the deployment of e stream analytics architecture, machine learning, and governance. B i g Scalable Big Data Architecture covers real-world, concrete industry use cases that leverage D a Architecture complex distributed applications, which involve web applications, RESTful API, and high t a throughput of large amount of data stored in highly scalable NoSQL data stores such as A Couchbase and Elasticsearch. This book demonstrates how data processing can be done at r scale from the usage of NoSQL datastores to the combination of big data distribution. c h i t When the data processing is too complex and involves diff erent processing topology like long e c running jobs, stream processing, multiple data sources correlation, and machine learning, t u it’s oft en necessary to delegate the load to Hadoop or Spark and use the NoSQL to serve r A practitioner’s guide to choosing relevant e processed data in real time. big data architecture This book shows you how to choose a relevant combination of big data technologies available within the Hadoop ecosystem. It focuses on processing long jobs, architecture, stream data patterns, — log analysis, and real time analytics. Every pattern is illustrated with practical examples, which use diff erent open source projects such as Logstash, Spark, Kafk a, and so on. Bahaaldine Azarmi Traditional data infrastructures are built for digesting and rendering data synthesis and analytics from a large amount of data. This book helps you to understand why you should consider using machine learning algorithms early on in the project, before being overwhelmed by constraints imposed by dealing with the high throughput of big data. Scalable Big Data Architecture is for developers, data architects, and data scientists looking for a better understanding of how to choose the most relevant pattern for a big data project and which tools to integrate into that pattern. US $39.99 Shelve in: ISBN 978-1-4842-1327-8 53999 Databases/Data Warehousing User level: Beginning–Advanced 9781484213278 SOURCE CODE ONLINE www.apress.com www.it-ebooks.info Scalable Big Data Architecture A Practitioner’s Guide to Choosing Relevant Big Data Architecture Bahaaldine Azarmi www.it-ebooks.info Scalable Big Data Architecture Copyright © 2016 by Bahaaldine Azarmi This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed. Exempted from this legal reservation are brief excerpts in connection with reviews or scholarly analysis or material supplied specifically for the purpose of being entered and executed on a computer system, for exclusive use by the purchaser of the work. Duplication of this publication or parts thereof is permitted only under the provisions of the Copyright Law of the Publisher’s location, in its current version, and permission for use must always be obtained from Springer. Permissions for use may be obtained through RightsLink at the Copyright Clearance Center. Violations are liable to prosecution under the respective Copyright Law. ISBN-13 (pbk): 978-1-4842-1327-8 ISBN-13 (electronic): 978-1-4842-1326-1 Trademarked names, logos, and images may appear in this book. Rather than use a trademark symbol with every occurrence of a trademarked name, logo, or image we use the names, logos, and images only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark. The use in this publication of trade names, trademarks, service marks, and similar terms, even if they are not identified as such, is not to be taken as an expression of opinion as to whether or not they are subject to proprietary rights. While the advice and information in this book are believed to be true and accurate at the date of publication, neither the authors nor the editors nor the publisher can accept any legal responsibility for any errors or omissions that may be made. The publisher makes no warranty, express or implied, with respect to the material contained herein. Managing Director: Welmoed Spahr Lead Editor: Celestin Suresh John Development Editor: Douglas Pundick Technical Reviewers: Sundar Rajan Raman and Manoj Patil Editorial Board: Steve Anglin, Pramila Balen, Louise Corrigan, Jim DeWolf, Jonathan Gennick, Robert Hutchinson, Celestin Suresh John, Michelle Lowman, James Markham, Susan McDermott, Matthew Moodie, Jeffrey Pepper, Douglas Pundick, Ben Renow-Clarke, Gwenan Spearing Coordinating Editor: Jill Balzano Copy Editors: Rebecca Rider, Laura Lawrie, and Kim Wimpsett Compositor: SPi Global Indexer: SPi Global Artist: SPi Global Cover Designer: Anna Ishchenko Distributed to the book trade worldwide by Springer Science+Business Media New York, 233 Spring Street, 6th Floor, New York, NY 10013. Phone 1-800-SPRINGER, fax (201) 348-4505, e-mail [email protected], or visit www.springeronline.com. Apress Media, LLC is a California LLC and the sole member (owner) is Springer Science + Business Media Finance Inc (SSBM Finance Inc). SSBM Finance Inc is a Delaware corporation. For information on translations, please e-mail [email protected], or visit www.apress.com. Apress and friends of ED books may be purchased in bulk for academic, corporate, or promotional use. eBook versions and licenses are also available for most titles. For more information, reference our Special Bulk Sales–eBook Licensing web page at www.apress.com/bulk-sales. Any source code or other supplementary material referenced by the author in this text is available to readers at www.apress.com. For detailed information about how to locate your book’s source code, go to www.apress.com/source-code/. www.it-ebooks.info For Aurelia and June. www.it-ebooks.info Contents at a Glance About the Author �����������������������������������������������������������������������������������������������������xi About the Technical Reviewers �����������������������������������������������������������������������������xiii ■ Chapter 1: The Big (Data) Problem ������������������������������������������������������������������������1 ■ Chapter 2: Early Big Data with NoSQL �����������������������������������������������������������������17 ■ Chapter 3: Defining the Processing Topology ������������������������������������������������������41 ■ Chapter 4: Streaming Data ����������������������������������������������������������������������������������57 ■ Chapter 5: Querying and Analyzing Patterns �������������������������������������������������������81 ■ Chapter 6: Learning From Your Data? ���������������������������������������������������������������105 ■ Chapter 7: Governance Considerations �������������������������������������������������������������123 Index ���������������������������������������������������������������������������������������������������������������������139 v www.it-ebooks.info Contents About the Author �����������������������������������������������������������������������������������������������������xi About the Technical Reviewers �����������������������������������������������������������������������������xiii ■ Chapter 1: The Big (Data) Problem ������������������������������������������������������������������������1 Identifying Big Data Symptoms ����������������������������������������������������������������������������������������1 Size Matters ��������������������������������������������������������������������������������������������������������������������������������������������1 Typical Business Use Cases ��������������������������������������������������������������������������������������������������������������������2 Understanding the Big Data Project’s Ecosystem ������������������������������������������������������������3 Hadoop Distribution ��������������������������������������������������������������������������������������������������������������������������������3 Data Acquisition ��������������������������������������������������������������������������������������������������������������������������������������6 Processing Language �����������������������������������������������������������������������������������������������������������������������������7 Machine Learning ���������������������������������������������������������������������������������������������������������������������������������10 NoSQL Stores ����������������������������������������������������������������������������������������������������������������������������������������10 Creating the Foundation of a Long-Term Big Data Architecture �������������������������������������12 Architecture Overview ��������������������������������������������������������������������������������������������������������������������������12 Log Ingestion Application ���������������������������������������������������������������������������������������������������������������������13 Learning Application �����������������������������������������������������������������������������������������������������������������������������13 Processing Engine ��������������������������������������������������������������������������������������������������������������������������������14 Search Engine���������������������������������������������������������������������������������������������������������������������������������������15 Summary ������������������������������������������������������������������������������������������������������������������������15 vii www.it-ebooks.info ■ Contents ■ Chapter 2: Early Big Data with NoSQL �����������������������������������������������������������������17 NoSQL Landscape ����������������������������������������������������������������������������������������������������������17 Key/Value ����������������������������������������������������������������������������������������������������������������������������������������������17 Column �������������������������������������������������������������������������������������������������������������������������������������������������18 Document ���������������������������������������������������������������������������������������������������������������������������������������������18 Graph ����������������������������������������������������������������������������������������������������������������������������������������������������19 NoSQL in Our Use Case �������������������������������������������������������������������������������������������������������������������������20 Introducing Couchbase ���������������������������������������������������������������������������������������������������21 Architecture ������������������������������������������������������������������������������������������������������������������������������������������22 Cluster Manager and Administration Console ��������������������������������������������������������������������������������������24 Managing Documents ���������������������������������������������������������������������������������������������������������������������������28 Introducing ElasticSearch ����������������������������������������������������������������������������������������������30 Architecture ������������������������������������������������������������������������������������������������������������������������������������������30 Monitoring ElasticSearch ����������������������������������������������������������������������������������������������������������������������34 Search with ElasticSearch ��������������������������������������������������������������������������������������������������������������������36 Using NoSQL as a Cache in a SQL-based Architecture ��������������������������������������������������38 Caching Document �������������������������������������������������������������������������������������������������������������������������������38 ElasticSearch Plug-in for Couchbase with Couchbase XDCR ���������������������������������������������������������������40 ElasticSearch Only ��������������������������������������������������������������������������������������������������������������������������������40 Summary ������������������������������������������������������������������������������������������������������������������������40 ■ Chapter 3: Defining the Processing Topology ������������������������������������������������������41 First Approach to Data Architecture �������������������������������������������������������������������������������41 A Little Bit of Background ���������������������������������������������������������������������������������������������������������������������41 Dealing with the Data Sources �������������������������������������������������������������������������������������������������������������42 Processing the Data������������������������������������������������������������������������������������������������������������������������������45 Splitting the Architecture������������������������������������������������������������������������������������������������49 Batch Processing ����������������������������������������������������������������������������������������������������������������������������������50 Stream Processing �������������������������������������������������������������������������������������������������������������������������������52 The Concept of a Lambda Architecture ��������������������������������������������������������������������������53 Summary ������������������������������������������������������������������������������������������������������������������������55 viii www.it-ebooks.info ■ Contents ■ Chapter 4: Streaming Data ����������������������������������������������������������������������������������57 Streaming Architecture ��������������������������������������������������������������������������������������������������57 Architecture Diagram����������������������������������������������������������������������������������������������������������������������������57 Technologies �����������������������������������������������������������������������������������������������������������������������������������������58 The Anatomy of the Ingested Data ���������������������������������������������������������������������������������60 Clickstream Data ����������������������������������������������������������������������������������������������������������������������������������60 The Raw Data ���������������������������������������������������������������������������������������������������������������������������������������62 The Log Generator ��������������������������������������������������������������������������������������������������������������������������������63 Setting Up the Streaming Architecture ���������������������������������������������������������������������������64 Shipping the Logs in Apache Kafka ������������������������������������������������������������������������������������������������������64 Draining the Logs from Apache Kafka ��������������������������������������������������������������������������������������������������72 Summary ������������������������������������������������������������������������������������������������������������������������79 ■ Chapter 5: Querying and Analyzing Patterns �������������������������������������������������������81 Definining an Analytics Strategy ������������������������������������������������������������������������������������81 Continuous Processing �������������������������������������������������������������������������������������������������������������������������81 Real-Time Querying ������������������������������������������������������������������������������������������������������������������������������82 Process and Index Data Using Spark �����������������������������������������������������������������������������82 Preparing the Spark Project �����������������������������������������������������������������������������������������������������������������82 Understanding a Basic Spark Application ���������������������������������������������������������������������������������������������84 Implementing the Spark Streamer �������������������������������������������������������������������������������������������������������86 Implementing a Spark Indexer �������������������������������������������������������������������������������������������������������������89 Implementing a Spark Data Processing �����������������������������������������������������������������������������������������������91 Data Analytics with Elasticsearch ����������������������������������������������������������������������������������93 Introduction to the aggregation framework ������������������������������������������������������������������������������������������93 Visualize Data in Kibana �����������������������������������������������������������������������������������������������100 Summary ����������������������������������������������������������������������������������������������������������������������103 ix www.it-ebooks.info ■ Contents ■ Chapter 6: Learning From Your Data? ���������������������������������������������������������������105 Introduction to Machine Learning ��������������������������������������������������������������������������������105 Supervised Learning ���������������������������������������������������������������������������������������������������������������������������105 Unsupervised Learning �����������������������������������������������������������������������������������������������������������������������107 Machine Learning with Spark �������������������������������������������������������������������������������������������������������������108 Adding Machine Learning to Our Architecture ������������������������������������������������������������������������������������108 Adding Machine Learning to Our Architecture �������������������������������������������������������������112 Enriching the Clickstream Data ����������������������������������������������������������������������������������������������������������112 Labelizing the Data �����������������������������������������������������������������������������������������������������������������������������117 Training and Making Prediction ����������������������������������������������������������������������������������������������������������119 Summary ����������������������������������������������������������������������������������������������������������������������121 ■ Chapter 7: Governance Considerations �������������������������������������������������������������123 Dockerizing the Architecture ����������������������������������������������������������������������������������������123 Introducing Docker �����������������������������������������������������������������������������������������������������������������������������123 Installing Docker ���������������������������������������������������������������������������������������������������������������������������������125 Creating Your Docker Images �������������������������������������������������������������������������������������������������������������125 Composing the Architecture ���������������������������������������������������������������������������������������������������������������128 Architecture Scalability ������������������������������������������������������������������������������������������������132 Sizing and Scaling the Architecture ����������������������������������������������������������������������������������������������������132 Monitoring the Infrastructure Using the Elastic Stack ������������������������������������������������������������������������135 Considering Security ��������������������������������������������������������������������������������������������������������������������������136 Summary ����������������������������������������������������������������������������������������������������������������������137 Index ���������������������������������������������������������������������������������������������������������������������139 x www.it-ebooks.info About the Author Bahaaldine Azarmi, Baha for short, is a Solutions Architect at Elastic. Prior to this position, Baha co-founded reachfive, a marketing data- platform focused on user behavior and social analytics. Baha has also worked for different software vendors such as Talend and Oracle, where he has held positions such as Solutions Architect and Architect. Baha is based in Paris and has a master’s degree in computer science from Polyech’Paris. You can find him at linkedin.com/in/bahaaldine. xi www.it-ebooks.info

Description:
This book highlights the different types of data architecture and illustrates the many possibilities hidden behind the term "Big Data", from the usage of No-SQL databases to the deployment of stream analytics architecture, machine learning, and governance. Scalable Big Data Architecture covers real-
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.