In this tutorial, we will understand a little about Snowplow by running it locally. We will explore some examples in JavaScript and Java and, finally, adapt a WhatsApp bot’s code to use Snowplow.
Snowplow is the leader in next-generation customer data infrastructure (CDI), enabling every data-driven organization to own and unlock the value of its customer behavioral data to fuel AI, advanced analytics, and personalized experiences from their central data platform.
Thousands of organizations like Burberry, Strava, and Auto Trader rely on Snowplow to collect, manage, and operationalize real-time event data from their central data platform to uncover deeper customer journey insights, predict customer behaviors, deliver differentiated customer experiences, and detect fraudulent activities.
$ docker run --rm -p 9090:9090 snowplow/snowplow-micro:2.1.2 \
--output-tsv 2> /dev/null | tee data.tsvSee details regarding TSV format (tsv-format). You can convert it to a CSV, if you want.
References: [snowplow-micro]
$ mkdir examples && cd $_
$ git clone https://github.com/snowplow/snowplow-java-tracker.git
$ cd snowplow-java-tracker/examples/simple-console
$ ./gradlew jar
$ java -jar ./build/libs/simple-console-all-0.0.1.jar "http://localhost:9090"References: [snowplow-java-tracker]
$ cd ~/labs/snowplow-tutorial/examples
$ git clone https://github.com/snowplow-incubator/snowplow-javascript-tracker-examples.git
$ cd snowplow-javascript-tracker-examples/react
$ yarn
$ yarn startIn the page http://localhost:3000/, configure the collector endpoint URI to http://localhost:9090.
References: [snowplow-javascript-tracker]
$ docker run \
--env SNOWBRIDGE_CONFIG_FILE="" \
--env ACCEPT_LIMITED_USE_LICENSE=yes \
-i snowplow/snowbridge:2.4.2 \
< data.tsv > output.txtThe generated output adds some keys to the data. See them:
$ for key in PartitionKey TimeCreated TimePulled TimeTransformed
do
echo searching $key ...
grep $key output.txt
read -p 'Press <ENTER>'
doneReferences: [snowbridge]
In this section, we will understand behavioral data through a user’s interaction with a WhatsApp bot. Then, we will modify the bot’s code to use Snowplow.
Here is the bot’s initial code: https://github.com/paulojeronimo/venom-bot1.
- YouTube videos
-
-
https://www.youtube.com/watch?v=zkarYQ63rvM
Oct 24, 2022 - Behavioral Data Creation for AI | Snowplow Co-Founder & CEO Alex Dean -
https://www.youtube.com/watch?v=IsXpyt3hYcA
Mar 19, 2022 - Snowplow: Alex Dean Session at the Open Source Data Stack Conference 2021
-
- Snowplow documents and Git repositories
-
-
-
https://docs.snowplow.io/docs/testing-debugging/snowplow-micro/what-is-micro/
-
https://docs.snowplow.io/docs/testing-debugging/snowplow-micro/basic-usage/
-
https://docs.snowplow.io/docs/testing-debugging/snowplow-micro/ui/
-
https://docs.snowplow.io/docs/understanding-your-pipeline/canonical-event/understanding-the-enriched-tsv-format/ ← tsv-format
-
-