Changes

Jump to: navigation, search

Wormhole

4 bytes removed, 14:01, 29 January 2014
no edit summary
<div style="float:right;background-color:#fff;padding:20px;">[[Image:Moz blackhole.png]]</div>
== Intro ==
Project BlackholeWormhole (previously known as Wormhole), is a collaborative effort to develop and maintain an infrastructure of gathering and serving raw contribution data within Mozilla.
Over the many years of contributions in Mozilla we have not been able to get a holistic view of contribution data to do contribution analysis, metrics and de-duplicate our contribution systems (Bugzilla, SUMO, AMO, MDN, hg, Reps etc)
Project Blackhole Wormhole makes sure to integrate with those systems, get the contribution data from all different functional areas and store them as raw data, which then in turn become available for querying.
== Overview ==
Blackhole Wormhole data architecture and flow can be outlined in the following diagram:
[[File:Blackhole 2 1.png]]
In brief, there's a central database into which unrelated systems push data describing contributions. This data can be queried very broadly (eg. show me contributions by a certain user; show me contributions made during a certain period; show me a certain type of contribution), as well as with very deeply (eg. show me Bugzilla triage contributions for the Firefox product). All data stored has a small amount of commonality, describing where it came from, who contributed, when they did it, and how to find the original contribution. Further information available varies per type of contribution, so Blackhole Wormhole users can query specifically for it if they're interested.
In depth, the preferable push infrastructure is built on [http://pulse.mozilla.org/ pulse]. A system accepting user contributions sends a pulse message when a contribution is made, with as much detail as is required to give the contribution context. A Blackhole Wormhole pulse consumer observes the message, and stores the contribution data in the database with very little processing. A frontend for the database allows complex queries to be executed via a RESTful web interface, allowing consumers to build tools that integrate with Blackhole Wormhole by performing on-demand lookups.
== Roadmap ==
</ul>
</li>
<li>Assuming viability, find a permanent home for Blackhole Wormhole and associated infrastructure</li>
<li>Build pushing infrastructure for remaining automated systems</li>
<li>Build tools to help less-automated teams/areas/communities hook in</li>
== Documentation ==
Database schema: [[BlackholeWormhole/Schema]]
Play around with the data live (wget/curl required for JSON output; default XML results often break in browsers): [http://tranquil-plateau-4519.herokuapp.com/contributions/ contributions] and [http://tranquil-plateau-4519.herokuapp.com/entrypoints/ entrypoints]
Canmove, confirm, emeritus
1,783
edits

Navigation menu