{"id":395,"date":"2022-02-25T13:45:55","date_gmt":"2022-02-25T13:45:55","guid":{"rendered":"https:\/\/blog.mozilla.org\/data\/?p=395"},"modified":"2022-02-25T13:45:55","modified_gmt":"2022-02-25T13:45:55","slug":"this-week-in-glean-your-personal-glean-data-pipeline","status":"publish","type":"post","link":"https:\/\/blog.mozilla.org\/data\/2022\/02\/25\/this-week-in-glean-your-personal-glean-data-pipeline\/","title":{"rendered":"This Week in Glean: Your personal Glean data pipeline"},"content":{"rendered":"<p>(\u201cThis Week in Glean\u201d is a series of blog posts that the Glean Team at Mozilla is using to try to communicate better about our work. They could be release notes, documentation, hopes, dreams, or whatever: so long as it is inspired by Glean.) All \u201cThis Week in Glean\u201d blog posts are listed in the <a href=\"https:\/\/mozilla.github.io\/glean\/book\/appendix\/twig.html\">TWiG index<\/a> (and on the <a href=\"https:\/\/blog.mozilla.org\/data\/category\/glean\/\">Mozilla Data blog<\/a>).<\/p>\n<hr \/>\n<p>On February 11th, 2022 we hosted a Data Club Lightning Talk session. There I presented my small side project of setting up a minimal data pipeline &amp; data storage for Glean.<\/p>\n<p>The premise:<\/p>\n<blockquote>\n<p>Can I build and run a small pipeline &amp; data server to collect telemetry data from my own usage of tools?<\/p>\n<\/blockquote>\n<p>To which I can now answer: Yes, it\u2019s possible. The complete ingestion server is a couple hundred lines of Rust code. It\u2019s able to receive pings conforming to the Glean ping schema, transform them and store it into an SQLite database. It\u2019s very robust, not crashing once on me (except when I created an infinite loop within it).<\/p>\n<p>You can watch the lightning talk here:<\/p>\n<p><\/p>\n<p><iframe loading=\"lazy\" width=\"800\" height=\"450\" src=\"https:\/\/www.youtube.com\/embed\/V5FgVbxm-cc\" title=\"YouTube video player\" frameborder=\"0\" allow=\"picture-in-picture\" allowfullscreen><br \/>\n<\/iframe><\/p>\n<p>Instead of creating some slides for the talk I created an interactive report. The full report <a href=\"https:\/\/data.fnordig.de\/glean\/report.html\">can be read online<\/a>.<\/p>\n<p>Besides actually writing a small pipeline server this was also an experiment in trying out <a href=\"https:\/\/irydium.dev\/\">Irydium<\/a> and <a href=\"https:\/\/datasette.io\/\">Datasette<\/a> to produce an interactive &amp; live-updated data report.<\/p>\n<p>Irydium is a set of tooling designed to allow people to create interactive documents using web technologies, started by <a href=\"https:\/\/twitter.com\/wrlach\">wlach<\/a> a while back. Datasette is an open source multi-tool for exploring and publishing data, created and maintained by <a href=\"https:\/\/twitter.com\/simonw\">simonw<\/a>. Combining both makes for a nice experience, even though there\u2019s still some things that could be simplified.<\/p>\n<p>My pipeline server is currently not open source. I might publish it as an example at a later point.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>(\u201cThis Week in Glean\u201d is a series of blog posts that the Glean Team at Mozilla is using to try to communicate better about our work. They could be release &hellip; <a class=\"go\" href=\"https:\/\/blog.mozilla.org\/data\/2022\/02\/25\/this-week-in-glean-your-personal-glean-data-pipeline\/\">Read more<\/a><\/p>\n","protected":false},"author":1756,"featured_media":197,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[448297],"tags":[525,448297,3969],"coauthors":[],"_links":{"self":[{"href":"https:\/\/blog.mozilla.org\/data\/wp-json\/wp\/v2\/posts\/395"}],"collection":[{"href":"https:\/\/blog.mozilla.org\/data\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.mozilla.org\/data\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.mozilla.org\/data\/wp-json\/wp\/v2\/users\/1756"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.mozilla.org\/data\/wp-json\/wp\/v2\/comments?post=395"}],"version-history":[{"count":0,"href":"https:\/\/blog.mozilla.org\/data\/wp-json\/wp\/v2\/posts\/395\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.mozilla.org\/data\/wp-json\/wp\/v2\/media\/197"}],"wp:attachment":[{"href":"https:\/\/blog.mozilla.org\/data\/wp-json\/wp\/v2\/media?parent=395"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.mozilla.org\/data\/wp-json\/wp\/v2\/categories?post=395"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.mozilla.org\/data\/wp-json\/wp\/v2\/tags?post=395"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/blog.mozilla.org\/data\/wp-json\/wp\/v2\/coauthors?post=395"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}