没有合适的资源?快使用搜索试试~ 我知道了~
首页实时数据分析:Storm与Cassandra实战
"《Real-time Analytics with Storm and Cassandra》是一本深入探讨实时数据分析与高可用性的书籍,由Shilpi Saxena撰写。本书主要聚焦于使用Apache Storm进行实时数据处理和利用Cassandra实现应用程序的零停机运行。" 在书中,作者首先介绍了Storm的基本概念及其组件,包括如何设置Storm环境,以便在本地和分布式模式下执行Storm拓扑。接着,读者将学习到Storm与Zookeeper的配置、Storm UI的使用,以及如何部署和监控Storm集群。随着内容的深入,书本引入了NoSQL持久化,指导读者如何建立Cassandra集群,并遵循最佳实践来构建Storm和Cassandra应用。 进一步地,书中通过实例讲解Cassandra的数据分区、一致性哈希,以及高可用性和复制机制,帮助读者理解如何确保Cassandra系统的稳定性和数据一致性。在管理和维护方面,不仅讨论了Cassandra的管理策略,还涵盖了Storm的运维技巧,如故障转移和集群管理。 此外,书中还涵盖了Storm的高级概念,如分布式缓存和复杂事件处理(CEP),这些技术能够提升实时分析的效率和灵活性。每一章都旨在解决实际的实时分析问题,提供实用的解决方案。 通过阅读这本书,读者将能够有效地运用Storm和Cassandra解决实时分析问题,掌握这两个工具的集成与优化,从而构建出强大且可靠的实时数据分析系统。无论是对初学者还是有经验的开发者,这都是一份宝贵的参考资料。
资源详情
资源推荐
[ vii ]
Preface
Storm, initially a project from the house of Twitter, has graduated to the league of
Apache and thus rechristened from Twitter Storm. It is the brainchild of Nathan
Marz that's now adopted by leagues of Cloudera's Distribution Including Apache
Hadoop (CDH) and the Hortonworks Data Platform (HDP), and so on.
Apache Storm is a highly scalable, distributed, fast, and reliable real-time computing
system designed to process very high velocity data. Cassandra complements the
computing capability by providing lightning-fast read and writes, and this is the
best combination currently available for data storage with Storm.
The combination of the Storm computing and Cassandra storage is helping
technology evangelists to solve various business problems involving complex
and high data volume situations such as real-time customer service, dashboards,
security, sensor data analysis, data monetization, and so on.
This book will equip users with the capability to harness the processing power
of Storm in combination with the speed and reliability of Cassandra to develop
production-grade enterprise solutions on real-time use cases.
What this book covers
Chapter 1, Let's Understand Storm, gets you acquainted with the problems that need
distributed computing solutions. It will take you through the journey of Storm and
its advent.
Chapter 2, Getting Started with Your First Topology, teaches you to set up the developer's
environment—sandbox and execute some of the code samples.
Chapter 3, Understanding Storm Internals by Examples, teaches you how to prepare
Storm spouts and custom spouts. You will understand various kinds of groupings
provided by Storm and their application to practical problems.
Preface
[ viii ]
Chapter 4, Storm in a Clustered Mode, teaches you how to set up a multi-node Storm
cluster to get the user acquainted with the distributed Storm setup and its components.
This chapter will also get your acquainted with the Storm UI and various monitoring
tools for Storm.
Chapter 5, Storm High Availability and Failover, conjugates the Storm topology with the
RabbitMQ broker service and explores the high availability and failover scenarios of
Storm with the help of various practical examples.
Chapter 6, Adding NoSQL Persistence to Storm, introduces you to Cassandra and
explores various wrapper API's available to work with Cassandra. We will use
the Hector API to connect Storm and Cassandra.
Chapter 7, Cassandra Partitioning, High Availability, and Consistency, walks you
through the Cassandra internals. You will understand and apply the concepts of
high availability, hinted handoff, and eventual consistency in context to Cassandra.
Chapter 8, Cassandra Management and Maintenance, gets you acquainted with the
management aspects of Cassandra, such as scaling the cluster, node replacement,
and so on, thus equipping you with all the experience required to handle real-life
situations with Cassandra.
Chapter 9, Storm Management and Maintenance, gets you acquainted with the
management aspects of Storm, such as scaling the cluster, setting up parallelism,
and troubleshooting Storm.
Chapter 10, Advance Concepts in Storm, gives you an understanding of the Trident
API. You will be building the Trident API with certain examples and illustrations
around Trident.
Chapter 11, Distributed Cache and CEP with Storm, gets you acquainted with distributed
cache, its need, and applicability to solve real-life use cases with Storm. It will also
educate you about Esper as a CEP in combination with Storm.
Appendix, Quiz Answers, contains all the answers to the questions of the true or false
statements and the ll in the blanks section.
Bonus Chapter, Using Storm and Cassandra for Real Life Use Cases, explains a few
real-life use cases and blueprints to solve these cases using the technologies such as
Storm and Cassandra. This chapter can be found online at https://www.packtpub.
com/sites/default/files/downloads/Bonus_Chapter.pdf.
Preface
[ ix ]
What you need for this book
For this book, you will require a Linux/Ubuntu OS, Eclipse, and 8 GB of RAM. The
steps to set up other components such as Storm, RabbitMQ, Cassandra, memcache,
Esper, and so on are covered in chapters corresponding to the said topics.
Who this book is for
This book is intended for Java developers who wish to get started on near real-
time analytics track using Storm. This will serve as an expert's guide to developing
highly available and scalable solutions to complex real-time problems. Apart from
development, this book also covers the management and maintenance aspects of Storm
and Cassandra, which is a mandatory requirement for productionizing any solution.
Conventions
In this book, you will nd a number of styles of text that distinguish between
different kinds of information. Here are some examples of these styles, and an
explanation of their meaning.
Code words in text, database table names, folder names, lenames, le extensions,
pathnames, dummy URLs, user input, and Twitter handles are shown as follows:
"The NumWorker conguration or TOPOLOGY_WORKERS conguration dened in Storm."
A block of code is set as follows:
// instantiates the new builder object
TopologyBuilder builder = new TopologyBuilder();
// Adds a new spout of type "RandomSentenceSpout" with a
parallelism hint of 5
builder.setSpout("spout", new RandomSentenceSpout(), 5);
When we wish to draw your attention to a particular part of a code block, the relevant
lines or items are highlighted:
public void execute(Tuple tuple) {
String sentence = tuple.getString(0);
for(String word: sentence.split(" ")) {
_collector.emit(tuple, new Values(word)); //1
}
_collector.ack(tuple); //2
}
Preface
[ x ]
public void declareOutputFields(OutputFieldsDeclarer
declarer) {
declarer.declare(new Fields("word")); //3
}
}
Any command-line input or output is written as follows:
sudo apt-get -qy install rabbitmq-server
New terms and important words are shown in bold. Words that you see on
the screen, in menus or dialog boxes for example, appear in the text like this:
" Go to the Admin tab and select Policies and click on Add policy".
Warnings or important notes appear in a box like this.
Tips and tricks appear like this.
Reader feedback
Feedback from our readers is always welcome. Let us know what you think about
this book—what you liked or may have disliked. Reader feedback is important for
us to develop titles that you really get the most out of.
To send us general feedback, simply send an e-mail to feedback@packtpub.com,
and mention the book title via the subject of your message.
If there is a topic that you have expertise in and you are interested in either writing
or contributing to a book, see our author guide on www.packtpub.com/authors.
Customer support
Now that you are the proud owner of a Packt book, we have a number of things to
help you to get the most from your purchase.
Preface
[ xi ]
Downloading the example code
You can download the example code les for all Packt books you have purchased
from your account at http://www.packtpub.com. If you purchased this book
elsewhere, you can visit http://www.packtpub.com/support and register to
have the les e-mailed directly to you.
Errata
Although we have taken every care to ensure the accuracy of our content, mistakes
do happen. If you nd a mistake in one of our books—maybe a mistake in the text or
the code—we would be grateful if you would report this to us. By doing so, you can
save other readers from frustration and help us improve subsequent versions of this
book. If you nd any errata, please report them by visiting http://www.packtpub.
com/submit-errata, selecting your book, clicking on the errata submission form link,
and entering the details of your errata. Once your errata are veried, your submission
will be accepted and the errata will be uploaded on our website, or added to any list of
existing errata, under the Errata section of that title. Any existing errata can be viewed
by selecting your title from http://www.packtpub.com/support.
Piracy
Piracy of copyright material on the Internet is an ongoing problem across all media.
At Packt, we take the protection of our copyright and licenses very seriously. If you
come across any illegal copies of our works, in any form, on the Internet, please
provide us with the location address or website name immediately so that we can
pursue a remedy.
Please contact us at copyright@packtpub.com with a link to the suspected
pirated material.
We appreciate your help in protecting our authors, and our ability to bring you
valuable content.
Questions
You can contact us at questions@packtpub.com if you are having a problem with
any aspect of the book, and we will do our best to address it.
剩余219页未读,继续阅读
ramissue
- 粉丝: 354
- 资源: 1487
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 十种常见电感线圈电感量计算公式详解
- 军用车辆:CAN总线的集成与优势
- CAN总线在汽车智能换档系统中的作用与实现
- CAN总线数据超载问题及解决策略
- 汽车车身系统CAN总线设计与应用
- SAP企业需求深度剖析:财务会计与供应链的关键流程与改进策略
- CAN总线在发动机电控系统中的通信设计实践
- Spring与iBATIS整合:快速开发与比较分析
- CAN总线驱动的整车管理系统硬件设计详解
- CAN总线通讯智能节点设计与实现
- DSP实现电动汽车CAN总线通讯技术
- CAN协议网关设计:自动位速率检测与互连
- Xcode免证书调试iPad程序开发指南
- 分布式数据库查询优化算法探讨
- Win7安装VC++6.0完全指南:解决兼容性与Office冲突
- MFC实现学生信息管理系统:登录与数据库操作
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功