Skip to content

Details

Git is not just a source control system. It's a content tracker we can (ab)use it as a NoSQL database. Git's internal object database allows for deduplicated storage and automatic history tracking, two features that most traditional databases don't support. This talks discusses how to leverage it and what the benefits and possible drawbacks are.

Details

The talk starts out by explaining how you can use the internals to build a layer on top of git so applications can use it as a NoSQL database. We'll dive into blobs, trees and commits and explain their relation and applicability for storing data. Next, we'll look into the benefits this provides us: efficient storage, built-in versioning, rich data tooling, transactions through commits, easy backups and replications with git push. Lastly we'll talk about the drawbacks and possibilities to mitigate them: write speed, querying and concurrency

Pitch

In one of our projects we had a need to version data and the ability to roll back quickly. We also needed to be able to create parallel versions of our data and merge them back together after an approval process. These are requirements that are not unique and we suspect others have encountered them. Our initial attempts at solving this problem ended up in trying to recreate git on top of another database, which led to a lot of complexity. By using git as a database we managed to circumvent a lot of these issues. In doing so, we also encountered issues with using git on a larger scale that don't tend to happen when using it as a source control system. These experiences as well as a thorough discussion of git's internals would be valuable information for attendants.

Bio

http://photos4.meetupstatic.com/photos/event/4/8/7/3/600_458898547.jpeg

I'm a Belgian .NET developer and Microsoft MVP currently living in Spain and working in London. I develop mostly server-side applications but also do front-end development using Angular and Aurelia.

I write a blog at www.kenneth-truyers.net (http://www.kenneth-truyers.net/) about all things development, usually focused around continuous delivery and software development best practices. I published a course on Pluralsight around continuous deployment for .NET applications

¿Dónde?

Liferay nos acoge en sus fantásticas oficinas de Paseo de la Castellana, 280, 28046 Madrid.

Agradecimientos:

Liferay por cedernos sus oficinas y a Jetbrains (https://www.jetbrains.com/)por ayudar a la comunidad para sortear una licencia de sus productos.

Related topics

Sponsors

Microsoft

Microsoft

Comunidad Técnica de Microsoft. Patrocinio del meetup y eventos.

Liferay

Liferay

Catering y espacio para workshops y charlas.

Codemotion

Codemotion

Participamos como comunidad en Codemotion

ENCAMINA

ENCAMINA

Catering y espacio para workshops, charlas y plataforma de streaming

You may also like