Learning ECL

Learn the basics of ECL the powerful programming language built for big data analytics. Then move to advanced ECL topics.

ECL is the Enterprise Control Language designed specifically for huge data projects using the HPCC 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.

View the PDF View HTML

The Standard Library Reference includes utility functions for string handling, date manipulation and others.

View the PDF View HTML

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.

View the PDF

Supporting ECL Files
In ZIP format ECL_Code_Files.zip

 

Comrise, a HPCC Systems partner, has also made available a Chinese translated version of the ECL Programmers Guide (version 4.2.0.3rc).

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, as well as give an introduction to Thor and Roxie. The Sample Data Files are required references for the tutorial.

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

This step by step ECL Programming Example details how to solve the challenge of finding the Six degrees of Separation between any actor and Kevin Bacon.

View the PDF

1The information used for this analysis can be found on www.imdb.com.

 

This guide is a collection of tips and techniques that target the best practices of ECL programming.

View the PDF

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 system 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.

View the PDF

The ECL compiler now supports adding external resources to a Workunit using a manifest file. The manifest, in XML format, adds external resources such as XSLT transformations, or other objects to the archive before it is compiled and deployed to the server. This document demonstrates how to use this feature to visualize ECL job results using Google Chart Tools.

View the PDF

The ECL Scheduler is a component process installed with the HPCC system platform. ECL Scheduling provides a means of automating processes within ECL code or to chain processes together to work in sequence.

View the PDF

These steps explain how to move data on or off an HPCC Cluster.

View the PDF

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.

View the PDF
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.

View HTML