Learning ECL
Learn the basics of ECL the powerful programming language built for big data analytics. Then move to advanced ECL topics.
ECL Language Reference
ECL is the Enterprise Control Language designed specifically for huge data projects using the HPCC Systems platform. Its extreme scalability comes from a design that allows you to leverage every query you create for re-use in subsequent queries as needed. To do this, ECL takes a dictionary approach to building queries wherein each ECL definition defines an Attribute. Each previously defined Attribute can then be used in succeeding ECL Attribute definitions as the language extends itself as you use it.
Release (v 9.8.40-1) | View the PDF | View HTML |
Standard Library Reference
The Standard Library Reference includes utility functions for string handling, date manipulation and others.
Release (v 9.8.40-1) | View the PDF | View HTML |
ECL Tutorials on GitHub
Topics include an Introduction to HPCC Systems, the ECL Programming Language, and ECL for Spark Programmers, as well as a tutorial where you are introduced to an end-to-end coding example.
Link to ECL Training on GitHub
ECL Sandbox
Learn ECL offers interactive tutorials and sample code for mastering ECL, a language for big data processing with HPCC Systems. Ideal for beginners and experts, it covers data handling and analysis, making it a valuable resource for ECL learners.
ECL Cheat Sheet
A simple introduction to ECL — so you can master it with ease.
ECL Programmer’s Guide
The ECL Programmers Guide gives an introduction to the ECL language along with example data and use cases. The supporting ECL Code Files referenced in the guide are included below.
Release (v 9.8.40-1) | View the PDF | View HTML |
Supporting ECL Files | |
In ZIP format | ECL_Code_files.zip |
HPCC Systems Data Tutorial: with an Introduction to Thor and Roxie
This tutorial provides a walk-through of the development process from beginning to end and is designed to be an introduction to working with data on HPCC Systems, as well as give an introduction to Thor and Roxie. The Sample Data Files are required references for the tutorial.
Release (v 9.8.40-1) | View the PDF |
Sample Data File (one from the below needed) | |
In ZIP format | OriginalPerson.zip |
In tar.gz format | OriginalPerson.tar.gz |
Uncompressed | OriginalPerson |
ECL Best Practices
This guide is a collection of tips and techniques that target the best practices of ECL programming.
ECL Playground
ECL Playground is a tool hosted on an ESP server. A page runs in your browser, allowing you to access and execute self-contained ECL code on your HPCC Systems without the use of any other tools. The ECL Playground then shows you the results and the graph in your browser. The view is very similar to what the ECL IDE displays.
Listen to the ECL Playground Podcast and how it can be a helpful tool for developers.
Release (v 9.8.40-1) | View the PDF |
Visualizing ECL Results
This document covers the Visualizer Bundle–an open-source add-on to the HPCC Systems platform to allow you to create visualizations from the results of queries written in ECL.
Visualizations are an important means of conveying information from massive data. A good visual representation can help a human produce actionable analysis. A visually comprehensive representation of the information can help make the obscure more obvious. Pie Charts, Line graphs, Maps, and other visual graphs help us understand the answers found in data queries. Crunching big data is only part of a solution; we must be able to make sense of the data, too. Data visualizations simplify the complex.
The Visualizer bundle extends the HPCC Systems platform’s functionality by allowing you to plot your data onto charts, graphs, and maps to add a visual representation that can be easily understood. In addition, the underlying visualization framework supports advanced features to allow you to combine graphs to make interactive dashboards.
Release (v 9.8.40-1) | View the PDF |
ECL Scheduler
The ECL Scheduler is a component process installed with the HPCC Systems platform. ECL Scheduling provided a means of automating processes within ECL code or to chain processes together to work in sequence.
Release (v 9.8.40-1) | View the PDF |
Data Handling
These steps explain how to move data on or off an HPCC Systems Cluster.
Release (v 9.8.40-1) | View the PDF |
Dynamic ESDL
This manual covers Dynamic ESDL (Enterprise Service Description Language) –a methodology that helps you develop and manage web-based query interfaces quickly and consistently.
Dynamic ESDL takes an interface-first development approach. It leverages the ESDL Language to create a common interface “contract” that both ROXIE Query and Web interface developers will adhere to. It is intended to allow developers to create production web services, with clean interfaces that can evolve and grow over time without breaking existing applications.
Release (v 9.8.40-1) | View the PDF |
ESDL Language Reference
The ESDL Language Reference covers the ESDL (Enterprise Service Description Language) and its syntax. ESDL is a methodology that helps you develop and manage web-based query interfaces quickly and consistently. This goes hand-in-hand with Dynamic ESDL.
Release (v 9.8.40-1) | View the PDF |
Red Book and Community Wiki
The HPCC Systems Community Wiki includes information provided by the community covering best practices, tips, sample code and examples. The HPCC Systems Red Book also contains useful information to help users manage the transition between releases.