-#+TITLE: Sixth - system for data storage, computation, exploration and interaction
+#+TITLE: Sixth Data - Data storage and computing engine
------
-- This is a subproject of [[http://www2.svjatoslav.eu/gitbrowse/sixth/doc/index.html][Sixth]]
+* (document settings) :noexport:
+** use dark style for TWBS-HTML exporter
+#+HTML_HEAD: <link href="https://bootswatch.com/3/darkly/bootstrap.min.css" rel="stylesheet">
+#+HTML_HEAD: <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+#+HTML_HEAD: <script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.5/js/bootstrap.min.js"></script>
+#+HTML_HEAD: <style type="text/css">
+#+HTML_HEAD: footer {background-color: #111 !important;}
+#+HTML_HEAD: pre {background-color: #111; color: #ccc;}
+#+HTML_HEAD: </style>
-- [[http://www2.svjatoslav.eu/gitweb/?p=sixth-data.git;a=snapshot;h=HEAD;sf=tgz][download latest snapshot]]
+* General
+- This is a subproject of [[http://www3.svjatoslav.eu/projects/sixth/][Sixth]]
-- This program is free software; you can redistribute it and/or modify
- it under the terms of version 3 of the [[https://www.gnu.org/licenses/lgpl.html][GNU Lesser General Public
- License]] or later as published by the Free Software Foundation.
+- This program is free software: you can redistribute it and/or modify
+ it under the terms of the [[https://www.gnu.org/licenses/lgpl.html][GNU Lesser General Public License]] as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
- Program author:
- Svjatoslav Agejenko
- Homepage: http://svjatoslav.eu
- Email: mailto://svjatoslav@svjatoslav.eu
-- [[http://www.svjatoslav.eu/programs.jsp][other applications hosted at svjatoslav.eu]]
+- [[http://www.svjatoslav.eu/projects/][Other software projects hosted at svjatoslav.eu]]
+** Source code
+- [[http://www2.svjatoslav.eu/gitweb/?p=sixth-data.git;a=snapshot;h=HEAD;sf=tgz][Download latest snapshot in TAR GZ format]]
-* (document settings) :noexport:
-** use dark style for TWBS-HTML exporter
-#+HTML_HEAD: <link href="https://bootswatch.com/darkly/bootstrap.min.css" rel="stylesheet">
-#+HTML_HEAD: <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
-#+HTML_HEAD: <script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.1/js/bootstrap.min.js"></script>"
-#+HTML_HEAD: <style type="text/css">
-#+HTML_HEAD: footer {background-color: #111 !important;}
-#+HTML_HEAD: pre {background-color: #111; color: #ccc;}
-#+HTML_HEAD: </style>
+- [[http://www2.svjatoslav.eu/gitweb/?p=sixth-data.git;a=summary][Browse Git repository online]]
+
+- Clone Git repository using command:
+ : git clone http://www2.svjatoslav.eu/git/sixth-data.git
* Vision / goal
:PROPERTIES:
+ Speaking of traditional relational database and object oriented
business applications:
+
+ I hate object-relational impedance mismatch.
+ I don't like to convert data between persistent database and
- runtime objects for every transaction. How about creating united
- database/computation engine instead to:
- + Eliminate constant moving and converting of data between 2 systems.
+ runtime objects for every transaction. How about creating united
+ database/computation engine instead to:
+
+ + Eliminate constant moving and converting of data between 2 systems
+ and make computing happen close to where the data is stored.
+
+ Abstract away difference between RAM VS persistent storage. Let
- the system decide at runtime which data to keep in what kind of
- memory.
+ the system decide at runtime which data to keep in what kind of
+ memory.
* Inspiration
+ Relational databases:
+ [[id:5d287158-53ea-44a2-a754-dd862366066a][Distributed comutation and data storage]]
+ [[id:a117c11e-97c1-4822-88b2-9fc10f96caec][Mapping of hyperspace to traditional object-oriented model]]
+ [[id:b6b15bd2-c78b-4c51-a343-72843a515c29][Handling of relations]]
-
* Ideas
** Distributed computation and data storage
:PROPERTIES:
+ Point location along particular (book) dimension corresponds to
amount of work contributed for book by given author (point).
+** Layered architecture
++ layer 1 :: disk / block storage / partition
++ layer 2 :: key/value storage. Keys are unique and are dictated by
+ storage engine. Value is arbitrary but limited size byte
+ array. This layer is responsible for handling disk
+ defragmentation and consistency in case of crash
+ recovery.
+
++ layer 3 :: key/value storage. Keys are content hashes. Values are
+ arbitrary but limited size content byte arrays. This
+ layer effectively implements content addressable
+ storage. Content addressible storage enables GIT-like
+ behavior (possibility for competing branches, retaining
+ history, transparent deduplication)
+
++ layer 4 :: Implements arbitrary dimensional multiverse.
+
++ layer 5 :: Distributed computation engine.
* Current status
- More or less defined [[id:f6764282-a6f6-44e6-8716-b428074dd093][Vision / goal]].
+ ZetaVM
+ https://github.com/zetavm/zetavm
+