Patent Document ID: 9367585
Application ID: 14342097

Base Claim:
1. A data storage and query method which supports an agile development and horizontal scaling, comprising steps of: transforming data into a 2-tupel (Key, MiniTable), and identifying any MiniTable with a unique Key, wherein, the MiniTable comprises a plurality of data columns; a structure of each data column is limited via a pre-defined mode; and the data columns are sorted according to a primary key defined by the mode; wherein the pre-defined mode is a Key-MiniTable mode having three basic primitives and three physical entities, wherein the three physical entities comprise: a client for initiating a request to a Key server with the three basic primitives and receiving a result of the request; the Key server for receiving the request initiated by the client, searching an IP address and a port number of each MiniTable server where each MiniTable corresponding to the Key is located, and accordingly transferring the request to the corresponding MiniTable server; and the MiniTable servers for receiving the request transferred by the Key server, parsing analogous SQL statements of the request, forming an execution plan, reading and writing the data in a distributed storage system, completing the request and returning a result of the request to the client.

---

Claim 2:
2. The data storage and query method, as recited in claim 1 , wherein the Key-MiniTable mode has the three basic primitives of: (1) Boolean Create (Key, column name 1: data type, column name 2: data type, . . . , column name n: data type, PRIMARY KEY: column name), comprising creating a MiniTable identified as a Key and defining a mode of the MiniTable; if succeed, returning True; if fail, returning False; (2) Boolean Delete (Key), comprising deleting the MiniTable corresponding to the Key; if succeed, returning True; if fail or no corresponding Key, returning False; and (3) String Query (Key, analogous SQL statement), comprising executing the analogous SQL statement within the MiniTable corresponding to the Key and returning a return value of the analogous SQL statement which is one parameter of the Query primitive, wherein the analogous SQL statement comprises ten reserved words which are Select, Where, Insert, Update, Delete, Order By, Limit, Distinct, And and Or, and six connectives which are =, >, >=, <=, < and < >; grammars and semantics of the reserved words and the connectives are defined identically to a standard SQL.