Application of complex business logic. With the computational scripts specially designed for big data, users can easily achieve the complex computational goal that is not so easy to solve with the MapReduce. esProc scripts are of the grid style with support for the step-by-step computation. Needless to define the variable name, esProc users can reference to any cell with the cell name straightforwardly, monitor the intermediate computation in every single step, and decompose a complex computational goal into several simple computational steps. esProc supports the dataset data, disassociated record, ordered set, object reference, and grouping. In addition to the advantages in algorithm implementation, esProc also enables users to complete all these actions in a single script: receiving external parameters, decomposing tasks, dynamically specifying the parallel node, and summarizing the computed result. For those complex associative computations which are difficult for MapReduce, esProc can solve them with ease. Though built with an outstanding software structure, MapReduce is less specialized than SQL/SP because the former one relies on Java to implement the details of data computation.
Big Data application. esProc is capable of computing over several TBs of data from databases or HDFS files easily. With the parallel computational frame, massive data can be allocated to multiple computing nodes equally. Each node only needs to undertake a small amount of computation. esProc supports the distributed computation at multiple levels. Each node can act as either the main node for allocating and summarizing, or the sub node for computation in details. The node machine can be the high-end server or inexpensive PC of the Windows client or Linux server.
Application of huge computational workload. The parallel frame of esProc is also ideal for the application of CPU-intensive computation. This frame allows for decomposing one computation task into several components, and allocating them to multiple computers equally. The computational pressure on each node would be relatively less and the overall performance improved greatly. In the past, the computational capability of great workload is subject to the high-end database server/cluster. At present, users can have the same performance with the normal PC and desktop CPU, not having to replenish the expensive database hardware and software.
Application of great concurrency. esProc is also ideal for the Web and report applications which are characterized with the great concurrency. The data volume and computational workload of such applications are normal. But the connection requests for computation are huge and intensive. The parallel computation frame of esProc is very flexible. The task assignment can be controlled dynamically with the external parameters. In this way, the requests of great concurrency can be allocated to every computational node equally. In order to handle the climbing concurrent requests, organizations are pressed to expand IT resources as their sizes grow. esProc enables organizations to achieve the seamless expansion by simply modifying the parameters (file is allowed), needless to alter the computational script.
Multi-data-source application. esProc supports the computations over data from multiple data sources, including various structural data, non-structural data, database data, local files, the big data file in HDFS and distributed database. Since the uniform JDBC interface is available to the upper application, esProc can build the easy-to-use hybrid database with the data source. In the past, the multi-data-source computing requires the high-end reporting tools, hard-to-maintain ETL, and expensive data warehouse. esProc greatly reduces the couplings between big data and traditional database, and removes the single-source report restriction. In addition, esProc also empowers the Java application to confront the increasingly complex big data environment.
The current IT development brings about the explosive growth of data, computation, and concurrency. The data environment is getting more complex and the computational goal is becoming even more challenging. esProc empowers its users with the powerful computing and convenient scripting to develop the modern big data application easily.