About This Book
- Process high-volume log files in real time while learning the fundamentals of Storm topologies and system deployment.
- Deploy Storm on Hadoop (YARN) and understand how the systems complement each other for online advertising and trade processing.
- Follow along as each chapter presents a new problem and the architectural pattern, design, and implementation of a solution.
Who This Book Is For
Although the book focuses primarily on Java development with Storm, the patterns are more broadly applicable and the tips, techniques, and approaches described in the book apply to architects, developers, and operations.
Additionally, the book should provoke and inspire applications of distributed computing to other industries and domains. Hadoop enthusiasts will also find this book a good introduction to Storm, providing a potential migration path from batch processing to the world of real-time analytics.
What You Will Learn
- Learn the fundamentals of Storm
- Install and configure storm in pseudo-distributed and fully-distributed mode
- Familiarize yourself with the fundamentals of Trident and distributed state
- Design patterns for data flows in a distributed system
- Create integration patterns for persistence mechanisms such as Titan
- Deploy and run Storm clusters by leveraging YARN
- Achieve continuous availability and fault tolerance through distributed storage
- Recognize centralized logging mechanisms and processing
- Implement polyglot persistence and distributed transactions
- Calculate the effectiveness of a campaign using click-through analysis
In Detail
Storm is the most popular framework for real-time stream processing. Storm provides the fundamental primitives and guarantees required for fault-tolerant distributed computing in high-volume, mission critical applications. It is both an integration technology as well as a data flow and control mechanism, making it the core of many big data platforms. Storm is essential if you want to deploy, operate, and develop data processing flows capable of processing billions of transactions.
"Storm: Distributed Real-time Computation Blueprints" covers a broad range of distributed computing topics, including not only design and integration patterns, but also domains and applications to which the technology is immediately useful and commonly applied. This book introduces you to Storm using real-world examples, beginning with simple Storm topologies. The examples increase in complexity, introducing advanced Storm concepts as well as more sophisticated approaches to deployment and operational concerns.
This book covers the domains of real-time log processing, sensor data analysis, collective and artificial intelligence, financial market analysis, Natural Language Processing (NLP), graph analysis, polyglot persistence and online advertising. While exploring distributed computing applications in each of those domains, the book covers advanced Storm topics such as Trident and Distributed State, as well as integration patterns for Druid and Titan. Simultaneously, the book also describes the deployment of Storm to YARN and the Amazon infrastructure, as well as other key operational concerns such as centralized logging.
By the end of the book, you will have gained an understanding of the fundamentals of Storm and Trident and be able to identify and apply those fundamentals to any suitable problem.