140 likes | 292 Views
LaSQL Server 小组 第一阶段报告. 2011-07-22. 任务列表. LaUDMS 集成 框架 LaSQL 语言 LaSQL 通信协议 LaUD Connector. LaSQLEngine 集成架构. 系统架构 (2). 功能模块. 客户端 连接池和协议 :接受客户端的连接和输入 ,定义 与 客户端通信协议 ,调用用户 管理 、 语言解析 、 执行 命令等 接口 用户 管理 :用户登陆密码验证,创建用户,删除用户,修改用户,用户统计信息,权限验证 ( 暂 不 考虑 ) 等 。
E N D
LaSQL Server小组第一阶段报告 2011-07-22
任务列表 • LaUDMS集成框架 • LaSQL语言 • LaSQL通信协议 • LaUD Connector
功能模块 • 客户端连接池和协议:接受客户端的连接和输入,定义与客户端通信协议,调用用户管理、语言解析、执行命令等接口 • 用户管理:用户登陆密码验证,创建用户,删除用户,修改用户,用户统计信息,权限验证(暂不考虑)等。 • LaSQL语言解析:对输入的命令进行词法、语法解析后生成指定对象,该对象包含语言里指定的运行参数。 • 命令对象执行和查询优化:该对象为LaSQL语言解析得来,需要实现execute()方法,调用底层的存储和计算接口。 • 统一存储和计算接口:包括存储、高维索引、文本索引、数据特征处理等接口。
数据模型 • 逻辑模型 • 采用树型文件组织方式来管理用户存放的文件。服务器提供的文件展现方式类似于FTP系统,底层存储对于用户来说是透明的。 • 提供了一个ID来唯一指定一个文件或文件夹,表示方法和Linux操作系统的文件路径类似,如/b/1.txt表示/b/下一个文件,b/表示/一个文件夹。需要注意的是文件夹的ID必须以“/”结尾。 • ID格式分为绝对路径和相对路径两种。 • 绝对路径以/打头相对路径以字母打头,存储时会自动根据用户根目录确定其绝对路径。 • 默认用户根目录为/ • 如: • /doc/a/1.txt合法 被解析为/$/doc/a/1.txt • a/1.txt也合法,并会被解析为/$/a/1.txt • 物理模型 • 表格结构 • 存储用户数据的表格:doc/image/audio/video • 存储用户信息的表格:Users • 文件目录结构:用户空间 vs. 系统空间 • 系统根目录下的/$/文件夹为用户根目录
表格结构 • doc表格
表格结构 • image表格
表格结构 • audio表格
LaSQL语言 • BATCH • batch begin • batch commit • LIST • PUT:PUT object_local_path [TO id] • GET:GET ID IN (<id_list>|(<select_clause>)) [TO local_path] • DELETE:DELETE ID IN (<id_list>|(<select_clause>)) • UPDATE:UPDATE PROPERTIES <property_clause> WHERE ID IN (<id_list>|(<select_clause>)) • SELECT:SELECT <*|<property_list>|ID> from <id_list> [where <property_select_clause_list> [TOP <numeric_value>] • INDEX • CREATE INDEX • DROP INDEX • SHOW INDEXES
用户管理命令 • Create user username password; • Change password username oldpassword newpassword; • Delete user username; • Get userinfo username; • Get alluserinfo; • Get online userNum; • Get online userInfo; • Get historyCommand –u username; • Clear userdata username;
下一阶段计划 • WebService • 集成测试 • 稳定和优化