A curated list of examples that use Pachyderm.
For Informational Purposes ONLY. Those examples might not be production-ready.
OpenCV Edge Detection
This example does edge detection using OpenCV. This is our canonical starter demo. If you haven't used Pachyderm before, start here. We'll get you started running Pachyderm locally in just a few minutes and processing sample log lines.
Word Count (Map/Reduce)
Word count is basically the "hello world" of distributed computation. This example is great for benchmarking in distributed deployments on large swaths of text data.
Periodic Ingress from a Database
This example pipeline executes a query periodically against a MongoDB database outside of Pachyderm. The results of the query are stored in a corresponding output repository. This repository could be used to drive additional pipeline stages periodically based on the results of the query.
Periodic Ingress from MongoDB
Lazy Shuffle pipeline
This example demonstrates how lazy shuffle pipeline i.e. a pipeline that shuffles, combines files without downloading/uploading can be created. These types of pipelines are useful for intermediate processing step that aggregates or rearranges data from one or many sources.
Lazy Shuffle pipeline
Variant Calling and Joint Genotyping with GATK
This example illustrates the use of GATK in Pachyderm for Germline variant calling and joint genotyping. Each stage of this GATK best practice pipeline can be scaled individually and is automatically triggered as data flows into the top of the pipeline. The example follows this tutorial from GATK, which includes more details about the various stages.
GATK - Variant Calling
This section lists all the examples that you can run with various Pachyderm pipelines and special features, such as transactions.
Inner and Outer Joins Input
A join is a special type of pipeline that enables you to perform data operations on files with a specific naming pattern.
Inner and Outer joins 101 - A simplified retail use case
A group is a special type of pipeline input that enables you to aggregate files that reside in one or separate Pachyderm repositories and match a particular naming pattern.
Group 101 - An Introductory example
A spout is a special type of pipeline that you can use to ingest streaming data and perform such operations as sorting, filtering, and other.
We have released a new spouts 2.0 implementation in Pachyderm 1.12. Please take a look at our examples:
The following examples are based on our previous version of spout. That implementation is now deprecated. Those examples will be adapted to spout 2.0 shortly.
Pachyderm transactions enable you to execute multiple Pachyderm operations simultaneously.
Use Transactions with Hyperparameter Tuning
err_cmd parameter in a Pachyderm pipeline enables you to specified actions for failed datums. When you do not need all the datums to be successful for each run of your pipeline, you can configure this parameter to skip them and mark the job run as successful.
Skip Failed Datums in Your Pipeline
Iris flower classification with R, Python, or Julia
The "hello world" of machine learning implemented in Pachyderm. You can deploy this pipeline using R, Python, or Julia components, where the pipeline includes the training of a SVM, LDA, Decision Tree, or Random Forest model and the subsequent utilization of that model to perform inferences.
R, Python, or Julia - Iris flower classification
Sentiment analysis with Neon
This example implements the machine learning template pipeline discussed in this blog post. It trains and utilizes a neural network (implemented in Python using Nervana Neon) to infer the sentiment of movie reviews based on data from IMDB.
Neon - Sentiment Analysis
pix2pix with TensorFlow
If you haven't seen pix2pix, check out this great demo. In this example, we implement the training and image translation of the pix2pix model in Pachyderm, so you can generate cat images from edge drawings, day time photos from night time photos, etc.
TensorFlow - pix2pix
Recurrent Neural Network with Tensorflow
Based on this Tensorflow example, this pipeline generates a new Game of Thrones script using a model trained on existing Game of Thrones scripts.
Tensorflow - Recurrent Neural Network
Distributed Hyperparameter Tuning
This example demonstrates how you can evaluate a model or function in a distributed manner on multiple sets of parameters. In this particular case, we will evaluate many machine learning models, each configured uses different sets of parameters (aka hyperparameters), and we will output only the best performing model or models.
This example demonstrates integration of Spark with Pachyderm by launching a Spark job on an existing cluster from within a Pachyderm Job. The job uses configuration info that is versioned within Pachyderm, and stores it's reduced result back into a Pachyderm output repo, maintaining full provenance and version history within Pachyderm, while taking advantage of Spark for computation.
Integration with Pachyderm
Last update: November 1, 2021