[ANN] copernic v0.0.0

30 views
Skip to first unread message

Amirouche Boubekki

unread,
Feb 17, 2020, 5:13:38 PM2/17/20
to Django users
I am very pleased to announce that I will work on porting my work on a versioned database (read: scalable wikidata) to Python and Django.

If you want to know more and follow the development watch this: https://github.com/amirouche/copernic



Cheers,


Amirouche ~ https://hyper.dev

Amirouche Boubekki

unread,
Feb 19, 2020, 5:11:09 PM2/19/20
to Django users


On Monday, February 17, 2020 at 11:13:38 PM UTC+1, Amirouche Boubekki wrote:
I am very pleased to announce that I will work on porting my work on a versioned database (read: scalable wikidata) to Python and Django.

If you want to know more and follow the development watch this: https://github.com/amirouche/copernic


I put together the basic building blocks: generic tuple store and the versioned generic tuple store. The tests pass, however the absence of proof, is not the proof of the absence, so there might be bugs. Anyway, I added two issues:

- How to convert wordnet rdf into the format that will be accepted by copernic: https://github.com/amirouche/copernic/issues/11

- Another one about more about how the versioned and change request happen: https://github.com/amirouche/copernic/issues/10

It is still no possible to add changes from the web ui, but here is some screenshot: https://functional.cafe/@zig/103686859595640820

This project has the power the change the "Quatery industry" also known as the knowledge industry.  The gist of the idea I want to demonstrate is how to apply the pull-request mechanic on any structured data.  That idea, is applied directly to the creation and maintenance of a knowledge base, but it could be applied on most or any B2B or B2C products.

The installation on at least on ubuntu 18.04, is straight forward, follow the instructions at: https://www.foundationdb.org/download/#ubuntu

Then pip install -r requirements.txt

And the rest is usual django stuff. I recommend you read nstore.py and vnstore.py. The UI is defined in frontend app.

Happy hacking!

Amirouche Boubekki

unread,
Feb 23, 2020, 8:52:14 AM2/23/20
to Django users
I am pleased to announce the immediate availability of copernic v0.1.1.

This project wants to be a scalable application that support a change-request
mechanic similar to github pull-request or gitlab merge-request, on any
structured data.  That includes relational data, graph-like data and tabular
data.  Eventually, it should scale both in terms of data size and number of
contributions.

Like wikipedia or wikidata, there is a single version of truth. In other words,
every user gets the same data, there is no micro per user data repositories.

Change-request work in a way that similar to git stash, that is the diff, additions
and deletions, is stored in the database like the rest of the data.  Until the change
is applied by a super user, the data part of the change-request is invisible outside
the change request.

Once a super user applies the change, that is merely swapping a single `None`
value with a timestamp, the history is properly serialized realizing a single
branch history.

It it possible to do time traveling queries, like freebase did. It is not exposed in
the web user interface.

There is always an up-to-date image of the latest data, to speed up queries.
But the history only store the differences between successive versions.


A demo is available at: http://copernic.space/about/

The license is AGPLv3+
Reply all
Reply to author
Forward
0 new messages