语音操作软件的数据库设计与实现

2020-07-09 22:13郑宇煜蔡震东丘洪伟陈栩聪
现代信息科技 2020年2期
关键词:S结构

郑宇煜 蔡震东 丘洪伟 陈栩聪

摘  要:近年来,随着互联网的快速发展和广泛普及,语音识别技术趋于完善,语音识别技术能将人们的语音信号转换为文字。文中所述软件通过语音识别并记录的方式,为用户减少重复机械的操作,给用户的日常电脑使用中带来更好的体验,而软件的良好运营离不开数据库的支持。该研究以“基于大数据的云助理”为背景,语音识别技术为核心,使用C/S为架构,从理论和实践两方面去阐述关于该语音操作软件的数据库设计与实现。

关键词:语音操作;SQL数据库技术;C/S结构;E-R图

中图分类号:TN912.3       文献标识码:A 文章编号:2096-4706(2020)02-0015-03

Abstract:In recent years,with the rapid development and widespread popularity of the internet,speech recognition technology has become more sophisticated,and speech recognition technology can convert peoples speech signals into text. It is proposed that the software uses voice recognition and recording to reduce the repeated mechanical operations for the user and bring a better experience to the daily computer use of the user. The good operation of the software is inseparable from the support of the database behind him. The research takes “big data-based cloud assistant” as the background,speech recognition technology as the core,and uses C/S as the architecture. The theoretical and practical aspects of the database design and implementation of the speech operation software are explained.

Keywords:voice operation;SQL database technology;C/S structure;E-R diagram

0  引  言

隨着时代的进步和物联网的兴起,语音识别技术已经逐渐覆盖我们的日常生活。本文所述的语音操作软件是一个基于C#语言编写、以微软的SQL为数据库的语音软件。在联网情况下,通过外接API,针对用户操作唤醒与用户操作相对应的命令,唤醒命令就从客户端与服务器里的数据库进行交互,并回传用户所唤醒的命令,最后实现用户指定的操作。由于语音操作软件需要存储大量的数据,而大量数据的存储集合会给服务器带来压力、长久的数据存储产生的冗余也需要有应对方法,因此提高数据库的运行效率和对数据库进行长久考量就显得尤为重要。针对上述情况,本文从数据库的概念设计、逻辑设计等方面去解决所述语音操作软件所遇到的问题。

1  系统分析

1.1  C/S结构

本文的语音操作软件采用的是C/S架构。C/S架构是客户端/服务器,也是分布式架构,它将软件的任务分解为两层,分别是客户端和服务器,软件在客户端上实现客户端与用户的交流,在服务器上根据相应的命令进行数据管理。

这种架构模式的主要优势:首先在于具有较强的交互性,用户可以较为直观地感受软件带来的变化,让用户有较好的参与感;其次是安全性,C/S架构对信息的控制力强,其一是因为它是建立在特定的平台上,影响范围有限,其二是它所面对的用户群体是固定的,传播范围也同样具有一定限制;最后是拥有较好的数据处理能力,由于C/S架构分为客户端(Client)和服务器(Server),该架构的计算层面主要是根据客户端反馈的数据,服务器通过数据执行相应计算,最后返回客户端所需要的数据,在这个过程中,客户端的主要作用是与用户进行良好的交互,服务器则是承担计算的主要角色,这种分布式的架构不仅减轻了服务器的负担,也使服务器有更好的数据处理能力。C/S架构模型如图1所示。

1.2  软件模块的设计与实现

(1)语音操作模块。语音操作模块是本文所述软件的主要功能模块,它针对用户的命令完成已制定的操作。在联网情况下,用户在客户端输入的实时语音,通过网络上传到服务器上,服务器对用户指令进行反应,并返回对应的操作数值给客户端,客户端接收到操作数值完成操作。用户也可以在客户端自定义命令,并上传到服务器里的用户个人库模块进行存放,方便用户调用。

(2)个人库模块。个人库模块是本文所述软件的主要模块之一,它主要的功能是存放每个用户所拥有的命令库,并在用户需要时进行调用。个人库模块是用户专属的数据库,它是由服务器进行存储。

(3)唤醒库模块。唤醒库模块是本文所述软件的次要模块之一,它的主要的功能是同一条命令可以拥有多条唤醒的语言方式。一个人不仅有一个称呼,计算机指令也一样,唤醒库通过保存别名的方式扩宽指令的呼唤范围。

(4)指令库模块。指令库模块是本文所述软件的扩展模块,它主要的功能是拓展用户能使用的命令。用户获取新命令的方式一般有两种,第一种是通过自己在客户端编写指令,将指令及其附属内容上传至数据库;第二种是根据用户自身的权限在服务器的指令库中下载指令。指令库包含多种官方制作的命令,用户在联网的状态下,通过点击客户端的指令库按钮,可以得到多种命令,用户可以根据自身的权限下载权限内的命令。

(5)软件实现。软件的UI如图2所示。

2  数据库设计

2.1  设计策略

数据库的设计策略是数据库设计的重要前奏和基础,它决定了管理员设计数据库的角度。数据库设计策略一般分为两种,分别是自底向上和自顶向下的策略。自底向上策略从基础数据管理和底层业务入手,从子系统开始完善,再将各个子系统集成并进行数据综合,最后完成对整个数据库的设计;该语音操作软件的数据库设计策略选择的是自顶向下策略,它从软件的高层入手,通过用户需求,分析软件实现目标、方法、策略等,从高层构建数据模型,再进行步步细化,直至成为可以识别的特定数据库及其应用。

2.2  总体设计

在数据库的总体设计中,首先是概念设计,即对用户需求进行归纳总结,然后将需求抽象化进行数据库建模。概念设计常使用E-R图作为表现形式。E-R图也称为实体-联系图,它有三个关键词:实体集、联系、属性。

实体集是指客观存在的实体的集合,在E-R图中使用矩形表示,它拥有着相同的数据类型和属性,既可以是现实存在的事物,也可以是抽象存在的概念在该软件中的实体集有用户信息、个人库、唤醒库、管理员、指令库。

联系是指实体集之间的关系,在E-R图中使用菱形表示,它们通常表示实体集之间“一对一、一对多、多对多”的关系。

属性是指实体上所具有的某项特性的值,在E-R图中使用椭圆表示。在该软件中的属性有用户ID、指令ID、邮箱、密码、权限等。该软件的E-R图如图3所示。

逻辑设计阶段,逻辑设计是将前一个步骤的概念模型通过数据模型表示出来,并对数据进行规范化。这一阶段主要通过范式来规范化数据库,范式从小到大环环嵌套,通过范式要求对数据进行约束,从而达到减少冗余,提高效率的效果。但减少冗余其实也意味着增加对服务器的压力,因此在使用范式约束的时候就需要衡量好范式与服务器之间的关系。第一范式的含义是每个属性对应的域具有原子性,并且每个属性的值包含该域的单个值时。第二范式的含义是在第一范式的基础上,任意非主属性不能依赖候选键属性集合的真子集。第三范式,也是在效率上普遍被认可的范式,在满足第二范式的基础上,第三范式下任何一个非主属性都不传递依赖任何关键字。这一阶段的主要任务是反映业务逻辑,是数据库设计必不可少的一部分。

2.3  表与表的联系

本文所述的语音操作软件是由微软的SQL数据库编写的,使用PowerDesigner软件针对该语音操作软件的表与表之间的主外键联系进行一一对应,对表里的属性、数据类型、实体等进行了一系列的建模。使用PowerDesigner软件的建模结果如图4所示。

3  结  论

通过使用设计策略、概念设计、逻辑设计等前期准备之后进行数据库的编写,本文使用了Visio软件和PowerDesigner分别绘制了E-R图和语音操作软件的概念模型,最后得出表与表之间的联系。

本软件的数据库是本文所述的語音操作软件的基础,在设计之初就需要进行多个步骤的精密策划,同时需要考虑在未来数据量的增加给数据库带来一系列需要维护情况。本文所述的语音操作软件的数据库简单实用,为该数据库以后的开发提供了一定的支持。

参考文献:

[1] 魏松,贺丹娜.基于MYSQL的学生信息管理系统数据库设计 [J].计算机光盘软件与应用,2012(14):207+209.

[2] 张永梅.MySQL数据库技术在公民健康信息管理系统中的应用 [D].西安:西安电子科技大学,2010.

[3] 李安娜.SQL SEVER数据库设计及三种经典设计方法 [J].信息与电脑(理论版),2009(10):84-85.

[4] 魏苹.城市基础地理信息数据库设计与实现 [D].长春:吉林大学,2013.

作者简介:郑宇煜(1998.02-),男,汉族,广东揭阳人,本科,研究方向:数据库管理。

猜你喜欢
S结构
基于Java的BBS开发
基于PHP的发印管理系统的实现
基于Java的网上商城开发
基于B/S结构的通信部队训练管理系统的设计研究
新型职业农民培育远程视频监管系统设计与实现
基于B/S技术网上选课管理系统的研究
B/S 结构软件的系统测试方法研究
基于ASP.NET 的图书管理系统
基于C/S结构的机务维修工程类综合实验教学平台建设与实践
基于网络的高校教材管理系统的研究