Server-storage interface

From cosmopool meta
Jump to navigation Jump to search

components

  • one k-object definition table
  • many k-object instance tables
  • one k-relation definition table
  • many k-relation instance tables

operations

write operations

  • k-object definition table
    • add k-object definition (insert)
    • modify k-object definition (update)
    • remove k-object definition (delete)
  • k-object instance table
    • create k-object instance table
    • drop k-object instance table
    • add instance to k-object instance table
    • modify instance in k-object instance table
    • remove instance from k-object instance table
  • k-relation definition table
    • add k-relation definition (insert)
    • modify k-relation definition (update)
    • remove k-relation definition (delete)
  • k-relation instance table
    • create k-relation instance table
    • drop k-relation instance table
    • add instance to k-relation instance table
    • modify instance in k-relation instance table
    • remove instance from k-relation instance table

read operations

  • select from a single table
    • select from k-object definition table
    • select from k-relation definition table
    • select from k-object instance table
    • select from k-relation instance table
  • select from 2 or more tables joined together


protocol

The communication between server and storage consists of requests issued by the server and replies issued by the storage.

requests

A request consists of

  • the unique ID of the server
  • the request ID (unique per server)
  • the request command
  • the arguments

replies

A reply consists of

  • the request ID
  • the reply status (success, error, ...; depends on request command)
  • the arguments