vertical(V2)
levelDB distributed,Server and Client!
How to use
Server
>git clone https://github.com/zy445566/vertical.git>cd vertical>npm install>npm run server #Server start(recommend pm2 when production environment)
Client
>cd your-project>npm install vertical-db --save
easy example
const Vertical = require('vertical-db');const Client = Vertical.Client;const Common = Vertical.Common; let timestamp = Common.genTimestamp();let table = 'tmp';let client = new Client('127.0.0.1', 5234);// or let client = new Client('127.0.0.1', 5234,password(read or write Key),is_write(true or false)); //when node version<7.6 :client.connection().then((res)=>{ return client.insertRow('111','user',{name:'zs',age:20},timestamp,table);}).then((res)=>{ return client.getRow('111','user',res,table);}).then((res)=>{ console.log(res); client.disConnection();}).catch((err)=>{ console.log(err);}); //when node version>=7.6 :async function example(){ await client.connection(); let res = await client.insertRow('111','user',{name:'zs',age:20},timestamp,table); let getRes = await client.getRow('111','user',res,table); console.log(res,getRes); client.disConnection();}// example();
more example:click here
ThriftCode(we use c,java,php,python when we use Vertical)
namespace cpp verticalnamespace d verticalnamespace dart verticalnamespace java verticalnamespace php verticalnamespace perl verticalnamespace haxe vertical struct DataKey {1:string row_key,2:string column_key,3:string timestamp,4:string table} struct DataKeyGen {1:string row_key,2:string column_key,3:string timestamp,4:string table} struct DataColumnKey {1:string row_key,2:string column_key,3:string table} struct DataColumnOption {1:i32 limit,2:bool reverse,3:bool fillCache} exception VerticalError {1:string message} service Vertical{ void ping(), string getRow(1:DataKey data_key) throws (1:VerticalError error), string updateRow(1:DataKey data_key,2:string row_value) throws (1:VerticalError error), string insertRow(1:DataKeyGen data_key_gen,2:string row_value) throws (1:VerticalError error), bool delRow(1:DataKey data_key) throws (1:VerticalError error), string getColumn(1:DataColumnKey data_column_key,2:DataColumnOption data_column_option) throws (1:VerticalError error), i32 delColumn(1:DataColumnKey data_column_key,2:DataColumnOption data_column_option) throws (1:VerticalError error), i32 updateColum(1:DataColumnKey data_column_key,2:string row_value,3:DataColumnOption data_column_option) throws (1:VerticalError error), i32 insertColum(1:DataColumnKey data_column_key,3:string row_value_list) throws (1:VerticalError error), string isSync(1:string server_sign,2:string timestamp) throws (1:VerticalError error), i32 writeSyncData(1:string sync_write_data) throws (1:VerticalError error)}