1 .一种分布式数据库客户端高效智能存储数据实现方法,其特征在于,
包括
a、利用共享内存对于时序数据进行存取;
b、利用共享内存获取元数据;
c、服务于客户端消息队列与服务端进行通信。
2.根据权利要求1所述的方法,其特征在于,
建立连接时获取共享内存ID,并且通过共享内存进行数据交互;
包括以下步骤:
1)建立连接的同时判断是否attach共享内存;
2)attach成功之后,通过共享内存进行时序数据与元数据的存取、获取错误消息、与消
息队列进行通信;
3)在断开连接的同时判断是否需要detach共享内存。
3 .根据权利要求2所述的方法,其特征在于,
在建立连接时通过服务端返回的共享内存id,attach到共享内存中;如果进程已经
attach过,就会忽略;
数据库的部分元数据被存储在共享内存中,client可以直接访问这些数据而不需要通
过发送sql语句去查询系统表。
4 .根据权利要求2所述的方法,其特征在于,
错误信息:服务端在出错的同时会将错误码和错误信息存入共享内存中,client在接
收到返回的错误码之后,可以通过共享内存访问。
5 .根据权利要求2所述的方法,其特征在于,
断开连接:为了保证共享内存可以被正确的释放,当client退出连接的时候会检查当
前是否为最后一个连接;如果为最后一个连接,client会同时detach共享内存。
6 .根据权利要求2所述的方法,其特征在于,
Client支持用户输入数种不同的数据类型;
使用一种可以接受多种数据类型结构体,表示要发送的数据。然后将这个结构体序列
化成一个自定义的payload格式,并通过通信协议发送到服务端;
Client会根据数据库中实际的column offset进行重新排列,并且存入一个自定义的
payload中;
进行数据存入时,将tuples通过client和server间的约定通信协议,发送给服务端;
服务端接收到payload后,再将其反序列化成消息结构体,根据消息类型处理数据,并
将处理结果发送回客户端。
7 .根据权利要求2所述的方法,其特征在于,
存取用户数据
进行数据存入时,将tuples通过约定的通信协议发送给服务端;
进行数据取出时,client发送查询数据请求,等待客户端响应:
1)如果客户端直接返回数据结果,client会返回给用户
2)如果客户端返回偏移量,client会使用该偏移量去共享内存中查询结果。
8.根据权利要求2所述的方法,其特征在于,
权 利 要 求 书
1/2 页
2
评论