The benefits of the HPCC platform can be understood by two words: Speed and Scale.
- Highly optimized language and compiler – In the world of cluster computing, speed is really just the antithesis of cost; you can always go faster by buying more and bigger machines. However, on identical hardware, an HPCC Systems solution will go faster. This is not by chance; the HPCC Systems platform features a highly optimized language and compiler. Whether you use this speed to process more data, process data faster or save money is obviously your choice.
- Easy to develop data-centric language – It is one thing to have code execute rapidly; but how long does it take to develop? Many high performance solutions require highly specialized systems-level coding. This is particularly unfortunate in the world of data analytics because data analysts are not usually systems-level programmers. The HPCC features a data-centric language, ECL, that has been designed to make data programmers highly productive. Better yet the language optimizer is designed to produce excellent results from the code produced by data programmers.
- Highly productive integrated development environment (IDE) – No matter how productive a given programmer may be, the ultimate in rapid development requires multiple programmers working in a team and even multiple teams. Again any system can achieve this provided cost is not an issue; however the goal is to be able to add resources to a task and have productivity rise proportionately. ECL, the language of the HPCC, is designed to get as close to this nirvana as possible. In fact the highly modular nature of ECL, coupled with the strong support for code leverage can make teams even more productive than the sum of the parts through functional specialization. Learn more about ECL.
- Enterprise-class support – All of the foregoing highlight the speed and scale at which your organization is able to operate using the HPCC platform; however for those that have draconian ‘speed to market’ or ‘problem resolution’ requirements, the initial learning curve of deploying a new solution may be prohibitive. Here it becomes important that the HPCC platform is not just a platform; it is a platform with an organization behind it. From the creators of the system, professionals with a decade of platform experience through to skilled trainers and customer facing consultants that have deployed the HPCC plaform to solve real-world problems, we have the people and services to get solutions deployed rapidly.
- Runs on commodity hardware – It is always possible to scale up; the issue is the degree of complexity introduced by scaling. The HPCC platform is designed to work on simple commodity hardware using a simple commodity operating system where each node is treated uniformly. In typical installations all nodes boot from the same image. This allows large installations to be managed with marginal incremental cost.
- Inbuilt auditing, monitoring and workflow – Executing one program quickly is a fairly difficult task; executing hundreds or thousands of applications optimally over a period of weeks, months or years is much harder. The HPCC platform and ECL language are designed to run all of the data processes for the entire enterprise. Job monitoring, process auditing and workflow is not just available - it is integral to the system and the language. Furthermore, the system is designed to optimize and share resources throughout all the tasks that must execute.
Battle tested – With any tool that offers low cost, high productivity and amazing performance the question is always: "when do we hit the wall and at what point does a data process become so complex that the system is no longer able to compute the result?"
The HPCC platform is not new. It has been in use for over a decade in critical production environments; the wall has been touched a good number of times and each time it has been pushed back. For many groups starting with the HPCC platform today it is unlikely the wall will be hit. Gain a good understanding of the types of things HPCC Systems has been used for in our Introduction to HPCC whitepaper.
The HPCC platform is designed to be extended; we have the support options and custom coding services available to move the wall if needed.
Get a far more detailed explanation of the platform design goals and a comparison to more recent and emerging competitors such as Hadoop in our comparison chart.