Status: 草稿 ;LX;完成度75%;

Introduction

Socrates is a Model maker tools base on RDB and ORM。 It defines the dynamic structure storage and manage funcitons by triples semantic. Triples semantic can make it easy that descrption relations between data, so it wanderful for directed graph or network graph with circle or long path releations.

  • How long:25 Minute
  • Level : Intermediate and Advance
  • Categories: databases

Socratse

Background on project

  • We need create a database as fast as, to supoort mulit-reporters. Every one is small and used once but unique.
  • Need support some unkown data types.
  • Need create networt model, that is varable between nodes, and often been find by path.
  • Characters and toys in some games, would wery huge if description by RDB table. But it is sparse.

Problems to solve

  • The business information of the data sheet has its own internal consistency. it is not efficient or economic to establish a new data model for each and every change.
  • Modify the data table structure when every data change is not actuality.
  • RDB model is not good at description deep recursion as such as tree.

What's socrates?

  • Socrates bases on the triple semantic logic model. It can descript model with dynamic structure and releations easy.
  • The model create by two layers: subject and segment

System Message: WARNING/2 (<string>, line 42)

Bullet list ends without a blank line; unexpected unindent.
  • Every segment is a triple structure as (subject, predicate, object).
  • A subject is a subject descripted by some segments.
  • The predicate is what owned by the subject.
  • The object is what subject is in the predicate.

System Message: WARNING/2 (<string>, line 46)

Block quote ends without a blank line; unexpected unindent.
  • Every subject is a structure like dictonary.
  • The predicate must be a readable string, the name is the unique title.
  • The object is any type if the database can use it.
  • Socrates override RDB's statics and strongly data type, but play as dynamic data structure model.
  • Socrates bases on the python ORM tools named SQLAlchemy, it can use the greate power from SQLAlchemy.
  • Socrates in database is a unitive creater, a little storage tables, some meta command data. The storage table can create in runtime.

Why socrates?

  • Tiny size data model, access easy for any detail.
  • Socrates can use as dictonary.

System Message: WARNING/2 (<string>, line 58)

Bullet list ends without a blank line; unexpected unindent.
  • Every subject is a structure as dictonary, can modify without effect other.
  • Subject and subject can create releations use segments by a easy way.

System Message: WARNING/2 (<string>, line 60)

Block quote ends without a blank line; unexpected unindent.
  • You can uses any RDB and use its specific data type.

Basic recurrence

  • "One command" create Socrates environment on different database platform.
  • Registe new type and predicate.
  • Write subject, new releation.

More sophisticated recurrence

  • Query segments and subject
  • Find by relation pathes.
  • Access segments in subjects.
  • Predicate Expression.

Other capabilities of socrates

  • Performance
  • Concurrent and Distributed.
  • Multi node by difference databases.

The End

  • Socrates Supports a flexible way to manage data. It can manager dynamic and complex data in a unitive technique.
  • Socrates need improve at DSL and distributed.
  • Socrates can be speed boost.

<<-- ZoomQuiet[2010-01-11 02:44:45]>>

SocratesIntro (last edited 2010-01-25 06:16:26 by MarchLiu)