PyHPCC is a Python package and wrapper built around the HPCC Systems web services that facilitate communication between Python and HPCC Systems.
Some core functionalities PyHPCC supports are
- Work Unit submission through inline queries or using a Git Repository.
- Reading contents from a Logical file.
- Uploading/Downloading files to a landing zone
- Spray fixed and variable files
- Making Roxie calls.
To use PyHPCC, you need these the following installed on your system
- Python3
- ECL Client Tools: Select your operating systems to download client tools
Before you install PyHPCC, please make sure you have ECL client tools installed on your machine. The method for installing client tools varies on Windows and Linux systems.
Installing ECL IDE on a Windows machine installs ECL Client Tools by default--it need not be installed separately. The path to the Client Tools needs to be added to the Windows Environment Variables:
- On the Windows search bar, type environment variables and select Edit the system environment variables.
- In the resulting window, click the Environment Variables... button at the bottom.
- Under the System variables block, double-click on the Path variable.
- Add the Client Tools path under the Path variable. The path looks like this:
C:\Program Files\HPCCSystems\<version>\clienttools\bin.
- Open a Command Prompt window, and type
ecl --version
to test if ECL Client Tools are accessible through the command line.
NOTE: if you had a Command Prompt or VS Code window open while editing the Environment Variables, you must re-open the window to allow the new changes to be picked up.
The ECL Client Tools must be installed separately on Linux machines from the HPCC System's Download webpage. Select a version of your choice.
Download ECL Client Tools onto the Ubuntu machine. Then, run the following commands on a shell or bash window:
apt-get update -y
apt-get -f install
Download ECL Client Tools onto the CentOS machine. Then, run the following commands on a shell or bash window:
yum clean all
rm -rf /var/cache/yum
yum -y install hpcc_clienttools_<version>_centos.rpm
Download the latest stable build for PyHPCC
from releases in GitHub.
pip install pyhpcc-<version>.tar.gz
#or
pip install pyhpcc-<version>-py3-none-any.whl
See the following example to compile and run a work unit to output Hello World
using inline queries with PyHPCC.
If you would like more examples, please check the examples folder.
Contributions to PyHPCC are welcomed and encouraged.
Please have a look at CONTRIBUTING.md for specific contribution guidelines.
This project is licensed under Apache License 2.0