X-Git-Url: http://www2.svjatoslav.eu/gitweb/?a=blobdiff_plain;f=doc%2Findex.html;h=709f4d27295bc3ebf94583a7c7551d731a1a8c78;hb=d2dcbfcedcc730df5f45ed3c428e6f2eae849916;hp=8793e4565e2e7e39d3822467b63f6e6002838b0f;hpb=45c3bd94e38fc74268429d4441e730aec28492bf;p=sixth-data.git diff --git a/doc/index.html b/doc/index.html index 8793e45..709f4d2 100644 --- a/doc/index.html +++ b/doc/index.html @@ -1,350 +1,622 @@ +"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - - - - Sixth - system for data storage, computation, exploration and interaction - - - - - + + + +Sixth Data - Data storage and computing engine + + + + + + + + +
-

Sixth - system for data storage, computation, exploration and interaction

-
-

Table of Contents

- -
-
- - - -
-

1 Current status

-
-
    -
  • Implemented very simple persistent key-value map.
  • -
- -

- Long term goal is to implement more advanced features on top of this. -

-
-
+

Sixth Data - Data storage and computing engine

+
+

Table of Contents

+ +
+ +
+

1 General

+
+ +
+ +
+

1.1 Source code

+
+ +
+
+
+ +
+

2 Vision / goal

+
+

+Provide hackable, versioned, optimized, distributed, geometrical, +arbitrary dimensional (hypercube based) data storage and computation +engine (as inspired by the brain) for general purpose visual computing +environment called Sixth. +

+ +

+Because Lisp is hackable self defined programmable programming +language it would be used to provide imperative programming support. +

+
+
+
+

3 Inspiration

+
+ +
+
+

3.1 Brain

+
+ +
+
+ +
+

3.2 CM-1 Connection Machine

+
+

+https://en.wikipedia.org/wiki/Connection_Machine +

+ +

+Massively parallel (thousands of CPUs) connected via +machine's internal 12-dimensional hypercube network allows to +efficiently simulate arbitrary dimensional hypercube and network +topology between computational units. So that when we are +solving/simulating for example 5 dimensional problem, we can arrange +computational units into virtual 5D network. See: +http://www.mission-base.com/tamiko/theory/cm_txts/di-ch2.html +

+ +

+we can pre-distribute data across computation units and perform +parallel geometrical computation. +

+
+
+
+ +
+

4 Reasons for hypercube as a so called first class citizen

+
+
    +
  • Hypercube is quite general purpose data structure that naturally +encapsulates wide variety data and problems.
  • + +
  • Nicely captures apparent properties of the brain.
  • + +
  • Naturally supports distributed and parallel geometrical data storage +and computation.
  • + +
  • Dedicated hardware like CM-1 can be built around hypercube concept +that results in data, computation process and hardware, all +beautifully fitting together while complementing each other +strengths.
  • + +
  • Hypercube stored data (and computation process) has geometry by its +nature and should fit nicely with "3D first" user interface ideology +of the parent Sixth project.
  • +
+
+
+
+

5 Geometrical computation idea

+
+
+
+

5.1 Distributed computation and data storage

+
+

+Lots of problems can be translated to geometry (use any shapes and as +many dimensions as you need). Solution(s) to such problems could be +then found via geometrical search/comparison/lookup results. As a +bonus, such geometrical data storage AND computation can be +naturally made in parallel and distributed. +

+ +

+Learning means building/updating/re-balancing the model (the hard +part). Question answering is making (relatively simple) lookups +(geometrical queries) against the model. +

+
+
+
+

5.2 Mapping hypercube to object-oriented model and relational database

+
+

+Object oriented programming is inspired by the way human mind +operates. It allows programmer to express ideas to computer in a more +human-like terms. +

+ +

+It is actually also possible to map object model and relational +database to geometrical hyperspace: +

+ +
    +
  • Object or database table row is a point in hypercube arbitrary +dimensional space. Each object member variable or database table +column can be mapped to its own dimension in hypercube. That is: if +class declares 4 variables for an object, then corresponding object +can be stored as a single point inside 4 dimensional +hypercube. Variable values translate to point coordinates in that +hypercube. That is: numbers and string can be translated to linear +value that can be used as a coordinate along particular dimension.
  • + +
  • Each object class or database table declares its own hypercube that +contain instances (objects) of that class or rows of a table.
  • +
+
+
+ +
+

5.3 Mapping entity relations in hypercube

+
+

+Consider we want to create database of: +

+
    +
  • Books.
  • +
  • Authors.
  • +
  • Effort: Amount of time contributed by every author to every book +that he/she wrote.
  • +
+ +

+Information above can be represented as 3D cube where dimensions are: +

+
    +
  • X: Book
  • +
  • Y: Author
  • +
  • Z: Effort
  • +
+ +

+Points in that cube would nicely capture many to many relations +between authors and the books. +

+
+
+
+
+

6 Current status

+
+
    +
  • More or less defined Vision / goal.
  • + +
  • Collected some inspiring ideas.
  • + +
  • Implemented very simple persistent key-value map. +
      +
    • Long term goal is to use it as a backing storage engine and +implement more advanced features on top of this via layered +architecture.
    • +
  • +
+
+
+ +
+

7 See also

+
+

+Interesting or competing projects with good ideas: +

+ +
    +
  • flexible user interface building for interacting with different data +
      +
    • Glamorous Toolkit +
        +
      • Moldable development environment. It is a live notebook. It is a +flexible search interface. It is a fancy code editor. It is a +software analysis platform. It is a data visualization engine. All +in one.
      • +
    • +
  • +
+
+ +
+

7.1 Computation on multi dimensional data

+
+ +
+
+
+

7.2 Distributed, reliable, parallel computing systems

+
+
    +
  • ChrysaLisp +
      +
    • Assembler/C-Script/Lisp 64 bit, MIMD, multi CPU, multi threaded, +multi core, multi user Parallel OS. With GUI, Terminal, OO +Assembler, Class libraries, C-Script compiler, Lisp interpreter, +Debugger, and more…
    • +
  • + +
  • Gemstone/S +
      +
    • Completely distributed smalltalk based computing +system.
    • +
  • + +
  • http://phantomos.org/ +
      +
    • Programs run forever. System crash or reboot does not destroy +state of running program.
    • +
  • + +
  • Magma +
      +
    • Multi-user object database for Squeak
    • +
  • + +
  • TAOS +
      +
    • Completely distributed operating system/virtual machine:
    • +
  • +
+
+
+ +
+

7.3 Rules based machine reasoning

+
+ +
+
+
-

Author: Svjatoslav Agejenko

-

Created: 2016-08-03 Wed 23:45

-

Validate

+

Author: Svjatoslav Agejenko

+

Created: 2021-03-16 Tue 20:48

+

Validate