140 likes | 279 Views
分布式数据库中期报告. 王川 李宁 程向 力 2009-11-20. 主要内容. 开发环境. 系统结构. Client. User. Client : 1 ) 、导入脚本 2 )、数据分配 3 )、传输命令 4 )、显示结果 Server : 1 )、解析命令 2 )、建立数据库 3 )、传输命令 4 )、 GDD 更新 5 )、查询优化
E N D
分布式数据库中期报告 王川 李宁 程向力 2009-11-20
系统结构 Client User Client:1)、导入脚本 2)、数据分配 3)、传输命令 4)、显示结果 Server:1)、解析命令 2)、建立数据库 3)、传输命令 4)、GDD更新 5)、查询优化 6)、返回结果
GDD Table • Table数据结构 typedef struct _TABLE { table_name; --表名 tuple_name;--字段名 num_of_tuple; --字段数 is_fragement; --分片信息 info; --附加信息 SiteInfo *site; --站点信息 }Table; typedef struct _TABLENODE { num_of_table; --表数目 Table table; --表项 Table *node_next; }TableNode;
初始化: • Create from script GDD Table 文本存储、格式?
Query Tree • 树的节点设计 --类型:表,操作 表:Table 操作:Selection、Projection、 Join、Union • SELECT ENAME • FROM PROJ, EMP, ASG • WHERE ASG.ENO = EMP.ENO • AND ASG.JNO = PROJ.JNO • AND ENAME <> “J.Doe” • AND PROJ.JNAME = “CAD/CAM” • AND (DUR = 12 OR DUR = 24) • 树的相关操作 --解析SQL形成Tree --根据Tree形成执行方案 --根据GDD优化
查询树优化策略: • 查询树剪枝: • 根据GDD中的分片信息剪枝 Query Tree Optimization
网络通信 • Client-- Control Site --SQL命令 --最终结果 --导入数据(初始化) • Control Site(Server) -- Server • --拆分了的SQL命令 • --中间结果 基本完成 • P2P网络结构 • CSocket类实现网络传输以及协议 • 多线程的服务器
网络优化 • 策略: --减少网络的数据传输量 (对结果集的处理) --提高并行度,降低相应时间 (在不同站点的独立操作同时进行) 临时文件?内存处理? Control Site控制
Q& A Thank you!