数据库及其应用

2024-07-26

数据库及其应用(精选十篇)

数据库及其应用 篇1

关键词:Java网络数据库,编程,应用

随着我国经济社会的不断发展, 计算机网络技术的也得到了高速发展, 电子商务及动态网站的发展到了前所未有的顶峰。Java网络数据库编程在社会中也得得到了普遍的应用。JDBC简单的说就是由一组用Java语言编写的类而组成的, 它已经成为了现实社会中开发者普遍应用的一种供数据库使用标准的API。根据JDBC自身所具有的一系列类和接口, 利用一些简单的程序, 可以使开发人员在Java编程中更方便地编写有关数据库方面的应用程序。

1、JDBC介绍

JDBC (Java Database Connectivity) 是Java实现数据库主要访问的API (Application Programming Interface) , 它与Microsoft的ODBC (Open Database Connectivity) 一样, JDBC主要是建立在X/Open SQL CLI (Call Level Interface) 等基础上的。JDBC的主要是通过计算机管理存放在表中的数据, 因此定义了一系列与关系数据库, 如:数据库连接、SQL语句、结果集和元数据等, 在需要时进行交互的类和接口, 我们通常所说的JDBC的工作需要三个步骤来完成:先要建立与所需要的关系数据库完成连接;然后再向Java数据库发送所需要的SQL语句, 实现对数据库的操作;最后得到可以处理的结果。

2、JDBC的主要接口和驱动程序

2.1 JDBC的主要接口

JDBC主要提供的有针对一般开发人员应用程序的JDBC API和底层的JDBC Driver API两种接口。

JDBC API它是一系列抽象的接口, 它的实现是由驱动程序开发商提供的。主要是让开发应用程序的人员根据所编写的数据库访问Java应用程序。驱动程序是应用程序和某个数据库产品之间接口的必要链接, 它的管理器则对应用程序和驱动程序之间的交互进行控制。JDBC API主要用来连接数据库和直接调用SQL命令, 执行各种SQL语句。利用JDBC API可以执行一般的SQL语句、动态SQL语句, 以及带IN和OUT参数的存储过程。

JDBC中的驱动程序必须提供实现方法的接口。JDBC API被定义在java.sql包中, 其中定义了JDBC API用到的所有类、接口和方法, 主要的类和接口有:

(1) DriverManager类——处理驱动程序的装入, 为新的数据库连接提供支持。驱动程序要向该类注册后才能被使用。进行连接时, 该类根据JDBC URL选择匹配的驱动程序。

(2) java.sql.Driver接口——驱动程序接口, 负责确认URL与驱动程序的匹配、建立到数据库的连接等, 其中的方法需要有相应的驱动程序实现。java.sql.Connection接口——表示到特定数据库的连接, 其中的方法需要有相应的驱动程序实现。

(3) java.sql.Statement接口——为SQL语句提供一个容器, 包括执行SQL语句、取得查询结果等方法。

(4) java.sql.ResultSet接口——提供对结果集进行处理的手段。

(5) JDBC Driver API是面向驱动程序开发商的接口。对于大多数数据库驱动程序来说, 仅仅实现JDBC API提供的抽象类就可以了。也就是说每一个驱动程序都必须提供对于java.sql.Connection、java.sql.Statement、java.sql.

PreparedStatement和java.sql.ResultSet等主要接口的实现方法。如果目标DBMS提供有OUT参数的内嵌过程, 那么还必须提供java.sql.CallableStatement接口。每个数据库驱动程序必须提供一个java.sql.Driver类, 使得系统可以由java.sql.DriverManager来管理。

一个典型的驱动程序是在ODBC上提供对JDBC的实现接口, 从而提供与ODBC接口的JDBC-ODBC桥。由于JDBC放在ODBC之后, 所以实现起来简单而且高效。

2.2 JDBC驱动程序

JDBC驱动程序可以分为下面四种类型:

2.2.1 JDBC-ODBC桥驱动程序

Sun产品通过ODBC驱动程序提供JDBC的存取, 即经过ODBC驱动程序访问数据库。在大多数情况下, ODBC二进制代码必须在每个使用该数据库驱动程序的客户端安装, 所以这种驱动程序主要适用于公司内部网络, 或者在三层结构中用Java编写的应用服务器代码。

2.2.2 本机应用编程接口的Java驱动程序

此类驱动程序转换JDBC调用客户端的、针对特定数据库系统的API, 如Oracle、Sybase、Informix、DB2或其它的DBMS, 像桥驱动程序一样, 这种类型的驱动程序要求在每一个客户机上安装一些二进制代码。

2.2.3 数据库中间件的纯Java驱动程序

此类驱动程序将JDBC调用转换成为中间件供应商的协议, 然后通过中间件服务器转换成为DBMS协议。网络服务器中间件可以连接所有Java客户端到各种不同的数据库, 但是特定的协议取决于供应商。通常这种方式是JDBC最方便的选择, 提供商可为Internet用户提供产品套件。为了使这些产品能够支持Internet访问, 他们还必须处理安全、防火墙穿越等需求。各个提供商正在增加JDBC驱动程序到他们现存的中间件产品中。

2.2.4 直接连接数据库的纯Java驱动程序

这种驱动程序是本地协议的纯Java驱动程序, 它转换JDBC调用由DBMS直接使用的网络协议。这种方式允许从客户机到DBMS服务器的直接调用, 是Intranet访问的一种行之有效的解决方案。因为这些协议多数是专用的, 因此数据库提供商将成为这种驱动程序的主要来源。

3、Java性能测试及其相关分析

可以说, 保证Java软件质量最为有效方式就是对Java软件进行测试, 在进行测试的过程中, 要依据不同的测试目标, 明确地分为性能测试和功能测试两方面。在这里我们主要陈述Java软件的性能测试, 所谓性能测试, 简单来讲, 就是在软件运行时, 针对其所消耗的时间及其内存, 进行有效的测试。所以, 对来Java软件来讲, 如果其功能测试达标的话, 性能不能满足相关要求, 那么Java软件就是不合格的软件产品。

首先, Java软件测试平台。当前, Java软件测试工具已经逐渐趋于完善, 其中, 使用最为广泛的一个平台就是TPTP。在进行Java软件性能测试时, 通过软件测试平台所提供完善的性能测试功能, 实现软件代码, 基于开源、免费的框架基础上, 使其与其他软件进行融合, 突显出软件体系标准的灵活性与开放性, 其测试方法简单, 只需设定相应的测试时间和内存就可, 然后系统平台自动对Java软件进行性能测试。

其次, Java软件测试。实现智能设备的重要程序设计语言就是Java语言, Java语言在很大程度上满足了对程序运行效率和智能装备资源的高要求。并且, 在些基础上, 通过垃圾的回收机制, 对比和分析测试结果, 仔细分析Java程序设计的进行, 最终得出所要的结论, 然后通过一定的媒介, 进行输入、输出操作, 实现对动态内存资源的回收, 节省资源, 获得较高的执行效率。

4、Java软件的应用

目前, Java使用最多的Applet是Web文件的一个组成部分。其中有数据库存取的Ap p l et和能够使用JD BC来接触数据库的Applet。

首先Web浏览器从Web服务器中下载嵌有Applet的HTML页面, 解释并执行Applet字节码。当执行到有访问数据库的Java语句时, Applet直接将相应的Java命令发送给装在服务器上的JDBC。通过JDBC向后端数据库发出SQL请求, 然后数据库将处理结果通过JDBC直接返回给Applet。Applet通过JDBC访问数据库的方法是一种Web数据库访问的实现方案。

参考文献

[1]杨乔林.Java语言程序设计 (连载一) 第一篇Java导论[J].计算机系统应用, 1996年11期.

[2]贺斌.基于Java/Servlet/JDBC技术的电子商务的设计与实现[D].西北工业大学, 2001年.

数据库及其应用 篇2

在全矿范围内开展“五崇尚”活动是对我们每一位党员干部及员工进行自身素质提高和规范行为修养的准则和方向,扎实开展“五崇尚”活动,对我矿当前发展和进步具有十分重要的意义。在此,略谈几点体会和心得。

一、学习和开展“五崇尚”活动,有利于重塑人生形象,形成共识,凝聚人心。

把崇尚品德作为一种境界追求。企业形象直接与每位员工的道德修养息息相关,而企业形象的好坏直接影响到企业的经济效益和社会效益。因此,崇尚品德就是引导企业员工爱企敬业,爱岗奉献,爱矿如家,努力成为有道德、有作为的人。具体而言,做到“六乐六勿”:一是要乐诚勿欺。先做人后做事,做诚实守信的员工;二是要乐信勿疑。把企业当作自己的家,相互信任,精诚团结;三是乐实勿伪。要踏实工作,不虚表功;四是要乐廉勿贪。贪得无厌,伤及自身;五是要乐善勿恶。古人曰:“勿以善小而不为,勿以恶小而为之”;六是要乐义勿利。舍生取义,不能见利忘义。

二、开展“五崇尚”活动。有利于提高员工文化底蕴,形成“学、比、赶“氛围。

把崇尚知识作为一种文化追求。在煤矿企业,作为一名

基层干部,我认为:学习知识是必备的,包括理论知识和业务知识,知识可以改变命运,知识可以创造财富。崇尚知识就是要积极引导员工学习知识,学习技术,不断提高自身的综合素质。当今社会,人才的竞争实质是科技的竞争、知识的竞争,我感觉多看有益的书、有用的书,能够提高技能和才干,书是人类进步的阶梯,不学习一事无成,不求进取,则一塌糊涂。但有些同志虽然文化不高,但是善于在实践中掌握知识,从同行中互相取长补短,通过相互学习来提高自已的知识水平和实践经验。

三、开展“五崇尚“活动,是推动快乐工作法的精神支柱。

把崇尚劳动作为一种工作追求。劳动受人尊重,劳动创造财富。集团公司在员工中推行快乐工作法,就此而言。可以说,劳动最光荣,崇尚劳动就是要对劳动有敬慕之情。工作是快乐的,而劳动是我们应尽的义务,在我矿象马六孩、连万禄等老一辈矿工在平凡的岗位做出不平凡的业绩,他们应该成为我们每个干部员工爱岗敬业,创新发展的榜样。象我们卫生科爱岗敬业、乐于奉献的劳动模范辛喜成同志一心扑在工作中放弃休息日,不管刮风下雨,他都无私奉献,默默无闻,这很好地说明了真正劳动者是不是那么光荣,劳动

是不是体面,荣誉归于劳动光荣者。因此说,只要肯奉献、只要付出、干好本职工作,才能受人尊重,才是快乐的。

四、开展“五崇尚“活动,有利于推进工作创新,使党组织建设更具活力。

把崇尚创新作为一种事业追求。没有创新也就没有进步,没有进步就没有成就。创新在行行业业、方方面面,每个地方都存在。但是,如何真正创新,矿党委赵书记讲得很好,前辈矿工以敢为人先的创新精神铸造了马连掘进组和综采一队在全国同行争创一流,勇立潮头的辉煌。而我们必须有前进的目标,探索现采矿井的最佳退出途径,创出接替矿井的最优建设模式,每名干部和员工都要以争先恐后的进取精神为动力,争做本单位、本行业的领跑者,我们在环境方面需要创新,矿容矿貌,需进一步改善,形成一个模式化、规范化、洁净化的矿山环境。

五、开展“五崇尚”活动。让员工得到实惠,树立自立自强的信心,投身到矿山建设中。

把崇尚尊严作为一种生活追求,每位同志都要相互尊重,不论你官有多大,职位有多高,都需要尊重。一是实行以人为本,工作有快乐感,尊重人才、培养人才、不埋没人才,要做到人尽其才。二是坚持薪随效提的原则。拉开档次,我们建立激励机制,根据工作环境、工作量大小等情况,倾斜苦、脏、累岗位。崇尚那些在各个层面的人才、劳动模范和技术能手努力做到收入与付出相得益彰,同增共长,才是真正体面劳动。才是真正有尊严的劳动者,充分发挥员工主人翁地位,享有知情权、表达权和监督权,从而增强企业活力。

2010

卫生科

王 勇 年7月

学习五 崇 尚

数据库及其应用 篇3

关键词:ORACLE数据库;权限管理;用户控制;审计;数据加密

中图分类号:G250.74 文献标识码:A 文章编号:1007-9599 (2012) 10-0000-01

数据库在企事业单位得到了越来越广泛地应用,数据库中存在着许多关键数据,这些数据对于企事业单位有着至关重要的作用;因此,数据库安全方面的问题就显得极为重要,必须加强对数据库安全技术的研究。Oracle数据库是应用最为广泛的数据库系统,因此如何保证Oracle数据库的安全有着极为重要的意义。

Oracle数据库在通常条件下可以保证数据库的安全性和稳定性,如果数据库的操作系统受到其他计算机或者网络的故障影响,那么数据的安全性就会受到威胁,甚至出现Oracle数据库瘫痪的现象。为了保证数据库的安全性,必须对数据库采用安全技术来保证系统的正常运行,确保数据的绝对安全和可靠。

一、权限管理

数据库的安全问题离不开用户,用户在对数据库中的数据进行访问甚至修改本身就对数据库产生了较大的影响,因此,用户是数据库安全性的保障。通过对用户的访问权限进行控制,在一定程度上可以增强数据库的安全性和数据的保密性。对用户的权限控制可以采用授予和收回等方法有效地进行权限管理。

(一)对不同的用户进行权限分级设置,即按照工作的需要把用户进行分级管理,让每一个等级的用户满足其自身工作的需要即可,防止不同等级的用户对数据进行误操作,根据等级的不同对用户访问的数据范围进行设置;

(二)用户可以对自己的数据进行设置,只允许某一个或某部分用户可以对数据进行访问但是不可以进行修改;

(三)对于一些具有特殊权限的用户,他们可以对数据进行修改,但是不可以把修改数据的权利转让给没有修改权限的用户;

(二)数据库管理员可以对数据库里面所有的数据和文件具有进行创建、修改和删除的权利,可以对数据库中的相关文件进行编辑和完善,并且定期对数据库进行检查,将一些有害的信息删除掉,以确保数据库的绝对安全。

二、用户控制

为了规范数据库中的资料管理,以保证数据库的安全性和数据的保密性,对数据库中的不同用户采用不同的用户控制方式。

(一)对于普通用户,即:权限对象,我们可以通过数据加密的方式来进行数据访问。如:在客户端的文件中设置访问密码,在服务器端文件中进行访问设置等;

(二)对于终端用户,其安全性就更为重要了,很多企事业单位的数据库都是采用为用户创建角色的方式把所需要的文件和权限分配给所有的用户角色。对于终端用户来说,其权限的管理可以用角色来达到实施的目的;

(三)对数据库管理者的安全性进行设定也是非常重要的,如对管理者的用户密码进行定期修改,可以有效地防止非法用户盗取管理者的密码,避免非法用户对数据库进行访问;可以通过密码和相关认证使管理者使管理者进入数据库,以保证安全性,通过对某些默认的用户或者失效的用户进行筛选,保证数据库的安全性和稳定性。

三、审计

任何数据库都有可能存在安全隐患,Oracle数据库采用审计功能来对各个用户进行监视和记录他们的活动情况,数据库的审计记录存放在SYS 方案中。初始状态的Oracle数据库审计功能是不开启的,这是因为开启审计功能会对数据库的性能造成一些影响。Oracle数据库支持三种类型的审计,即语句审计、权限审计和方案对象审计。语句审计是针对 DDL、DML 语句的审计,如/ AUDIT TABLE0语句审计就是针对所有的CREATE 和DROP TABLE 语句进行审计;权限审计是对系统权限的审计,并且是有权限限制的,如只针对/ CREATETABLE0的权限审计,则只对CREATE TABLE语句进行审计;方案对象审计是针对特定的 DML 语句和特定方案对象的GRANT、REVOKE 语句的审计。

四、数据加密

Oracle数据库的最后一道防线是对数据进行加密,Oracle数据库在操作系统中以文件的形式进行存储;如果数据库遭受外来入侵,入侵者就可以直接对数据库中的文件进行数据修改,甚至伪造数据库中的文件内容。Oracle数据库这些安全隐患一般用户很难发现,可以采用对数据库的管理系统进行分层次加密来解决,它可以在数据库遭受安全攻击时有效地保障数据的安全,通常在下面三个层对数据进行数据加密:

(一)操作系统OS层加密。OS层不能准确辨认数据库文件中的数据关系,从而无法产生合理的密钥,对密钥进行合理的管理和使用是非常困难的。所以,对企事业单位的大型数据库在OS层对数据库文件进行加密实现起来难度较大。

(二)数据库管理系统DBMS内核层加密。这种加密方法是在物理存取数据之前完成加/解密工作,加密的功能十分强大,且加密后不会受到影响DBMS的功能,实现了加密功能与数据库管理系统之间的无缝衔接;但是加密运算在服务器端进行,加重了服务器的负载,而且DBMS和加密器之间的接口需要DBMS 开发商的支持。

(三)数据库管理系统DBMS外层实现加密。这种加密方式是将数据库加密系统做成DBMS的一个外层工具,根据加密的具体要求自动对数据进行的加/解密处理,这种方式加/解密运算在客户端进行,不会加重数据库服务器的负载并且可以实现网上传输的加密,但是加密功能受到了一定限制,与数据库管理系统之间的衔接不是很好。

Oracle9i在 Oracle10g中增加了DBMS_CRYPTO包用于数据加密/解密,支持DES、AES等多种加密/解密算法。

五、结论

通过对Oracle数据库安全技术进行分析,并且在 Oracle9及以上版本的数据库上进行了实际的应用,从而保证Oracle数据库安全稳定地运行。

参考文献:

[1]蒋卫.基于Oracle的ICCAM系统设计与开发[D].无锡:江南大学,2009

[2]孙银昌,夏跃伟,刘兰兰.ORACLE数据库安全策略和方法[J]煤炭技术,2012,(3)

[3]于淑云,马继军.Oracle数据库安全问题探析与应对策略[J].软件导刊,2010,(10)

[4]李红,刘志杰,謝晓尧.Oracle分布式数据库系统及网络安全策略研究[J].贵州师范大学学报(自然科学版),2011,(8)

[作者简介]

Java网络数据库编程及其应用 篇4

JDBC (Java Database Connectivity) 是Java实现数据库主要访问的API (Application Programming Interface) , 它与Microsoft的ODBC (Open Database Connectivity) 一样, JDBC主要是建立在X/Open SQLCLI (Call Level Interface) 等基础上的。JD-BC的主要是通过计算机管理存放在表中的数据, 因此定义了一系列与关系数据库, 如:数据库连接、SQL语句、结果集和元数据等, 在需要时进行交互的类和接口。

2 JDBC的主要接口和驱动程序

2.1 JDBC的主要接口

JDBC主要提供的有针对一般开发人员应用程序的JDBC API和底层的JDBC Driver API两种接口。

JDBC API它是一系列抽象的接口, 它的实现是由驱动程序开发商提供的。

JDBC中的驱动程序必须提供实现方法的接口。JDBC API被定义在java.sql包中, 其中定义了JDBC API用到的所有类、接口和方法, 主要的类和接口有:

(1) DriverManager类——处理驱动程序的装入, 为新的数据库连接提供支持。驱动程序要向该类注册后才能被使用。进行连接时, 该类根据JDBC URL选择匹配的驱动程序。

(2) java.sql.Driver接口——驱动程序接口, 负责确认URL与驱动程序的匹配、建立到数据库的连接等, 其中的方法需要有相应的驱动程序实现。

(3) java.sql.Connection接口——表示到特定数据库的连接, 其中的方法需要有相应的驱动程序实现。

(4) java.sql.Statement接口——为SQL语句提供一个容器, 包括执行SQL语句、取得查询结果等方法。

java.sql.ResultSet接口——提供对结果集进行处理的手段。

(5) JDBC Driver API是面向驱动程序开发商的接口。对于大多数数据库驱动程序来说, 仅仅实现JDBC API提供的抽象类就可以了。也就是说每一个驱动程序都必须提供对于java.sql.Connection、java.sql.Statement、java.sql.PreparedStatement和java.sql.ResultSet等主要接口的实现方法。如果目标DBMS提供有OUT参数的内嵌过程, 那么还必须提供java.sql.CallableStatement接口。每个数据库驱动程序必须提供一个java.sql.Driver类, 使得系统可以由java.sql.DriverManager来管理。一个典型的驱动程序是在ODBC上提供对JDBC的实现接口, 从而提供与ODBC接口的JDBC-ODBC桥。由于JDBC放在ODBC之后, 所以实现起来简单而且高效。

2.2 JDBC驱动程序

JDBC驱动程序可以分为下面四种类型:

(1) JDBC-ODBC桥驱动程序

Sun产品通过ODBC驱动程序提供JDBC的存取, 即经过ODBC驱动程序访问数据库。在大多数情况下, ODBC二进制代码必须在每个使用该数据库驱动程序的客户端安装, 所以这种驱动程序主要适用于公司内部网络, 或者在三层结构中用Java编写的应用服务器代码。

(2) 本机应用编程接口的Java驱动程序

此类驱动程序转换JDBC调用客户端的、针对特定数据库系统的API, 如Oracle、Sybase、Informix、DB2或其它的DBMS, 像桥驱动程序一样, 这种类型的驱动程序要求在每一个客户机上安装一些二进制代码。

(3) 数据库中间件的纯Java驱动程序

此类驱动程序将JDBC调用转换成为中间件供应商的协议, 然后通过中间件服务器转换成为DBMS协议。网络服务器中间件可以连接所有Java客户端到各种不同的数据库, 但是特定的协议取决于供应商。通常这种方式是JDBC最方便的选择, 提供商可为Internet用户提供产品套件。为了使这些产品能够支持Internet访问, 他们还必须处理安全、防火墙穿越等需求。各个提供商正在增加JDBC驱动程序到他们现存的中间件产品中。

(4) 直接连接数据库的纯Java驱动程序

这种驱动程序是本地协议的纯Java驱动程序, 它转换JDBC调用由DBMS直接使用的网络协议。这种方式允许从客户机到DBMS服务器的直接调用, 是Intranet访问的一种行之有效的解决方案。因为这些协议多数是专用的, 因此数据库提供商将成为这种驱动程序的主要来源。

3 JDBC使用方法

目前, Java使用最多的Applet是Web文件的一个组成部分。其中有数据库存取的Applet和能够使用JDBC来接触数据库的Applet。

首先Web浏览器从Web服务器中下载嵌有Applet的HTML页面, 解释并执行Applet字节码。当执行到有访问数据库的Java语句时, Applet直接将相应的Java命令发送给装在服务器上的JDBC。通过JDBC向后端数据库发出SQL请求, 然后数据库将处理结果通过JDBC直接返回给Applet。Applet通过JDBC访问数据库的方法是一种Web数据库访问的实现方案。

参考文献

数据库及其应用 篇5

摘要:介绍了专用于平板显示的数据电极驱动芯片STV7610A的结构特点、引脚功能和工作原理,给出了STV7610A在PDP显示系统中的应用方法。由于STV7610A能为PDP数据电极提供高压,因而具有较好的图像显示效果。

关键词:等离子显示器 高压驱动器 数据电极驱动芯片 STV7610A

1 概述

等离子显示器(Plasma Display Panel)是目前大尺寸电视中最看好的新技术,但因其成本居高不下,因而普及比较缓慢。实际上,PDP显示屏的成本有一半是在驱动电路上,而整个驱动电路则有超过一半的成本耗费在数据及扫描驱动线路上,因此,降低这些驱动模块的成本就显得至关重要。

等离子电视的核心技术是等离子面板的制造工艺和高压驱动电路设计,其中高压驱动电路的设计技术目前只有NEC、日本富士电子、德州仪器公司、意法半导体,松下半导体公司拥有。STV7610A是由意法半导体公司(STMicroelectronics)最新开发的一款低成本、高耐压数据电极驱动电路。它采用BCD(Bipolar-CMOS-DMOS)工艺,并集中Bipolar结构提供的最好模拟功能效能表示、CMOS的高集成度、功率器件的高耐压、高效率及可降低芯片功率损耗功率级线路等优点。该器件将高低压模块集成在同一芯片上。因此,用STV7610A作为PDP屏的数据电极驱动电路能更好地降低存储控制电路和驱动电路成本,缩减驱动电路体积。

(本网网收集整理)

2 STV7610A内部结构及性能特点

STV7610A主要功能模块可以分为四个部分,即逻辑部分和高压驱动部分(内部结构见图1)。逻辑电路部分主要由一个96位的移位寄存器(16位×6)、一个96个锁存器和基本的逻辑门构成,其主要功能是完成对信号的移位和寄存。逻辑部分中的移位寄存器主要采用双向移位寄存器来实实现整个PDP驱动芯片的双向移位功能,锁存器主要通过锁存控制信号完成对前级信号的锁存,以便需要时送给后级高压驱动部分。STV7610A逻辑块的电源电压为5V,高压驱动模块的输出电压可达100V、电流为90mA;同时它还具有以下特点:

(1) 芯片内部功耗低;

(2) 高压驱动模块有效高的耐压能力;

(3) 高速数据传输能力,fmax=20MHz;

(4) 工作温度范围宽,TA=-20~85℃。

3 STV7610A管脚定义和工作原理

STV7610A采用144管脚的`TQFP封装形式,各管脚分别按逆时针顺序排列在四周。其中包括96个高压输出管脚、13个电源管脚、6个逻辑输入管脚、6个逻辑输出管脚、5个控制管脚和18个空管脚。各管脚功能说明如下:

OUT1~OUT96(管脚4~36,73~105,112~141);高压输出端;

VSSSUB(管脚55):整个芯片衬底接地;

VSSSLOG(管脚54):逻辑块地;

VCC(管脚53):逻辑块电源;

VSSP(管脚40、68、109、144):驱动块地;

VPP(管脚1、2、66、107、108):驱动块电源;

A1~A6(管脚59~64):正向数据输入/输出端;

B1~B6(管脚49~44):反向数据输入/输出端;

CCK(管脚56):时钟输入端;

F/R(管脚52):移位方向控制端。当F/R=1时,A为输入端,B为输出端,移位寄存器执行正向移位功能;当F/R=0时,B为输入端,A为输出端,移位寄存器执行反向移位功能;

STB(管脚57):锁存使能控制端。当STB=1时数据锁存,当STB=0时允许数据通过;

POL(管脚50):极性反转控制端;

BLK(管脚51):输出置位控制端。当BLK=0时,所有输出端均为低;

其余管脚均为空脚。

为解决芯片高压部分的散热问题。TV7610A将高压输出端放置在一起,并采用了多重金属层技术,其中内层用来连接CMOS,而在顶端采用较厚金属层连接高压部分功率器件。为便地安装调试,将所有控制信号放置在芯片的同一侧。

各控制管脚所加信号与移位寄存器状态和高压驱动块输出状态的关系如表1、表2所列。

表1 移位寄存器真值表

输 入输入/输出移位寄存器F/RCLKAB输出端Q高上升沿输入输出正向移位高×输入输出维持低上升沿输出输入反向移位低×输出输入维持

表2 高压输出驱动块真值表

QnSTBBLKPOL输出端输出状态××低×低输出全低××高低高输出全高×高高高Qn数据锁存低低高高低数据输出高低高高高数据输出

现以正向移位为说明TV7610A的工作原理。当F/R=1时,在CLK时钟的上升沿,数据从Ai(i=1~6)输入移位至寄存器内,当STB=1时,锁存器对前级数据进行锁存,而当STB=0时,数据则由锁存器输出;只有BLK、POL全为高时,数据才能由锁存器输出至高压输出端。因此,当对高压输出端进行全高或全低控制时,只需满足BLK=1、POL=0或BLK=0即可。

4 基于TV7610A的PDP驱动电路

在采用ADS(寻址显示分离)技术的PDP中,为了实现不同的灰度等级,将一帧图像分8 个子场显示,每帧图像的开始是场准备期,每一个子场又由初始期、寻址期和维持期构成,其具体波形可参见图2。在驱动PDP时,场准备期和子场初始期主要通过TV7610A的全低工作状态实现(见表2);维持期通过相应驱动波形的工作状态来实现;而在寻址期扫描阶段,则TV7610A的移位工作状态来实现;为得到A电极(数据电极)在初始期、维持其与寻址期所需的电压波形,应使驱动芯片的电源引脚VPP和地引脚VSSP在不同的时刻具有不同的电压。

对于分辨率为852×480的42英寸等离子显示屏而言,A电极需852×3=2556根输出线,共需27片TV7610A,每个芯片有6根数据线,这样,共有162根数据线;为降低前级数据处理的难度,设计时可将两个相邻芯片定为一组,共有一组数据线。奇数片和偶数片分别使用频反向的不同时钟,即在一个时钟的上升沿,奇数片TV7610A进行数据移位,而在另一时钟的上升沿,偶数片TV7610A进行数据移位。这样,不提高时钟频率就能将数据输入线减少一半;但使用这种方式时,数据的输入格式也应做相应的处理。芯片的级联关系如图3所示。

在实际应用中,要确保利用TV7610A的所有电源引脚和地引脚。并且VSSSUB VSSSLOG必须接到同一电位;另外,为防止器件的闩锁效应,加电源时要按照先加逻辑块电源VCC,后加逻辑信号,再加驱动块电源VPP的顺序进行,关断电源时则应以相应的顺序进行操作。

5 结语

数据结构最短路径算法及其应用 篇6

关键词: 最短路径 Dijkstra算法 Floyd算法 图论

最短路径,就是在所有路径中找到一条距离最短的路径,而我们所说的最短路径不仅指地理意义的距离最短,而且可以引申到其他度量,如时间、费用、路线容量。相应地,最短路径问题就成为最快路径问题,最低费用问题等,所以我们所说的最短路径也可以看做最优路径问题。最短路径问题在交通网络结构的分析,交通运输路线的选择,通讯线路的建造与维护,运输货流的最小成本分析,城市公共交通网络的规划等方面,都有直接应用的价值。最短路径问题在实际中常用于汽车导航系统及各种应急系统等这些系统,一般要求计算出到出事地点的最佳路线的时间应该在1s到3s内,在行车过程中还需要实时计算出车辆前方的行驶路线,这就决定了最短路径问题的实现应该是高效的。经典图论与不断发展完善的计算机数据结构及算法的有效结合使新的最短路径算法不断涌现。

一、图论基本概念

1.图的定义。图(graph)是一种较线性表和树更为复杂的数据结构,图与线性表和树的结构区别表现在结点之间的关系上,线性表中的每个结点(除首尾结点外)都有一个前驱结点和一个后继结点,结点与结点之间的关系是一对一的关系;树上的每个结点都有一个父结点(根结点除外)和一个或多个孩子结点(叶子结点除外),结点与结点的关系是一对多的关系;而图中结点之间的关系是多对多的关系,结点与结点之间的连接是任意的,每对结点间可以有连接也可以没有连接。

2.图的存储结构。除了存储图中各个顶点本身的信息外,还要存储顶点与顶点之间的所有关系。常用的图的存储结构有邻接矩阵、邻接表、十字邻接表和邻接多重表。

二、最短路径问题

所谓最短路径即从图G中某对顶点Vi和Vj(i≠j)之间的所有路径中选出权值之和最短的一条路径作为顶点Vi到顶点Vj的最短路径。其中边的权值可多种,如路途、费用、耗时等,也可以同时存在多种权值,根据给定的比例,算出边的综合权值。

1.最短路径。在一个无权的图中,若从一个顶点到另一个顶点存在一条路径,则称该路径长度为该路径上经过的边的数目,等于该路径上的顶点数减1。由于从一个顶点到另一个顶点可能存在多条路径,每条路径上经过的边数不同,即长度不同,把长度最短的那条叫做最短路径。

2.最短路径算法。求图中最短路径有两方面问题:求图中某一顶点到其余各顶点的最短路径与求图中每一对顶点之间的最短路径。它们分别有Dijkstra算法和Floyd算法。

2.1Dijkstra算法。Dijkstra算法又称为标号法,是用于求解单源点最短路径的实用算法,至今仍然被公认为是解决从固定点出发到网络中的任意顶点的最短路径问题的较好方法之一。基本思想如下:设置并逐步扩充一个集合S,存放已求出其最短路径的顶点,则尚未确定最短路径的顶点集合是V-S,其中,V为网中所有顶点集合。按最短路径长度递增的顺序逐个用V-S中的顶点加到S中,直到S中包含全部顶点,而V-S为空。

2.2Floyd算法。Floyd算法能够求得任意顶点之间的最短路径。基本思想是任意2个顶点vi到vj的距离的带权邻接矩阵开始,每次插入一个顶点vk,然后将vi到vj间的已知最短路径与插入顶点vk作为中间顶点时可能产生的vi到vj路径距离比较,取较小值以得到新的距离矩阵。如此循环迭代下去,依次构造出N个矩阵D(1),D(2)…D(n),当所有顶点均作为任意 2个顶点vi到vj中间顶点时得到的最后的带权邻接矩阵D(n)就反映了所有顶点对之间的最短距离信息,成为图G的距离矩阵。

三、 应用举例

1.Dijkstra算法在公交网络中的应用。在纷繁复杂的城市公交网中,如果想寻找到一条从当前某个站点到达另一个目的站点的最短路径应该怎样实现呢?针对这个问题采用图论中最短路径思想进行了思考和研究,并采用Dijkstra算法实现搜寻计算操作和过程。

(1)实际问题描述。公交网络中最短路径问题可以描述为从某起始站点S出发到达目的站点E,其中S和E之间可行的线路往往不只一条,而是有很多条,那么这么多可行线路中哪一条是最短的呢?这里“最短”指实际走过的路程最短,或指在不计算公交换乘花费时间和公车保持匀速行驶的前提下,能够以最短时间到达目的地中的“最短”。要求解这个问题如果不考虑其他各方面的复杂因素,就可以看成一个简单的最短路径问题。

(2)数学模型建立。起始站点、目的站点及所有可行路径和中间站点构成的交通网络,可以抽象为一个图状的数据模型——有向带权图记为G=(V,E,L),其中V表示所有站点的集合,假设共有N个站点;E表示所有直接通路或直通边的集合,假设共有M条直通边,注意,在实际应用中,这里的边是有方向性的,边的方向表示该直接通路的可行方向;L表示每条直接通路对应的边权集合,即每条直通边对应的距离值或时间开销等。

(3) 实际问题抽象化。经过上述分析和建模,实际最短路径问题可抽象为有向带权图中两顶点之间的最短路径问题。

四、结语

若寻找从起始点到其他所有顶点的最短路径,按照Dijkstra算法则最多需要经过N-1步的搜寻计算操作(N表示G中的顶点个数)。在实际应用中,Dijkstra算法称为单源点最短路径算法。事实上,Dijkstra最短路径算法除了可以用在公交网络上之外,还可以用在现实生活的很多方面,如邮政线路、物流线路、管道布线等,我们还可以不断将其推广应用于更多方面,从而使数学与计算机科学能够更充分地为人类服务。

参考文献:

[1]严蔚敏,吴伟民.数据结构[M].北京:清华大学出版社,2002.

[2]李春葆,曾慧,张植民.数据结构程序设计题典[M].北京:清华大学出版社,2002.

[3]张永,李睿,年福忠.算法与数据结构[M].北京:国防工业出版社,2008.

[4]刘玉龙.数据结构与算法实用教程[M].北京:电子工业出版社,2007.

[5]徐俊明.图论及其应用[M].合肥:中国科学技术大学出版社,2004.

数据分发服务及其应用 篇7

关键词:数据分发服务,全局数据空间,发布订阅

信息是构建系统的基本要素,是系统中各组成部分相互交互的主要媒介。随着计算机、网络和传感器等现代信息技术的发展,大量的信息以数据的形式进入到以计算机为核心的信息处理系统中。随着各种类型数据源的大量出现,信息处理系统需要将不同地点和不同时间的数据进行整合,数据分发过程随着数据需求的多样性而变得更加复杂,数据分发不仅需要建立两者间的数据传递关系,还需要提供数据在时间、空间和功能上的扩展能力。

数据分发作为现代信息系统中不可缺少的重要环节,其功能需求可划归为三个方面:建立供需关系、传递数据、构建可靠安全的分布式自组织体系。OMG (Objec Management Group)组织从这些基本需求出发制定了数据分发服务DDS (Data Distribute Service)规范,该规范定义了一个可扩展、与平台无关、与位置无关的基础服务模型,明确定义了数据分发服务的实现框架和用户访问接口。

随着DDS标准的逐步完善,越来越多的业务采用以数据为中心的体系架构,将业务系统构建于数据分发服务(DDS)之上。DDS在分布式多媒体系统中的应用是DDS应用中的一个典型应用场景,从此应用中可以看到数据分发服务为各类以数据为中心的增值服务带来的好处。

1 数据分发服务的基本需求

数据分发服务的目的是为应用提供数据传递服务,其最优原则是按需分发的原则,即数据源产生的数据传递给对此数据“感兴趣”的用户。如何在正确的时间从正确的地点获取正确的数据是数据分发服务面对的最大问题。数据分发服务中包含三个主体:发布者、订阅者、传送网络。从主体的需求和相互关系上,可将数据分发服务的基本需求分为三个部分:

(1)建立供需关系

数据分发服务的本质是基于需求匹配的数据分发,订阅者对所需数据提出自己的需求,发布者在订阅者需求的维度和粒度上发布自己能提供的数据及其相应的服务能力。当发布者能满足订阅者的需求时,发布者可将满足要求的数据发送到订阅者。在数据分发服务中,订阅方需求是促进数据发布服务产生和发展的最基本的动力,是建立发布者和订阅者间供需关系的基本原则,同时也是确定发布方宣告内容的基础。这些需求依附于特定的数据或者数据集合上,用以确立发布者和订阅者在此数据或者数据集合上的发布/订阅契约关系。这些需要协商的需求从表现形式上可分为两类:内容和服务质量。内容需求依从于数据的属性。服务质量需求依从于数据的状态。

内容需求包括:

数据归属:定义数据归属的逻辑区域。

数据类型:确定所传送数据的类型,支持的类型除了规范定义的标准静态类型外,还需要支持用户自定义的动态扩展类型,即支持类型动态扩展;

服务质量需求包括:

数据易变性:数据的生存期多长,能否提供数据的历史记录等;

数据呈现:能否为数据设定归属区域,能否支持数据发送和接收的顺序控制;

容错能力:能否支持失效检测,能否支持冗余容错(源冗余和路径冗余);

网络传输:能否支持传输时延控制;

Qos可扩展能力:能否支持自定义Qos参数。

(2)高效数据传送

数据从发布者到订阅者需要经过各种类型的网络设施,它们构成了不同类型和安全级别的子网络。数据传送方式必须能适应不同的网络环境,充分利用各类网络的特点优化网络间的负载流量。数据传送需要同时支持LAN和WAN的环境,支持基于IP协议的网络。

(3)构建可靠安全的分布式自组织体系

数据分发服务构建在分布式网络结构中,其中各个主体间的关系是动态易变的,因此需要相应的服务系统具有动态自组织的能力,动态适应系统结构和内容的扩展和改变。在数据分发服务系统中,对服务的扩展能力的要求主要包括:发布者和订阅者可随时加入或者离开,数据的发布和撤销能自动被所有订阅者发现,能自动剔除无效的发布者,当服务能力或者网络条件等发生变化时能自动调整发布/订阅关联关系。对于数据的安全性,服务系统应提供对数据内容和数据访问的安全性保障措施,确保数据不会被破坏、伪造和非法访问。

2 数据分发服务的实现框架

信息技术的发展使得系统中的数据量呈几何级的增长, 数据源和数据需求间呈现多对多的复杂关系, 应用对数据的时间和空间需求变得更加丰富, 数据分发成为构建信息系统重要执行环节。传统的信息系统中, 每个系统独立实现数据分发服务, 实现特定的数据分发要求, 这样做不仅产生大量重复劳动和资源浪费, 同时, 由于各种实现没有统一的规范, 导致相关实现的质量也良莠不齐, 各种独立的实现之间互通也是一件困难而费时的工作。OMG组织为此建立了数据分发服务DDS系列服务规范, 规范定义了数据分发服务的体系架构和应用访问接口, 明确了应用访问服务的接口和行为要求。规范还定义了数据类型的定义和扩展方法x-type, 使得应用可以定义非标准数据类型, 同时, 为各厂商的DDS产品间实现交互, 还定义了标准线路交互协议RTPS。

DDS规范充分考虑了系统的可动态扩展能力。在参与主体上,发布者和订阅者在时间和空间上完全解耦合的设计,使得发布者和订阅者可以在任意时间加入或者离开系统。在内容上,DDS允许随时添加新的数据和数据类型,并通过发现机制(discovery)使得订阅者能及时发现并使用新数据。在网络扩展上,DDS可通过DDS路由服务实现更大范围的数据分发服务,将DDS扩展到WAN网络中。

DDS规范目前正在制定与安全相关的规范,DDS安全是一个多层次多维度的保护体系,在新规范中,DDS至少提供了三种内置安全机制:基于主题的访问控制、基于采样值的标签机制、基于采样值的签名和认证机制。

DDS规范为数据分发服务定义了两个层次的应用接口:以数据为中心的发布订阅DCPS (Data Centric PublishSubscribe)和数据本地重构层DLRL (Data Local Reconstruction Layer)。结构如图1所示。

DLRL是可选层,目的是方便应用直接访问数据,实现与本地语言的无缝集成。DCPS是数据分发服务的基础实现框架,提供了数据发布和订阅相关的所有功能。后面将重点介绍DCPS。

2.1 DCPS概述

DCPS是建立全局数据空间(GDS)概念上,所有应用均能访问它,发布者和订阅者可通过GDS交换数据。DCPS的概念模型如图2所示。

区域(Data Domain):DDS实体归属的逻辑区域,每个域表示一个独立的全局数据空间。

参与者(Domain Participant):每个参与者对应一个使用DDS服务的用户,任何需要使用DDS的用户必须通过参与者访问全局数据空间。

发布者(Publisher):数据发布的执行者,它可以支持多种数据类型的发布,发布者可与多个数据写入器(Data Writer)关联。应用可利用数据写入器实现对特定类型数据的更新操作。

订阅者(Subscrber):数据订阅的执行者,它可以支持多种数据类型的订阅,订阅者可与多个数据读取器(Data Reader)关联,应用可利用数据读取器实现对特定类型数据的读取操作。

数据写入器(Data Writer):应用向发布者更新数据的对象。每个数据写入器对应一种特定的主题(topic)。

数据读取器(Data Reader):应用从订阅者读取数据的对象。每个数据读取器对应一种特定的主体(topic)。

主题(Topic):数据的抽象概念,主题表示具有相同结构的一组数据,每个主题由三个部分组成:名称、类型、Qos,主题是建立发布者和订阅者供需关系的关键对象。

DCPS建立了一个围绕主题为中心的层次结构,应用通过数据写入器更新需要发布数据,通过数据读取器获取订阅的数据。发布者和订阅者提供相应的主题发布和主题订阅服务。

2.2 DCPS实现框架

DCPS是对数据分发服务框架的规范描述,定义了应用访问接口和访问行为,描述了系统的组成结构及各模块间的相互关系,DCPS服务模型图参见图3.

基础设施模块是构建其它模块的基础,定义了其它模块公用的基础组件,主要包括:服务质量定义、交互方式等。域模块是服务的入口,它是数据分发服务基础组件的对象容器,可用于生成数据分发服务的三个实体对象:发布者、订阅者和主题。发布者模块实现数据发布服务,通过发布者和与类型相关的数据写入器实现特定类型主题的发布和更新。订阅者实现数据订阅,通过订阅者和与类型相关的数据读取器实现特定类型主题的订阅和读取。主题定义模块用于定义一种特定类型的主题,并为主题设定相关的服务质量。

DCPS对数据分布服务的抽象主要从两个层面进行:内容模式和行为模式。内容模式提供了对数据的描述方法,行为模式提供了数据发布和订阅的操作规范。

1)内容模式

DCPS对数据的描述分为三个层次:主题(topic)、实例(instance)、采样(sample)。主题表示数据的属性,是一组具有相同类型的数据的抽象,它由三个部分组成:主题名称、数据类型、主题的服务质量。实例表示具有不同关键字的主题,关键字由主题对应的数据类型中特定字段或者字段集合组成,不同的关键字表示不同的实例。采样表示特定时间点的实例的值。层次化数据描述方法为各种围绕数据的相关操作提供了不同层次的数据实体抽象。

2)行为模式

DCPS行为模式包含发布操作和订阅操作两部分。发布操作定义了从应用更新数据到将数据分发到订阅者的过程。订阅操作定义了从接收数据到将数据传递到应用的过程。由于数据发布服务的目标是使应用能获取正确的数据,为了满足应用对数据需求的多样性,DCPS设计了两级过滤机制:第一级是建立发布者和订阅者间供需关系,发布者依据供需关系进行数据分发;第二级是在订阅过程中建立内容过滤机制,应用可通过过滤器(filter)获取满足特定要求的数据。

供需关系是建立在发布方与订阅方的对等实体间,DCPS定义了两组对等实体用于供需关系匹配:DataWriter/DataReader和Publisher/Subscriber。DataWriter/DataReader间的匹配关系建立在主题及其对应Qos参数上。主题匹配通过主题名称和数据类型实现,Qos参数匹配由一组服务质量参数构成,参数主要包括:

DURABILITY:定义数据在DataWriter中的生存期。比如:VOLATILE表示数据仅存在于发送阶段,DataWriter不保存历史数据。

DEADLINE:定义数据更新周期。订阅者在指定的deadline时间内未收到数据更新时,会得到相关的违例指示。

LATENCY_BUDGET:定义数据从应用写入DDS到远端应用获取数据间的最大时延。

LIVELINESS:定义DataWriter生存状态指示方法,服务自动发送或应用发送等。

RELIABILITY:定义数据是否支持可靠传送。

DESTINATION_ORDER:定义数据接收顺序判定标准,可依据发送方的时间或者接收方时间两种标准。

USER_DATA:用户自定义Qos参数。

Publisher/Subscriber间的匹配关系仅建立服务质量参数上,参数主要包括:

PRESENTATION:定义数据更新顺序和关联关系。这个定义可用于接收方明确多个数据更新间的关系和顺序,实现基于关系和顺序的数据传递服务。

内容过滤在订阅方的订阅者和数据读取者两个实体上进行。订阅者上的内容过滤由content filter主题对象实现,该主题上可设定类SQL的表达式对主题中各子项的值的范围和大小进行筛选,订阅者将符合条件的数据发提交给对应的数据读取器。数据读取器上的内容过滤通过设定read/query条件,条件设定方法与content filter主题对象相同,数据读取器将符合条件的数据提交给应用。

3 DDS在分布式多媒体系统中的应用

分布式多媒体系统是集成了计算机、网络和信息技术的多媒体服务系统,它能处理、管理、发送和演示具有服务质量保证的多媒体信息,多媒体信息的内容既包括离散的媒体(文件、数据、图像),也包括连续的媒体(视频、音频),用户既能获取满足自身需要的多媒体信息,也能进行实时多媒体交互(远程协作、会议电话等)。

传统多媒体系统拥有一个多媒体服务中心,它的存在使得用户和多媒体服务提供者建立了强耦合关系,主要体现在以下四个方面:

空间:多媒体服务必须有明确的位置。

主体:用户必须知道谁提供了哪些服务,以便根据自身需要访问不同的服务提供者。

格式:用户必须支持特定的流媒体格式,如:分辨率、采样率、编码等。

资源:用户与中心间的网络链路及中心服务能力对用户的服务质量影响较大。

上述问题严重障碍了多媒体系统在时间、空间、内容、服务方式等方面的扩展能力。为克服上述问题,需要构建一个可扩展、可灵活配置的分布式多媒体系统。可采用以数据为中心的模式基于数据分发服务构建这样的系统,构建方法如下描述:

(1)将每种媒体数据设定为一个主题,每种媒体拥有自己独有的类型和格式,比如:声音和图像分别建立不同的主题,不同编码的声音建立不同的主题,这样,不同需求的用户可订阅不同类型的主题。

(2)每种媒体的属性(类型、编码、采样率、分辨率等)利用DDS的发现协议SDP (Simple Discovery Protocol)进行发布,任何参与者可自动发现新的媒体数据,订阅并使用它。系统可利用这些信息建立媒体信息发布者和订阅者间的匹配关系。

(3)多媒体信息制造者将多媒体源数据转换为不同属性的流媒体发布到多媒体消费者,多媒体消费者根据自己的需要订阅流媒体,并根据多媒体信息的属性完成其解码、融合等工作。

(4)可在系统中增加多种多媒体服务扩展,比如:转码服务、图像融合、图像标注、录像等。

利用上述方法构建的多媒体服务系统具有良好的扩展性,任何新的服务、编码等特性均可透明的添加到系统中,用户可通过动态发现和自由融合的方式使用流媒体。同时,通过数据为中心的方式,我们可以方便的构建层次化的服务体系,比如在多媒体系统中,有些多媒体制造者是多媒体的信息源,有些多媒体制造者是利用其它多媒体信息制造新媒体信息。

多媒体业务是一种典型的IT增值业务,当前,IT增值服务从内容到形式上均呈现迅速发展的势头,增值服务的用户不断增加,服务内容不断更新,传统方式构建的增值服务体系将难以适应这样的发展,将DDS融入增值服务体系中,构建易扩展、高性能的增值服务数据分发平台是增值服务适应未来系统大容量、分布式发展方向的有效途径。

4 结论与展望

数据分发服务是现代信息系统的重要组成部分之一,随着数据分发服务需求的增长,构建独立的数据分发系统已成为必然的趋势。DDS规范为构建高性能、高可靠、可扩展、可配置的数据分发系统提供了标准规范,为构建以数据为中心的业务系统提供了基础服务平台。DDS规范定义的标准应用访问接口为用户方便的进行系统集成和扩展提供了保障。目前DDS已广泛应用于军事、航空、航天、交通、医疗、金融等领域,通过DDS在分布式多媒体服务中的应用示例,可以看出数据分发服务在以数据为中心的增值服务中的广泛应用前景。随着DDS标准的不断发展,DDS将与更多的技术和服务相结合,比如:WEB服务、RMI、SOA、IP电话、多媒体服务等,DDS规范将根据这些业务的特点定义更丰富的服务质量参数,为业务系统提供更完善的服务质量保障。

参考文献

[1]OMG.Data Distribution Service for Real-Time system.v1.2, formal/2007-01-01

[2]Extensible and Dynamic Topic Types for DDS, Beta1, ptc/2010-05-12.

[3]卢传富, 蔡志明, 夏学知.数据分发服务体系结构的研究[J].计算机与数字工程, 2008 (5) .

[4]EMDS:Extensible Multimedia Distribu-tion Service, J.Povedano-Molina/2010-05-25..

数据库及其应用 篇8

关键词:Oracle分布式数据库,应用研究

1 Oracle分布式数据库的现状

Oracle分布式数据库是目前最主流的C/S或B/S体系结构的数据库, 同时也是世界上使用最多、范围最广的数据库之一。

Oracle分布式数据库是由若干个服务器组成, 其中每个服务器间都拥有自己的数据库及其数据库管理系统, 它们通过网络连接到一起, 从物理结构上看是分布式的, 但从逻辑结构上看是属于同一系统的, 而客户的实际体验也和同一个系统无异。

(1) 访问完全透明。因为分布式数据库是属于同一系统的, 所以用户访问数据库时, 不需关心、也不用去关心具体的数据库所在的位置, 只需关心能够像访问本地计算机一样去访问就可以了。只要所使用的计算机联网, 知道如何去搜索数据, 那么数据就和在眼前没有任何分别, 整个的访问过程也是透明的。

(2) 分布式处理事务与管理控制。远程访问数据时, 要经过多个服务器处理, 才能将数据返回到本地计算机中。而多个站点相互协作处理提交的作业, 可以充分利用多台主机的处理能力, 合理分配网络上的计算机资源, 达到性能优化的目的。允许分布在不同区域的人员对其自身的数据库进行控制。

(3) 均衡网络负载和响应时间加快。分布式数据库中, 能够保存远程数据的备份, 这样下次进行访问时就不需再次连接到远程服务器上, 而是在本地备份上就能够直接访问资源, 减少了网络流量, 均衡了网络负载。当读取的数据在本地计算机中时, 就可以由用户所使用的计算机执行, 响应时间更快。读取数据时, 客户端可以从多个服务器中读取, 优先选择响应最快的服务器, 从而提高了数据访问速度。

(4) 高可靠性, 可用性好。分布式数据库由于由若干个站点构成, 因此出现故障时也只会在局部几个站点出现故障, 而不会影响到所有站点。从这点上能够看出, 分布式数据库比传统数据库的可靠性更高。从原有数据库的基础上进行扩展就可以形成一个分布式数据库, 这比重建一个新的数据库系统要简单、容易很多。这样不仅节约了投资成本, 也提高了对原有数据库的利用率, 降低了因为新建数据库造成的数据丢失、损坏等现象发生的可能性。

2 Oracle分布式数据库存在的问题

(1) 安全性和保密性。由于本地计算机用户知道远程数据库用户的口令, 且本地用户通过访问远程表, 就可以赋予和远程表拥有者相同的权限, 可以对数据进行随意的修改、破坏。分布式数据库的数据是存放在不同地区的不同计算机上, 通过网络来实现控制, 人为攻击数据库, 如黑客入侵等引起的安全问题, 数据共享过程中存在的安全隐患以及网络本身就存在安全性和保密性较低的特点, 因此存放的数据安全性得不到保障。

(2) 故障率高。因为数据几乎全部都分布在远程网络上, 想要进行读取时也必须通过远程网络来完成, 而当遇到网络传输速率 (即网速) 不快的情况时, 系统进行响应的时间会变慢。当遇到故障发生后, 系统想要进行恢复因其自身系统的复杂性也存在一定的困难, 因此可靠性有待进一步提高。因此i数据存放时要将数据和事务日志这两者进行分开存储, 如若存放在一起, 当计算机因故障无法运行时, 那么相应的数据也就无法通过事务日志进行恢复了, 可以大大提高数据的可用性。

(3) 数据的存取复杂。目前来说, 在分布式数据库进行存取数据操作相对于集中式数据库而言, 更复杂, 系统开销更大, 因为它需要将所查询到的数据通过多个服务器返回到本地计算机中去。而原来在集中式系统中存取数据的技术又不适用于现有的分布式数据库系统中。原本在一个服务器上的数据, 现在要通过网络在若干个服务器上进行存取, 达到数据共享的目的, 无疑对系统的性能要求更高。

3 Oracle分布式数据库系统优化的解决方案

3.1 编写具有健壮性的代码

分布式数据库中的数据时海量, 而面对这些海量数据进行处理就必须使用程序来查找, 如搜索引擎等。尤其是面对复杂、无序的数据进行处理时, 更需要在保证所查询数据的准确性之外, 还要保证数据处理效率。

3.2 建立缓存机制和使用临时表、中间表

当数据量增加时, 缓存的大小制约着数据处理的成败, 同时也要考虑将数据进行汇总, 把大表转换成小表, 切换成一个个的带索引小表, 最后通过一定的规则进行合并。这样不仅可以使查询效率加快, 不需要直接到每个服务器中去查找数据, 只需要借助于每个表项的索引就能够查找到所需数据, 也会降低可能产生的风险。

3.3 提高分布式数据库的安全性

(1) 根据安全性级别设置安全机制。不同的数据库的安全级别是不同的, 要根据实际数据库所需的安全性级别来设置数据库。如一般性的站点可采取对数据库访问者进行分类对待, 给每一类分别以不同的操作权限。安全性较高的站点可以在数据库中使用加密机制, 来保障数据库的安全。设计人员在部署数据库时, 就应该先寻找数据库服务器中可能因修改而产生的漏洞和弱点, 时刻注意保护数据库的安全。

(2) 物理层上保护。内部安全和外部安全同等重要。保护数据不受入侵者的物理破坏, 保护设备的正常运行, 保护不受洪水、电力等的破坏。按照要求制定具体措施, 对部门内部人员赋予安全等级。

(3) 加强数据审计。可以通过对系统日志的扩充来记录用户和相关操作的信息, 一般要求数据库管理系统能够将所有的操作记录下来, 系统保留一个日志文件, 用于事后调查和分析。

(4) 数据一致性。数据的一致性也属于安全问题, 在日常运行过程中会受到各种各样的人为或非人为的破坏。为了解决这一问题, DBMS一般都要提供恰当的系统控制、备份和恢复过程等。

4 结束语

Oracle分布式数据库使用起来既方便又快捷, 不仅提升了使用效率, 也实现了异地存储。对于Oracle分布式数据库的应用还有待于进行进一步的研究。

参考文献

[1]赵小航.分布式数据库系统安全隐患及其对策[J].科技信息, 2009 (12) .

[2]陈永杰, 郭巍, 杨芳南, 陈旭东.Oracle9i高级复制在综合网管中的应用研究[J].中国科技信息, 2007 (06) .

数据库及其应用 篇9

社会正趋于现代化、信息化, 诸如C、JAVA等计算机编程语言繁多, 在程序开发中可能会运用到多种语言, 而运用多语言开发软件, 会面临程序连接和数据交换等难题。虽然开发与数据库相关的程序, 能利用编程语言把数据库文件转录成文本文件, 继而与编程语言进行数据交换以实现程序与数据库间的数据交换, 但它会给软件开发者带来不便。对此, 诸如ODBC、DAO等数据库编程接口孕育而生, 它能为数据资源提供接口以准许用户的程序实现多数据库连接, ODBC能实现最基本的ASCII文本到繁杂的主框架数据库等进行数据连接, 利用SQL查询语句, 访问其所能支持的所有数据资源, 轻松实现数据库与应用程序间的数据交换。

VC++作为适用的开发工具, 能提供齐全的类库和友好的交互界面, 能满足不同编程人员所需, 能使用ODBC API或利用MFC中的ODBC类实现数据库编程。但在用ODBC API进行编程, 过程中产生大量的代码, 若使用VC++类中封装好的ODBC API, 能更简便地进行应用编程。本文将浅析ODBC数据库接口及其VC++6.0应用程序的设计。

2 ODBC

ODBC (开放数据库互连) 是微软公司提出的数据库访问应用程序接口标准, 其定义了访问数据库API的规范, 因此关系数据库均提供了ODBC驱动程序。ODBC是基于动态链接库 (DLL) 的独特结构, 它能让程序模块化。运用ODBC32.DLL定义程序接口, 在运行程序时O D B C 3 2.D L L在由W I N D O W S控制面板中O D B C管理模块维护的ODBC32.INI注册表基础上, 明确并跟踪相关可用的数据库DLL, 这也就使得单个应用程序实现多DBMS的数据访问。基于C/S结构ODBC结构是由应用程序 (Application) 、驱动程序管理器 (Driver Manager) 、驱动程序 (Driver) 以及数据源 (Data Source) 组成。

2.1 应用程序

应用程序能实现用户和接口间进行交互, 并调用ODBC函数给出SQL请求以提取结果作出错误处理, 它藉ODBC界面执行以下工作: (1) 请求与数据源进行连接或交互; (2) 将SQL请求发送到数据源; (3) 定义存储区域和数据格式为S Q L请求的结果; (4) 请求并处理错误; (5) 必要时, 进行结果报告; (6) 为交互控制提交请求或回滚操作; (7) 结束与数据源的连接。

2.2 驱动程序管理器

驱动程序管理器能通过调用函数并使用DLL, 实现应用程序所需驱动的加载和调用, 使其连接到数据源, 它能管理多个应用和驱动程序。它处于“.DLL”文件中, 它除了装载驱动程序其主要工作: (1) 使用ODBC INI文件将数据源映射到特定的Driver DLL; (2) 服务初始化并调用ODBC; (3) 提供ODBC函数入口指针给每个驱动程序; (4) 为O D B C调用提供参数和序列验证。

2.3 驱动程序

驱动程序也处在.D L L文件中, 它执行O D B C的函数调用, 将SQL请求相应的数据源结果传递给应用程序。其工作如下: (1) 建立与数据源的连接; (2) 提交SQL请求给数据源; (3) 翻译请求的数据格式; (4) 将结果传递给应用程序; (5) 将错误格式转换为错误代码并返给应用程序; (6) 必要时, 申明和操纵游标; (7) 若数据源需要ODBC初始化, 则初始化O D B C。

2.4 数据源

数据集及其关联环境构成数据源, 它包括了操作系统、数据库系统 (DBMS) 以及网络。应用程序无须制定特定的数据库系统, 只要利用标准API就能连接数据源。

3 MFC的ODBC类

M F C O D B C类具有功能齐全、简便易懂等特点, 在实际开发中应用范围最广。在MFC 1.5以后的版本中, 相关ODBC功能的类都封装在MFC ODBC类中, 通过它们与ODBC接口, 能使用户避免ODBC API的繁琐处理, 直接进行数据库的相关操作。MFC ODBC类包括有C D a t a b a s e、C R e c o r d s e t、C R e c o r d V i e w以及CField Exchange等类。

4 VC++应用程序设计

4.1 程序结构

本文将设计员工工资管理系统, 运用VF 6.0数据库接口以及VC++实现数据的增删改以及计算等功能, 计算是将基本工资与奖金的数据相加。VF数据库名lyl包括有staff表, 其中包含有员工号 (staff_id) ;员工名 (staff_name) ;工资 (basewage) ;奖金 (bonus) ;总计 (totals) 。

4.2 程序源码

限于篇幅, 如下是增添员工部分代码:

5 结语

通过数据库编程接口能有效地避免应用程序与数据库间进行数据交换的大量编码, 在满足程序需求的情况下, 能让用户得到更好地效率及应用。综上所述, 在VC++设计应用程序时, 运用数据库接口进行编程是可行的, 它能使编程变得更为简便。

参考文献

[1]廖远来.数据库编程接口及其VC++应用程序设计[J].电脑与电信, 2007, 05:63-65+68.

[2]李健平, 戴子文, 王雪力, 刘芳.基于ODBC的Visual C++应用程序设计[J].甘肃科技纵横, 2011, 02:23-24+188.

[3]高铁军.VC 4.1数据库接口及其数据库功能的实现[J].黄金学报, 1999, 02:138-141.

数据挖掘技术及其应用 篇10

随着网络、数据库技术的迅速发展以及数据库管理系统的广泛应用,人们积累的数据越来越多,由此,数据挖掘技术应运而生。下面就数据挖掘相关知识及其应用进行介绍。

1 数据挖掘的定义

数据挖掘(Data Mining)就是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。它是一种新的商业信息处理技术,其主要特点是对商业数据库中的大量业务数据进行抽取、转换、分析和其它模型化处理,从中提取辅助商业决策的关键性数据。

2 数据挖掘的功能

数据挖掘通过预测未来趋势及行为来做出决策,它的目标是从数据库中发现隐含的、有意义的知识,主要有以下五类功能。

(1)自动预测趋势和行为

数据挖掘自动在大型数据库中寻找预测性信息,以往需要进行大量手工分析的问题如今可以迅速直接由数据本身得出结论。

(2)关联分析

数据关联是数据库中存在的一类重要的可被发现的知识。若两个或多个变量的取值之间存在某种规律性,就称为关联。关联可分为简单关联、时序关联、因果关联。关联分析的目的是找出数据库中隐藏的关联网。有时并不知道数据库中数据的关联函数,即使知道也是不确定的,因此关联分析生成的规则带有可信度。

(3)聚类

数据库中的记录可被划分为一系列有意义的子集,即聚类。聚类增强了人们对客观现实的认识,是概念描述和偏差分析的先决条件。聚类技术主要包括传统的模式识别方法和数学分类学。

(4)概念描述

概念描述就是对某类对象的内涵进行描述,并概括这类对象的有关特征。概念描述分为特征性描述和区别性描述,前者描述某类对象的共同特征,后者描述不同类对象之间的区别。生成一个类的特征性描述只涉及该类对象中所有对象的共性。生成区别性描述的方法很多,如决策树方法、遗传算法等。

(5)偏差检测

数据库中的数据常有一些异常记录,从数据库中检测这些偏差很有意义。偏差包括很多潜在的知识,如分类中的反常实例、不满足规则的特例、观测结果与模型预测值的偏差、量值随时间的变化等。偏差检测的基本方法是寻找观测结果与参照值之间有意义的差别。

需要注意的是:数据挖掘的各项功能不是独立存在的,在数据挖掘中互相联系,发挥作用。

3 数据挖掘的常用技术

数据挖掘是许多学科的交叉,运用了统计学、计算机、数学等学科的技术,以下是常见和应用最广泛的技术。

(1)分析技术

在数据库字段项之间存在两种关系:函数关系(能用函数公式表示的确定性关系)和相关关系(不能用函数公式表示,但仍是相关确定性关系),对它们的分析可采用统计学方法。

(2)聚类分析和模式识别技术

聚类分析主要是根据事物的特征对其进行聚类或分类,即所谓物以类聚,以期从中发现规律和典型模式。这类技术是数据挖掘的最重要的技术之一。

(3)决策树分类技术

决策树分类是根据不同的重要特征,以树型结构表示分类或决策集合,从而产生规则和发现规律。

(4)人工神经网络和遗传基因技术

人工神经网络在数据挖掘中也扮演着非常重要的角色。人工神经网络可通过示例学习,形成描述复杂非线性系统的非线性函数,这实际上是得到了客观规律的定量描述。目前在数据挖掘中,最常使用的两种神经网络是BP网络和RBF网络。

(5)规则归纳技术。

规则归纳相对来讲是数据挖掘特有的技术,它指的是在大型数据库或数据仓库中搜索和挖掘以往不知道的规则和规律。

(6)可视化技术

可视化方法是数据挖掘不可忽视的辅助技术。数据挖掘通常会涉及较复杂的数学方法和信息技术,为了方便用户理解和使用这类技术,必须借助图形、图像、动画等手段形象地指导操作、引导挖掘和表达结果等,否则很难推广普及数据挖掘技术。

4 数据挖掘的实施过程

数据挖掘的一般实施步骤如下:

(1)确定业务对象,清晰地定义出业务问题

清晰地定义出业务问题,认清数据挖掘的目的是数据挖掘的重要一步。挖掘的最后结果是不可预测的,但要探索的问题应是有预见的。为了数据挖掘而数据挖掘则带有盲目性,是不会成功的。

(2)数据准备

①数据选择:搜索所有与业务对象有关的内部和外部数据信息,并从中选择出适用于数据挖掘应用的数据;②数据预处理:研究数据的质量,进行数据的集成、变换、归约、压缩等,为进一步的分析作准备,并确定将要进行的挖掘操作的类型;③数据转换:将数据转换成一个分析模型,这个分析模型是针对挖掘算法建立的,这是数据挖掘成功的关键。

(3)数据挖掘

对所得到的经过转换的数据进行挖掘。除了完善和选择合适的挖掘算法外,其余一切工作都能自动地完成。

(4)结果分析

解释并评估结果。其使用的分析方法一般应视挖掘操作而定,通常会用到可视化技术。

(5)知识同化

将分析所得到的知识集成到业务信息系统的组织结构中去。

以上的步骤不是一次完成的,可能其中某些步骤或者全部要反复进行。

5 数据挖掘的主要应用

根据最近的调查显示,数据挖掘主要的三个应用方面分别是:Customer Profiling、Targeted Marketing以及Market-Basket Analysis。

在Customer Profiling方面,我们希望找出客户的一些共同特征,希望能借此预测哪些人可能成为我们的客户,以帮助营销人员找到正确的营销对象。数据挖掘可以从现有客户数据中找出他们的特征,再利用这些特征到潜在客户数据库里去筛选出可能成为我们客户的名单,作为营销人员推销的对象。营销人员就可以只针对这些名单寄发广告数据,以降低成本,也提高营销的成功率。

Market-Basket Analysis主要是用来帮助零售业者了解客户的消费行为。譬如哪些产品客户会一起购买,或是客户在买了某一样产品之后,在多久之内会买另一样产品等等。利用数据挖掘,零售业者可以更有效地决定进货量或库存量,或是在店里要如何摆设货品,同时也可以用来评估店里的促销活动的成效。

客户关系的管理是数据挖掘的另一个常见的应用方式。我们可以由一些原本是我们的客户,后来却转而成为我们竞争对手的客户群中,分析他们的特征,再根据这些特征到现有客户数据中找出有可能转向的客户,然后公司必须设计一些方法将他们留住。因为毕竟找一个新客户的成本要比留住一个原有客户的成本要高出许多。

随着数据库、人工智能、数理统计及计算机软硬件技术的发展,数据挖掘技术必将在更多的领域内取得更广泛的应用。

参考文献

[1]闫建红.数据库系统概论的教学改革与探索[J].山西广播电视大学学报,2006.

[2]刘同明等.数据挖掘技术及其应用[M].北京:国防工业出版,2001.

[3]毛国君等.数据挖掘原理与算法[M].北京:清华大学出版社,2005.

上一篇:有趣的拔河比赛下一篇:新媒体:传统媒体