上海财经大学以开源框架为基础,以私有云建设为核心,极大丰富和拓展了传统文档管理的内涵。
在当前国内高校的数字化建设中,文档是其中非常重要的部分,包括各种办公文档、电子表格、教学资源课件、科研成果、课堂图片影像等文档资料在各高校的发展建设中至关重要。文档数量与容量的快速增长,给传统服务器带来了挑战。随着云技术的发展,私有云存储成为学校校园数字化建设中文档管理的最佳选择。它能够有效控制数据及其安全性,可根据自己的需求特点,部署特定的安全策略,还能与学校的教学系统平台等第三方资源进行整合。我们将该私有云存储系统部署在安全数据托管中心,当学校师生访问该资源时,不会受到网络不稳定等因素的影响,能提供较高的服务质量。另外相对公有云而言成本较低,可免费给学校师生提供长期服务,在部署方式上也更为灵活,能更好地适应学校现有的软硬件架构体系。
校园网现有文档管理现状
上海财经大学现有院系及某些部门机构的文档管理一般分两种模式,一种即原始的通过FTP文件服务器进行管理,在安全管理及多用户协作方面存在问题。另一种是部署SVN等服务器,可对文档进行多版本管理和多用户的协同操作,但是缺少在移动办公、即时沟通、随时分享等方面的功能,也不能根据学校现有的组织架构进行分配,建立灵活的教学科研等项目小组。而且这种版本控制软件比较专业,在使用规模上难以大规模推广,很多教师学生需要一个直观且容易使用的平台,来满足各种文档管理的需要。
校园“云”协作总体构思方案
针对以上问题,我们在上海财经大学校园网文档管理中设计了新的解决方案,提出私有云协作的概念。它是一个文件协作管理系统,通过整合组织架构和灵活的项目小组,给学校师生提供一个以文件为中心的工作学习协作平台。
从图1可以看出,我们设计的系统支持多类型终端,包括网页、iOS与Android移动终端APP、PC客户端和微信企业号。实现了任何时间、任何地点、任意终端的接入访问。其中网页主要提供文档管理与查看、信息沟通和系统管理功能;PC客户端提供了文件同步上传和下载功能;移动终端APP提供文件查看和共享、信息沟通;微信企业号提供信息推送和文件浏览功能。上述文档包含了所有历史版本信息,哪个用户什么时候修改的,相关用户都能方便地进行查阅。
图1 工作学习协作平台
我们建设的私有云文档协作系统整合了组织架构和项目小组的协作模型,提供了高效便捷的文件共享与工作协同。该系统本身提供了全方位的安全保障机制,数据的传输和存储采用了高级数据加密技术,防止数据泄密。实现了多级细粒度权限控制,按需保护数据。可视化的文档工作区权限依次分为:公共空间-我的院系部门-负责及参与的小组-个人空间等多种形态,帮助学校打造专属的可控文档管理中心。不同的院系部门和项目小组有自己独立隔离的文件协作空间,可由各级指定负责人来管理上述每个工作区用户的访问权限。
如图2所示,我们将私有云文档协作系统按功能分成了五个模块:File Management(文档管理),File Sharing(文档共享),File Collaboration(文档协作),File synchroniztion(文档同步)和System management(系统管理)。这五个核心功能模块在上述四种客户端中都有设计实现,但侧重点不同,如网页端侧重全面整体的功能,移动端APP侧重信息的浏览和分享等。
1.文档管理包括了文件上传、文件下载、在线预览、全文搜索、文件管理、版本控制等功能。其中版本控制会对系统中所有文档进行版本管理,用户可通过网页端查看某文档的所有历史版本,包括每个版本号、修改人、修改时间,且可对每个版本进行预览、下载和删除操作。同时用户也可通过PC端的文档版本同步工具设置本地的一个同步文件夹,设置好自动同步的时间间隔,然后系统会自动将云端的所有文档同步到本地,如果本地文档有修改也会自动将本地文档同步到云端,因此用户只需在自己的电脑上对文档进行维护,然后由版本同步工具自动同步,其他用户就可在云端查看到该用户对此文档的修改。另外全文搜索具有索引引擎、查询引擎、文本分析引擎、对外接口等,不仅可以搜索文档中的内容,还能直接搜索图片里的文字。我们采用了OCR文字识别,可通过字符识别方法将图片中的正体文字翻译成计算机文字,然后通过搜索引擎定位包含该文字的图片。
2.文档共享包括文件和文件夹的共享、部门及项目小组的共享、共享权限控制和外链分享等。其中文件共享是指用户可通过网页端和移动端APP共享文件,用户可通过网页端对文档进行内部分享,即分享给系统中公共空间(所有用户)或指定的部门和项目小组;而通过移动端APP,用户则除了内部还可以进行外部分享,包括QQ、微信与邮件分享,可以很方便地将文档分享给自己的同事、同学、好友。外链分享指分享人可通过外链方式,将私有云文档协作系统中的文件进行对外文件分享,可对外链的有效期、访问密码及下载权限进行设置,同时也支持通过邮件分享该外链的URL。得到该外链的用户通过访问URL可得到下载的文档和分享人信息,并可通过网页或二维码来进行下载。
3.文档协作包括任务管理、即时消息发送、基于文件的讨论、通知推送等。其中通知推送指协作项目团队、部门和公共空间中的每个工作进展(包括文档的添加更新和成员的更新)都会推送到移动端APP,以便相关用户能第一时间掌握信息。同时考虑到微信的日益普及,上海财经大学微信企业号的师生用户数已有16000多人,普及率超过95%,因此在设计本系统时将通知推送功能集成到了学校的微信企业号中,通过建立消息型应用和配置自定义菜单,在移动端APP收到的消息通过微信同样能接收,方便部分没有安装APP的用户及时获取消息。即时消息发送指部门和项目小组成员可通过在组织内发送消息进行交流。文档协作系统管理的对象是文档,各个用户可通过基于文件的讨论,对指定文档进行评论注释,方便整个团队的协作管理。另外任务管理中也可添加指定的文档,设定任务的参与者与开始结束时间等,将工作任务分配给部门及项目小组成员,方便成员以任务的方式来管理维护文档。
4.文档同步包括实时和差量同步、断点续传和文件秒传等功能。我们根据服务器上文件的MD5标识,只要存在相同文件内容,就可实现秒传。不仅节约同步时间,也节省带宽和存储空间,因此在服务器端重复文件只保留一份。
5.系统后台管理模块包括组织架构管理、权限角色定义、空间配额配置、审计日志和系统回收站等。系统后台管理主要由管理员在网页端进行控制,由于我们的认证采用与现有AD认证服务器对接的方式,因此所有用户的组织架构信息会自动从AD进行同步。系统管理员可以对部门和项目小组进行空间配额设置,各个权限角色的定义,日志的查看审计。
部署上,系统支持跨区域分布式云存储和集群部署,在代码层面实现了Node Manager和Metadata Manager,可通过系统配置灵活的增减系统的节点服务器,进行负载均衡,避免单点故障的发生。