Grakn 2.0 Alpha: Best Practices in Distributed Systems and Computer Science

Grakn is a distributed knowledge graph: a logical database to organize large and complex networks of data as one body of knowledge. Visit grakn.ai to learn more.


When we kicked off 2020, we were so excited to launch Grakn Cosmos, Graknā€™s first global conference, held here in London in the first week of February. It was an intense start to the year, but we learned so much about how our community was using Grakn to solve some of the most complex problems in their industries. We met with our community members from Life Sciences, Defence and Security, Financial Services, Robotics, and many other sectors. From financial analytics to drug discovery, cyber threat detection to robotics disaster recovery, Grakn was being used to tackle a higher order of complexity in data and knowledge, and it inspired all of us at Grakn Labs.

A Guide to SQL Triggers: Setting up Database Tracking in PostgreSQL

I was 12 years old when I first heard about SQL triggers. My brother, Jonathan, had just begun his software career at a startup. Jonathan came home one day frustrated by a database full of convoluted SQL triggers.

With my only programming experience being recreating my favorite video game in VB6, I had little consolation to offer.

Safely Deleting Clones and Images During Database Development and Testing

This is the third article in a series that explains how to use SQL Clone, part of SQL Provision, plus a collection of PowerShell scripts, all with a shared configuration data file to deploy, revert, customize, delete, and refresh clones for database development and testing work.

The first article, Deploying and Reverting Clones for Database Development and Testing, mapped out a Clone installation consisting of a source database, an image, and some clones. It presented a shared configuration data file and then a PowerShell clone installation script that used this config file to create a suite of clones for testing or development work. A second PowerShell script showed how to revert or roll back a clone to its original state, ready for the next set of tests or development work to begin, first ensuring that any changes made since the clone was created were saved to source control.

Deploying and Reverting Clones for Database Development and Testing

SQL Clone is a very handy device for database developers. The main thing stopping me from initially using it more widely was culture shock. It is a new and strange experience to be able to have several local copies of the database I'm developing without worrying about disk space and without having to fuss about keeping them up to date. This means that I can create a series of cloned databases and then migrate each one to a different version without requiring enormous amounts of storage.

Even more of a shock is being able to make radical changes to the data or schema while testing in the knowledge that it takes only a few seconds to revert the database back to its original state, ready for the next test run. I'll show how to use SQL Clone, the database provisioning component of SQL Provision, to achieve all this. With a bit of additional scripting, you can even revert a copy of the database without worrying too much about losing any schema changes by using SQL Compare to compare the altered database with an unadulterated clone and save any changes as scripts in files.