- Mastering Apache Storm
- Ankit Jain
- 296字
- 2021-07-02 20:32:26
Features of Storm
The following are some of the features of Storm that make it a perfect solution to process streams of data in real time:
- Fast: Storm has been reported to process up to 1 million tuples/records per second per node.
- Horizontally scalable: Being fast is a necessary feature to build a high volume/velocity data processing platform, but a single node will have an upper limit on the number of events that it can process per second. A node represents a single machine in your setup that executes Storm applications. Storm, being a distributed platform, allows you to add more nodes to your Storm cluster and increase the processing capacity of your application. Also, it is linearly scalable, which means that you can double the processing capacity by doubling the nodes.
- Fault tolerant: Units of work are executed by worker processes in a Storm cluster. When a worker dies, Storm will restart that worker, and if the node on which the worker is running dies, Storm will restart that worker on some other node in the cluster. This feature will be covered in more detail in Chapter 3, Storm Parallelism and Data Partitioning.
- Guaranteed data processing: Storm provides strong guarantees that each message entering a Storm process will be processed at least once. In the event of failures, Storm will replay the lost tuples/records. Also, it can be configured so that each message will be processed only once.
- Easy to operate: Storm is simple to deploy and manage. Once the cluster is deployed, it requires little maintenance.
- Programming language agnostic: Even though the Storm platform runs on Java virtual machine (JVM), the applications that run over it can be written in any programming language that can read and write to standard input and output streams.
推薦閱讀
- Beginning Java Data Structures and Algorithms
- OpenCV實例精解
- Power Up Your PowToon Studio Project
- C/C++算法從菜鳥到達人
- Unity Virtual Reality Projects
- Python金融數據分析
- Lua程序設計(第4版)
- Java性能權威指南(第2版)
- Getting Started with Python Data Analysis
- EPLAN實戰設計
- FFmpeg入門詳解:音視頻原理及應用
- 從Excel到Python:用Python輕松處理Excel數據(第2版)
- Mastering JavaScript Design Patterns(Second Edition)
- Tableau 10 Bootcamp
- 持續輕量級Java EE開發:編寫可測試的代碼