半结构化信息范文
半结构化信息范文(精选8篇)
半结构化信息 第1篇
Web信息提取(Web Information Extraction,简称为Web IE) 是将Web作为信息源的一类信息进行提取。它的主要目的是从半结构或无结构的信息中提取出特定的事实信息(Factual Information)。比如,从新闻报道中提取出恐怖事件的详细情况: 时间、地点、作案者、受害者、袭击目标、使用的武器等;从经济新闻中提取出公司发布新产品的情况:公司名、产品名、发布时间、产品性能等;从病人的医疗记录中提取出症状、诊断记录、 检验结果、处方等,或者直接提取文章中某句话或某段话的信息等等。
1研究背景
随着Internet的飞速发展,Web已经发展成为一个巨大、分布和共享的信息资源,目前Web数据大都以HTML形式出现, 缺乏对数据本身的描述,不含清晰的语义信息,模式也不明确, 结构上也不良好。这使得应用程序无法直接解析并利用到Web的海量信息,为增强Web数据的可用性,出现了Web信息提取技术,它通过包装现有Web信息源,将网页上的信息以更为结构化的方式提取出来,为应用程序利用Web数据提供了良好的方式。
2研究现状
信息提取的研究起源于20世纪90年代初,国外的研究表现在以下几个方面:斯坦福大学的Sergey Brin提出的DIPRE算法可以对Web文档数据关系进行发现; IBM研究中心的N.Sundaresan等对Web文档中的双义问题进行了讨论并提出了改进的算法,并对Web中的英文单词缩写和全称进行了挖掘。国内的研究:复旦大学周傲英等对半结构化文档的模式提取进行了研究,提出了递增式模式挖掘算法;南京大学张福炎等采用OEM模型构造了半结构化数据的提取器。这些Web提取研究利用了半结构化文档的特点,对互联网上的数据进行深层次的查找和分析,用知识代替了信息作为信息获取的最终结果。
3研究内容
3.1总体描述
本文重点研究如何从半结构化的Web页面中提取出用户感兴趣的数据,并试图提出一个基于XML的Web信息提取平台。 其工作的核心是生成提取规则。这里,提取规则实际上就是对感兴趣的信息点进行定位。首先需要将样本Web页面转化成为结构良好的XML文档;通过从样本XML文档中找到用户感兴趣的区域;并在这个区域内细粒度地查找到具体要提取的信息点的定位信息;然后对不同样本页面的定位信息进行归纳学习,学习出该类页面感兴趣信息点的定位信息,并构造出以XSLT文档表示的提取规则,最终应用该提取规则进行实际的信息提取,如图1所示。
3.2平台的目标
本信息提取平台目的是结合现有不同提取技术的优点,以XML技术为基础,将Web页面中的关键信息自动地提取出来, 并表达成为结构化的、扩展性很强的XML文档。
本文希望通过一组相似的页面,能够归纳出相应的提取规则,进而利用提取规则进行页面信息的提取。
3.3设计的基本思想
系统首先根据用户指定的URL获取样例网页数据并且将该网页利用HTML Tidy转换为XHTML。
然后利用XML Parser将该XHTML文档解析成为DOM (Document Object Model)树结构,这样DOM树就成为Web网页在系统内部的表示形式。
最后在获得DOM树的基础上,应用XSLT将DOM树结构转化为结果XML文档。
3.4总体框架
3.4.1知识库和数据库
系统中的库包括知识库( Knowledge Base ) 和数据库(database),知识库包括领域知识库和提取规则库。数据库包括提取结果数据库和Web页面数据库。
在实际操作中,提取系统中的知识库和数据库的构建比较复杂,而本文的侧重是信息提取的研究,所以有关知识库和数据库的部分本文不做深入的阐述,如图2所示。
3.4.2页面优化模块
主要针对待学习页面和待提取页面进行优化处理,使结构不完整或不规范的Web页面转化成为结构良好的XHTML文档, 并解析成为DOM树结构。
3.4.3信息提取模块
信息提取是本文的核心,信息提取以获得提取规则为前提, 任何信息提取的研究都致力于获得健壮可靠的提取规则,然后运用提取规则进行信息的提取。因此,该部分就分为两个步骤:首先进行样本学习,以获得提取规则;然后运用规则进行信息提取。
4平台中的知识库与数据库
4.1构造领域知识库
领域知识库的功能主要包括如下几点:
(1)为用户提供查询导航服务,使用户开始使用时不至于束手无策。方法是将一些较重要的网站的URL添加到相应的领域下。
(2)为规则的管理提供逻辑和方法上的支持,方法是将提取规则按照子领域分类存储。
本文中的领域指的是发布同类信息的专业网站,领域知识库是要提取的信息所在领域所包含的基本概念、属性、实体、规则等知识。如出版社图书出版网站发布的是有关图书的一类信息, 它的领域知识库就要包含图书所要求的各种基本概念和属性等知识。本文中规定,领域知识库中的各领域按从属关系形成一个层次树,而根是虚拟的,也可称为“根领域”。
4.2提取规则库
提取规则库存储的是已经学习到的提取规则,提取规则是欲提取的识别模式知识。对不同的领域和网站所采用的规则各不相同,随着提取系统的运行,会产生许多规则,系统自然需要一个库来存放这些规则。当系统需要进行信息提取时,首先可以向规则库中查找是否有可以重复利用的规则,如果有则可以直接从规则库中提取出相应的规则,不必再重新生成针对相似网站或网页的新规则。
4.3提取结果数据库和Web页面数据库
最终提取出来的结果是含有用户感兴趣信息点的XML文档,提取结果数据库中存放的也就是这些XML页面。Native XML Data Base,也称XML本源数据库,是专门设计用于存储XML文档的数据库,它以XML文档自身的形式来存储XML文档, 与其它数据库的不同在于其内部模型是基于XML文档格式的。
4.4页面优化模块
4.4.1清洗(TIDY)页面文档
清洗(TIDY)页面需要做的是对Web页面进行修复转换成为符合规范的XHTML文档,本文中称为清洗(TIDY)。
HTML Tidy是一个开放源代码的强大工具,可用于修正HTML文档中的常见错误并生成格式编排良好的等价文档。本文使用了Tidy的类库,将其集成到系统当中。Web页面将通由Tidy进行页面预处理,将源HTML文档转换成等价的XHTML文档。
4.4.2页面解析(PARSER)
HTML DOM树是Web页面的一种描述方式,是根据Web页面中HTML标签的含义而建立的,有层次关系的树状结构, 其上的每个节点都是一个单独的HTML元素。因此,将DOM层次结构中的路径理解成为提取的“坐标”,通过对坐标的获得和理解来得到需要提取的信息。这个过程中,将XML文件加载到内存生成XML DOM树,以供提取规则学习模块来生成基于DOM的规则。
4.5信息提取模块
在Web信息应用中,使用包装器进行信息提取。包装器是一个软件过程,应用已经定义好的信息提取规则,将输入Web页面中的信息数据提取出来,转换成用特定格式描述的信息,提供给其它信息系统做进一步研究,信息提取的工作流程如图3所示。
4.5.1规则学习的依据
规则(rule),不同的文献中也有称作模式(pattern)的。 Wrapper的核心是提取规则,构造准确健壮的提取规则是重中之重,也是任何提取系统致力的目标。
文中主要采用HTML中所包含的结构特征、位置特征、显示特征、语义特征和引用特征形成提取规则。规则学习的步骤: (1)确定样本页面集;(2)样本学习,生成提取规则。
4.5.2信息提取过程的描述
当得出了提取规则XSLT文档后,要构造一个进行信息提取的wrapper仅需要执行这个XSLT。
5结束语
本文方法为Web页面的信息提取奠定了良好的基础,但其适用范围仍然有所局限。当遇到了页面结构较为复杂并且缺乏语义的时候,提取的准确率就会降低。所以,需要加强学习提取规则的适应性和算法来解决信息复杂性,信息源权威性和有效性, 提高信息提取的准确性。
参考文献
[1]胡东东,孟小峰.一种基于树结构的Web数据自动提取方法[J].计算机研究与发展,2005.
[2]张绍华,徐林昊等.基于样本实例的Web信息提取[J].河北大学学报(自然科学版),2001.
[3]周津,朱明等.基于XML的网页信息自动提取.计算机应用,2004.
半结构化面试知识 第2篇
半结构化面试(Semistructured Interview,简称SSI),是介于非结构化面试和结构化面试之间的一种形式,是指面试构成要素中有的内容作统一要求,有的内容则不作统一的规定,也就是在预先设计好的试题(结构化面试)的基础上,考官向应试者又提出一些随机性的问题,
银行的半结构化面试中,各测评要素是贯穿于各个题目当中的,一道题目可能会包含多个测评要素。因此,对于,题型的划分,不能单纯基于测评要素,而是根据题目的表现形式,结合测评要素来进行分类。当然,各个银行在实际操作中,对于题型的分类可能会存在一些细微差异,但基本表现形式都是一致的。
通过各大银行的面试真题的分析,银行半结构化面试可分为四种题型,分别是了解类问题、行为类问题、情景类问题和专业类问题。我们会在本章辟一节着重讲述专业类问题。根据经验,通常情况下各银行在具体操作时要视面试时间和人数而确定题目数量和题型比重。除专业类问题外,各题型所占的比重约为10%、60%、20%、10% . 由此可见,行为类问题是考查重点。
1了解类问题
了解类问题,顾名思义是对考生的基本情况、性格特征、求职动机、价值取向、某方面的能力、缺陷等方面进行全面的了解,从而考查考生与岗位的匹配度。此类题型对于考生而言是一次主动展示自我的`机会。考生可以通过这种题型直接表现出自己的良好素质。考查目的旨在通过考生对该问题的回答,挖掘到考生的真正求职动机和岗位匹配度。
了解类问题主要涉及以下几方面:
第一,性格特点(兴趣、爱好、家庭、朋友等)与岗位情况。
第二,主要经历(实习经历、工作经验、社会活动等)与岗位情况。
第三,现实性需要(解决住房、户口迁移、专业对口等)与岗位情况。
第四,成就动机(认识需要、自我提高、自我实现、服务他人的需要,得到锻炼等)与岗位情况,
2行为类问题
行为类问题类似于企业通常采用的行为面试法,侧重于通过挖掘考生实际经历过的具体事件来判断其胜任力。这种题目的设定设定是基于一种假设:人过去的行为时预测其将来在类似情景中的行为的最可靠指标。因此,行为类问题是银行半结构化面试重点,题量占整个半结构化面试的60%左右。
行为类问题主要涉及的事件主要有以下几个方面:
第一,曾做过的项目;
第二,负责领导或参与过的团队活动;
第三,最难忘的事;
第四,经历过的最大挑战。
3情景类问题
情景类问题主要是通过设定一定的情景来观察考生在面对突发或意外的情况下,是否能认真对待,冷静分析,是否能抓住问题的关键环节,提出合理而有效的解决措施,使问题和矛盾得到圆满解决,表现出强大的处理复杂和突发问题的应变能力。
情景类问题涉及以下几种状态:
第一,有压力状况;
第二,情绪稳定;
第三,思维反应敏捷;
第四,考虑问题全面周到,处理问题妥当。
4专业类问题
专业知识试题更多的是对考生所学专业的考查,会涉及一些银行工作流程、金融学等内容,所以考生应对此类问题时,更多的是以自己大学期间本专业所学习得必修课程为基础,同时根据面试相关题目的意思能够流畅并且有条理地表述出来。
大家对银行的一些常识及金融学知识有所复习,这样在面试考场上,遇到此类问题时才能够圆满地解决,同时,此类问题为非面试培训重点内容,更需要平时的积累和学习。
半结构化数据的最小化模式发现 第3篇
随着Web数据的大量增长和异构数据集成的应用, 导致了大量半结构化的数据产生。半结构化数据是界于严格结构化的数据 (如关系数据库中的数据) 和完全无结构数据 (如声音、图像文件) 之间的数据形式, 它具有如下一些特点[1,2,3,4,5,6]: (1) 隐含的模式信息。半结构化数据具有一定的结构, 但其结构与数据混在一起没有显式的模式定义, 且模式经常处于动态变化之中, 如HTML文件、XML文件等。 (2) 不规则的结构。一个数据集合可能由异构的元素组成, 例如学生集合中某些学生有电子邮件地址, 而另一些学生则没有;同样的信息可能由不同类型的数据表示, 例如某些雇员的生日是字符串类型, 而另一些则是由year、month和day组成的复合类型。 (3) 没有严格的类型约束, 直接通过数据来表达。由于半结构化数据没有显式的模式, 这给这类数据存储、快速查询及优化带来很大的困难, 因此导致查询、浏览和集成Web 数据效率很低。
目前国内外关于半结构数据的研究主要集中在新的数据模型、查询模式、存储技术以及优化技术等方面[1,2,3,4,5,6,7,8,9]。其中, 对半结构化数据结构的研究是一个非常重要的方向。模式研究的一个重要方面就是如何从半结构化数据中得到模式, 即模式的抽取。目前模式描述形式有基于逻辑的描述形式和基于图的描述形式[1,2]。文献[1,2,3,4,5,6]对基于图形描述的半结构数据模式提取进行了讨论。这些文献中模式提取方法能够对半结构的数据进行模式提取, 但是模式提取算法运算量大, 而且抽取模式的规模较大, 甚至比半结构数据的原始规模还要大。为了克服以前算法的不足, 本文提出了最小模式抽取算法。
1基本概念
1.1对象交换模型 (OEM)
OEM[1,2,3,4,5,6]模型是一种自描述的对象模型, 专为表示半结构化数据而设计的。该模型由表示数据对象的结点及带标签的有向边构成。每个数据对象由对象的标识 (Oid) 及值 (value) 组成。对象的Oid唯一确定一个数据对象, 而对象的value为原子类型或复合类型。原子值可能是Integers、Strings、Real等不可再分的类型数据;一个复合的OEM值是一组子对象引用的集合, 用一组<label, Oid>组对的集合表示, 其中Oid是通过label引用子对象的Oid。本文借用文献[4,5]中的OEM示例数据库来说明文中的概念及算法, OEM示例数据库如图1所示。
实际上, OEM模型数据库就是一个带根的有向图G (r, V, E) , 其中r为图的根结点, V为顶点的集合, E为有向边的集合, 边上的标签表示对象间的引用关系, 边记作〈oi, ln, oj>, 它表示对象oi通过标签ln引用对象oj。如果在图G中存在着〈o1, l1, o2>, <o2, l2, o3>, , <on, ln, o1>, 则称OEM图中存在着环路。如图1中存在一个环:<1, player, 14>, <14, formerClub, 24>, <24, player, 28>, <28, Formerclub, 1>。
1.2与OEM图及模式抽取算法相关的术语、定理
定义1 在基于OEM模型的数据库G中, 以圆点“.”分隔的若干个标签序列l1.l2..ln称为标签路径 (label path) , 记作lp=l1.l2..ln, 其中n为lp的长度。如Club.player.name是长度为3的标签路径。
定义2 在基于OEM模型的数据库G中, 数据路径dp (data path) 是以逗号“, ”分隔开的对象Oid和标签交替出现的序列, 记作dp=O0, l1, O1, l2, , ln, On, 其中n (0in) 是dp的长度。称dp=O0, l1, O1, l2, , ln, On为标签路径lp=l1.l2..ln的一个实例 (instance) 。
例如:dp1=0, Club, 1, Name, 2, Official, 3是长度为3的数据路径, 它是标签路径Club.Name.Official的一个实例。对于同一标签路径可能存在多个路数据径实例。如图1中标签路径lp=Club.Name有3条数据路径实例。
定义3 在基于OEM模型的数据库G中, 设标签路径lp=l1.l2..ln, lp的目标集t定义为lp所有数据路径的最后一个对象Oid的集合, 记为, t={O|O0, l, O1, l2, , ln, O, 其中O0, l1, O1, l2, , ln, O为lp一个实例}。我们也写为t=T (lp) 。
如标签路径Club.name的目标集为{2, 21, 25}, 通过标签路径Club.name可以遍历标签目标集中的每一个对象。
定义4 设标签路径lp=l1.l2..ln, 标签路径lp的数据路径实例的数目称为标签路径lp支持度, 记作Sup (lp) 。如标签路径lp=Club.Name的支持度为3, 记作sup (Club.Name) =3。
为了剪掉低频的标签路径表达式, 须事先设定一个最小支持度阈值, 记作minsup。当一个标签路径的支持度大于等于minsup, 则称此标签路径是频繁的, 否则是非频繁的。
关于标签路径的目标集及支持度的计算, 可以证明有以下两个定理成立。
定理1 在基于OEM模型的数据库G中, 设O1, O2是某标签路径lp的目标集中任意两个对象, 即∀O1, O2∈T (lp) , 存在从O1, O2分别出发的两条有向边<O1, l, Oi>、<O2, l, Oj>, 则对象Oi, Oj是属于同一个标签路径的目标集中两个对象。
证明 设O1, O2是标签路径lp=l1.l2..lk的目标集中两个对象, 对应的数据路径分别设为dp1=x0, l1, x1, l2, x2, , lk, O1;dp2=x0, l1, y1, l2, y2, , lk, O2;令:dp′1=x0, l1, x1, l2, x2, , lk, O1, l, Oi;dp′2=x0, l1, y1, l2, y2, , lk, O2, l, Oj。显然, dp′1, dp′2是标签路径l1.l2..lk.l的两个数据路径实例, 因此Oi, Oj是标签路径l1.l2..lk.l目标集中的两个对象, 即Oi, Oj属于同一个目标集。证毕。
定理2 在基于OEM模型的数据库G中, 设标签路径lpn=l1.l2..ln , T (l1.l2..ln-1) ={Oi1, Oi2, , Oik}, 则标签路径lpn的支持度等于从{Oi1, Oi2, Oik}中各对象出发的以ln为标签的有向边条数, 也即标签ln对应的目标集元素的数目 (重复元素记重数) 。
证明 根据标签支持度的定义, 标签路径lpn=l1.l2..ln支持度为标签路径lpn对应数据路径实例的数目。令sup (lpn) =s, 即有且仅有s条标签路径l1.l2..ln的实例, 不妨设为dpi=xi0, l1, xi1, l2, xi2, , ln-1, xin-1, ln, xn其中i=1, 2, , s。因此以集合{x0n-1, x1n-1, x2n-1, xsn-1} (可能有元素重复) 出发的标签ln有s条。而{x0n-1, x1n-1, x2n-1, xsn-1}是T (l1.l2..ln-1) 子集, 因此从T (l1.l2..ln-1) 即{Oi1, Oi2, , Oik}为始点且以ln为标签有向边至少有s条, 但sup (lpn) =s, 因此{Oi1, Oi2, , Oik}为始点且以ln为标签有向边只能有s条, 因此标签ln的目标集有s个元素 (可能有重复元素, 重复元素按重数记) 。证毕。
例如在图1中, 标签路径lp=club.player.nationality, 它的标签路径实例有3条, 它们分别是:dp1=0, club, 1, player, 5, nationality, 12;dp2=0, club, 1, player, 14, nationality, 19;dp3=0, club, 20, player, 22, nationality, 19;显然标签路径lp的支持度为3。而club.player的目标集为{5, 14, 22, 28}, 以{5, 14, 22, 28}中元素为始点且以nationality为标签的有向边有3条, 它们分别是5, nationality, 12、14, nationality, 19、22, nationality, 19。因此nationality的目标集为{12, 19}, 19的重数为2。
利用上面的两个定理, 可以从OEM模式图的根结点出发, 采用标签路径逐渐增长向下延伸的方法求出所有标签路径的目标集及支持度。
1.3基于OEM模型的半结构化数据的存储
任何算法的实现都离不开数据存储结构, 算法的优劣与数据存储结构有很大的关系。为了设计出快速计算标签路径的目标集、标签路径的支持度, 本文对基于OEM模型的数据库G (r, V, E) 采用有向图变形的邻接链表存储法, 对于从同一始点同一标签出发的结点存在同一数据组中, 便于快速计算统计。由于篇幅有限, 对有向图的变形邻接链表的存储结点类型不再说明, 通过存储示例一目了然。链表头结点及链表结点结构如图2所示。图1OEM示例数据库的存储结构如图3所示。
由于链表的头结点存储在一个线性表中, 这样可以随机地访问任何一个结点及其子结点。这样可以快速计算任何标签的目标集以及从目标集出发的标签集。
2模式抽取
所谓模式抽取, 就是从半结构化数据中得到内在的模式图, 也即从半结构化数据中找出所有最长且为频繁的标签路径的集合。为了准确地描述OEM数据模式, 我们创建一个模式表schema_table, 表中的结点结构 (father, label, T_objs, child) , 其中father, child都是模式结点Oid, 从father到child有一条带label标签的有向边连接, T_objs为label在原数据库中的目标集。
为了解决目标集中包含原子类型的元素的问题, 我们引入了⊥’符号, 表示标签路径下可能包含一个原子类型对象。
2.1模式抽取的思路
模式抽取的思路:将基于OEM模型半结构化数据库G的根结点, 映射为模式的根结点。然后从半结构数据的根开始, 按照宽度优先的遍历方式, 求出从根结点出发的每一条有向边对应标签的目标集以及含此标签的标签路径的支持度。当支持度小于事先指定的最小支持度阈值时, 该标签将从标签路径中提前剪出。当标签的支持度大于或等于minsup时, 生成与此标签相关的复合结点node_x (father, label, T_objs, sup) , 存入一个临时temp数组中。接着对从同一个目标集出发的标签相应的Temp数组元素按照支持度降序排序, 再依次检查每一个temp元素的T_objs域是否是模式表中某结点T_objs域的子集, 若是, 则通过标签指向那个目标集对应的模式结点, 否则生成新的模式结点, 然后对应的temp的元素进入队列 (Q) 中。当队列非空时, 队首元素出队, 按前述方法, 继续计算出站元素的T_objs结点集合的标签集、支持度及标签的目标集, 重复前述过程, 直到队列空为止。
2.2模式抽取的算法实现
算法1 最小化模式抽取算法
算法2 求从一个目标集中结点出发的所有标签的集合
算法3 求从objs 出发的标签 ln的目标集及到 ln为止标签路径的支持度
2.3模式抽取的实例分析
将上面的算法应用于图1 OEM 示例数据库, 得到支持度为1的模式表如表1所示。对于支持度为2时, 只需删除sup 为1 对应的行及此行目标集对应的标签行即可。对于支持度sup=n 的情形, 依此类推。
从表1可以看出, player 标签的目标集为{5, 14, 22, 28}, 而caption目标集{5}是player 目标集{5, 14, 22, 28}的子集, 根据算法只需通过captain指向模式结点2即可, 这和图1里情形是一致的;而文献[4,5]抽取的模式比本文算法得到的模式多出了captain 分枝, 由于player 与captain的结构是一样的, 显然重复是没有必要的。同理还有formerclub的目标集也是club 目标集的子集, 只需用具有formerclub标签的有向边指向模式结点①即可, 这里解决了环路问题。
说明:从上面的算法可知, 模式表只有father 、label、 T_objs、child列 , 其中child 为模式结点序号。若T_objs中包含⊥’, 则在生成模式结点时添加符号⊥’, 表示标签路径下可以包含原子类型对象。为了更清楚地显示标签支持度, 本文将T_obj 中的重复元素也写了出来, 实际上是不需要重复的。在模式表中添加一列S_objs , 表示标签从其中元素出发, 和T_objs列相同, 在模式表中是可以略去。对应图1支持度分别是1、2模式图如图4 、图5所示。
3结束语
在对半结构化数据的模式抽取问题中, 本文提出了基于变形邻接链表存储的最小化模式抽取算法, 采用了标签路径逐步增长的方法, 将求标签路径的目标集转化求每一个标签的目标集问题, 支持度即为最后一个标签的目标集元素的数目, 不需要单独计算, 并按标签支持度由大到小的顺序将其目标集映射到模式结点, 使得对同样的OEM数据库实例本文算法抽取的模式规模比文献[4,5]模式小得多, 而算法执行时间缩短了30%以上。
在半结构化数据的研究上还有许多问题有待探讨, 如半结构化数据的模式及半结构化实体化视图等动态维护, 如何将模式应用于半结构化查询界面设计、查询、优化、存储等问题都需作深入研究。
参考文献
[1]王静, 孟小峰.半结构化数据的模式研究综述[J].计算机科学, 2001 (2) :6-10.
[2]孟小峰.Web数据管理研究综述[J].计算机研究与发展, 2001 (4) :385-395.
[3]吕橙, 等.基于OEM模型的半结构化数据的模式发现[J].计算机工程与应用, 2006 (34) :162-165.
[4]蒙德龙, 叶飞跃, 李旭华.半结构化数据的模式抽取[J].计算机工程与应用, 2006 (27) :162-165, 181.
[5]刘芳, 胡和平, 路松峰.半结构化、层次数据的模式发现[J].小型微型计算机系统, 2001 (1) :84-88.
[6]Goldman R, W idom J.DataGuide:Enabling query formulation and op-timization in semistructured databases In:Proc of the international Confof the Very Large Data Bases (VlDB) [C].Athens, Greece, 1997.
[7]Jason McHugh, Jennifer Widom.Loor:A Database Management Systemfor Semistructured data[C].SIGMOD Record, 1997 (3) :54-66.
[8]吴共庆, 陈恩红.一种基于xml的半结构化数据存储方法[J].计算机工程, 2005 (10) :57-59.
半刚性连接框架结构变形分析 第4篇
1 半刚性框架有限元模型
本文选择了两层三跨、四层三跨及六层三跨组合钢框架进行分析。假定梁—柱节点为半刚性连接节点,半刚性节点用非线性弹簧表示。采用通用有限元分析软件ANSYS对两层三跨、四层三跨及六层三跨组合框架进行了分析,框架柱采用HW300×300×10×15,框架梁采用HW200×200×12×8。柱距为9 000,跨度为6 000,层高为3 000 mm。六层框架结构有限元模型见图1。
2 半刚性框架单元选取及加载
在有限元分析中,梁柱均采用Beam188梁单元。Beam188三维有限应变梁单元是建立在Timoshenko梁理论基础上的空间梁单元,考虑杆件的剪切变形和应力硬化,能够分析杆件的受弯、侧移、扭转问题,可用于一般长度或中等短粗梁的分析,是三维两节点线型单元。梁柱节点均采用Combin14弹簧单元,此单元有径向和扭转的性能,可用于一维、二维、三维分析。有限元模型的加载采用静力加载。材料采用Q235钢。在考虑材料的非线性时,采用ANSYS多线性随时强化选项,材料屈服遵从Von Mises屈服准则及相关流动法则。半刚性节点的初始转动刚度选取,k=αEI/H,取α=1,2,4。I和H分别为框架柱的刚度和长度。半刚性节点的弯矩转角曲线,采用二折线模型。门式刚架柱距为6.0 m,作用于结构的荷载为屋盖自重0.25 kN/mm2,基本雪压S0=0.4 kN/mm2,基本风压ω0=0.50 kN/mm2。
3 计算结果分析
对结构施加荷载,各框架弯矩图见图2(以六层三跨为例)。各框架侧移如表1所示。
根据GB 50017-2003钢结构设计规范对侧移的规定,层间位移限值为h/400,结构顶点位移为H/500。由于计算模型层高均为3 000 mm,因而层间相对位移限值[δ]=3 000/400=7.5 mm。结构一的总高度为6 000 mm,结构顶点位移限值[Δ]=6 000/500=12 mm;结构二的总高度为12 000 mm,结构顶点位移限值为[Δ]=12 000/500=24 mm;结构三的总高度为18 000 mm,结构顶点位移限值为[Δ]=18 000/500=36 mm。框架结构在所采用的节点刚度其水平位移均低于规范限值。
1)随节点刚度增强,整个刚架结构的内力分布发生了较大变化,当刚度增大到一定程度,结构的内力变化趋于稳定。2)从表1可以看出,随着半刚性节点初始转动刚度的增加,楼层相对变形变小。随着框架结构高度的增加,楼层位移的增幅较大。半刚性连接框架结构与刚性连接框架结构在水平荷载作用下的变形特征相似,楼层位移由下至上依次增加,层间相对位移由上至下依次增大。有限元模型计算结果表明节点刚度改变会引起空间钢框架顶点侧移发生变化,梁柱半刚性连接钢框架具有较大的变形能力,随着层数的增加这种影响更加明显。 3)层数对于半刚性连接的侧移有较大影响。在相同层数的条件下,随着连接刚度的降低,结构的楼层位移增幅较为明显,层间位移角也相应增大。随着节点转动刚度的减小,边柱所受的弯矩明显增大,随层数的增加,节点刚度对空间钢框架位移和内力的影响更明显。
4 结语
节点刚度对多层钢框架的变形有很大影响。节点刚度的变化,造成结构内力分布的变化,因此应根据不同的连接刚性,来进行不同的结构设计。应通过参数分析,研究了不同刚度的变化对半刚性框架位移的影响,增强结构性能,降低工程成本。
参考文献
[1]石文龙,叶志明,李国强.半刚性连接框架的试验研究进展[J].四川建筑科学研究,2008,34(3):1-4.
[2]陈惠发.钢框架稳定设计[M].周绥平,译.上海:世界图书出版社,1999.
[3]刘清平,王静峰.梁柱半刚性连接组合钢框架分析初探[J].河北建筑工程学院学报,2005,23(2):32-37.
[4]王晓东.半刚性连接空间钢框架静动力分析[D].哈尔滨:哈尔滨工业大学,2006.
[5]高振梅,王卫国.框架结构异形柱设计探讨[J].山西建筑,2009,35(23):62-64.
半结构化信息 第5篇
Dremel系统是谷歌开发的查询半结构化数据列存储数据库, 并公开了Dremel系统的基本工作原理。同时也是Google的“交互式”数据分析系统。可以组建成规模上千的集群, 处理PB级别的数据。Map Reduce处理一个数据, 需要分钟级的时间。作为Map Reduce的发起人, Google开发了Dremel将处理时间缩短到秒级, 作为Map Reduce的有力补充。Dremel作为Google Big Query的Report引擎, 获得了很大的成功。
海量数据存储是一个必然的趋势。然而数据如何的存储和查询, 尤其是当今非结构化数据的快速增长, 对其数据的存储, 处理, 查询。使得如今的关系数据库存储带来了巨大的挑战。分布存储技术是云计算的基础, 主要研究如何存储、组织和管理数据中心上的大规模海量数据.由于面临的数据规模和用户规模更加庞大, 在可扩展性、容错性以及成本控制方面面临着更加严峻的挑战。
针对这种情况, 如何快速的查询数据的问题, 本文提出了一种解决方案, 并对其进行实现验证。
1 HBase及相关简介
1.1 HBase数据库系统概述
HBase (Hadoop Database) , 是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统, 利用HBase数据库技术可在廉价PC Server上搭建起大规模结构化存储集群。是Google Bigtable的开源实现, 类似Google Bigtable利用GFS作为其文件存储系统, HBase利用Hadoop HDFS作为其文件存储系统;Google运行Map Reduce来处理Bigtable中的海量数据, HBase同样利用Hadoop Map Reduce来处理HBase中的海量数据。Google Bigtable利用Chubby作为协同服务, HBase利用Zookeeper作为对应[1,5]。
1.2 HBase数据存储格式简介
HBase的数据模型可以定义为一种稀疏的、长期存储的、分布式的、多维排序的映射表。映射表中通过Row Key、Column Key以及时间戳来三维索引一个Cell, 每个Cell中存放着一个任意长度的字符串。HBase以行记录的形式将数据存放在表中, 每行由一个Row Key唯一标识并可以包含任意多个列。通常情况下, 一张表根据存放的数据量的大小被分割成一个或者多个称为Region的子表。一个HBase集群通常由一个Master和多个Region Server组成。每个Region Server管理一个或者多个由Master分配的Region, 而Master则负责维护每个Region的元信息以及Region和Region Server之间的映射关系。Region中的数据最终将被存放在Hadoop的多副本分布式文件系统HDFS中[6]。当访问某一行数据时, Client首先查询Master找出含有该行数据的Region对应的Region Server, 然后向该Server发送数据访问请求以访问指定的数据。
在物理上, 一个列簇成员 (列) 在文件系统上都是存储在一起。因为存储优化都是针对列簇级别的, 这就意味着, 一个列簇的所有成员都是用相同的方式访问的。通过Row Key和列名为唯一条件进行检索数据[7]。HBase的数据查询方式主要是Get和Scan两种方式, 具体的数据检索方法就不是这篇文章的范围, 因此就不再这里赘述了。
1.3 半结构化数据定义及特点
半结构化数据是数据的结构不规则或不完整。这类数据介于模式固定的结构化数据 (如关系库中的表元组和对象库中的类型对象) 和完全没有模式的无序数据 (如正文、声音、图像) 之间。是指那些既不是完全无结构的, 也不是传统数据库系统中那样有严格结构的数据。这一定义给出了半结构化数据的特点, 但是很不精确, 因为定义中“结构”的含义是非常模糊的。为确立一个明确的范围, 给出了数据以及半结构化数据的定义, 并提出了一种用待确定文法分析半结构化数据的方法[8]。
定义1 (数据) :数据可以看作是一个有序的流a1a2...an, 对数据的一个有序划分是指对a1a2...an的一个划分σ1, σ2, ..., σm, 它满足σ1, σ2, ..., σm, →a1a2...an。
定义2 (半结构化数据) :如果数据的结构所对应的语言无法用全局一致的上下文无关文法描述, 但是存在数据的一个有序划分, 对分割出来的每个分划, 利用前n个分划的语义信息, 可以得到第n+1个分划的局部一致的上下文无关文法, 则称之为半结构化数据[9]。
各个数据源上的格式和类型千差万别, 目前尚无统一的模型。
以硬盘监控信息记录格式为例即为半结构化的数据, 如图1所示 (required表示必须字段, optional为可选字段) 。
1.4 Dremel系统
Dremel系统是一个稳定的、可交互查询只读半结构化数据的查询分析系统。采用树状分层查询方式和列存储数据结构Big Table, 可以在一秒钟查询10多亿行数据。该系统可扩展到几千块CPU和支持PB级的数据查询分析, 在谷歌有成千上万的用户在使用。Dremel系统的基本原理是将记录进行拆分, 将属性相同的数据存储到独立的表中, 然后在查询的时候重新将记录根据所查询的条件所涉及到的表记录使用进行重新装载成一个新的半结构化数据记录。从而将不相关的列进行过滤掉, 减少查询的数据量。目的就是为了在查找的时候只查找条件相关的列, 即列对应得表。在数据结构变化频繁的半结构化数据, 使用此种方法将无关列数据过滤, 从而加快数据查找的速度[10]。
2 半结构化数据HBase数据存储以及查找方案
如何在最大化的保留数据之间的关联关系的前提下保存数据条件方便进行查找。因此我们这里就需要牺牲一定空间的条件来表示半结构化数据之间的关联性。需要一定的数据冗余。如图1所示我们将记录Rd1, Rd2进行拆分将属性相同的记录值使用同一张表进行保存, 然后将该节点的所有的父节点的信息保存在同一列簇的其他列中, 从而保持Rd1, Rd2记录之间的关系。
2.1 使用HBase数据库无损表示记录结构
数据存储的时候, 我们可以将每一列的值直接排列下来, 不用引入其他的概念, 也不会丢失数据。对于嵌套的结构, Key表示所属外, value表示其对应的值。由于可以我们可以看出来在数据存储的时候由于大量的关系使用Key来建立关系, 可以看到数据在很大程度的冗余。我们简称该类表为结构表。图2是数据在HBase数据库中实际的存储的格式。
表名的命名规则格式为record@各级节点名称。例如:IP地址数据的表示格式为record@ip。
伪代码如下:
初始化:将recorddata中数据读入到decoder中
2.2 数据查找
在Dremel系统中是对数据进行重新拼装后, 然后在对数据进行查找。造成了大量的中间数据, 还需要在查找结束后进行收回。而HBase使用图2的设计的表格式是做的一个物化视图, 可以根据查询条件多次查询, 并不需要再查询后销毁数据。由于HBase数据库不支持半结构化数据的查询, 因此在数据查询的时候还需要使用关系型数据的一些方法, 使用结果集的逻辑运算求出计算结果。在数据的分装原理上同Dremel系统类似。将半结构化数据的记录拆分, 将属性相同的数据进行集中存储。
2.2.1 直接查找数据
如果检索数据的条件只有一列的话, 那么直接查询单个表就可以实现。比如查询Avg Disk Bytes PerTransfer=1536的数量, 那么查询record@driver@avgdiskbytespertransfer表, 查询值等于1536的列的数量就可以实现了。
2.2.2 多条件的分步查找
如果检索数据的条件有多列而且条件之间通过and或者or进行连接。那么通过建立彼此条件间结果集之间的交、并、差之间的集合计算, 那么就可以计算出需要返回的数据。由于HBase是列存储数据库对复杂的条件查询暂不支持。我们举例如下:
例1:我们查询Avg Disk Bytes Per Transfer=1536且drivername=C的记录数。
那么我们就先从record@driver@Avg Disk BytesPer Write中查询出满足条件Avg Disk Bytes Per Write=1536的结果集R1, 然后再查询record@driver@drivername出满足条件drivername=C的结果集R2。然后进行交叉查询出满足条件的记录, 返回结果即使满足例1的结果集R5, 得到记录数。如图3所示。
如果查询条件之间用或条件, 那么就是使用公式R5= (R3∩ (R1∪R2) ) 。同理非条件的使用也同样遵循集合运算。我们从查询步骤上可以看出随着查询条件的增多查询的程序随之繁琐。
伪代码如下:
假设查找条件R1, R2…Rn, 那么各个条件查找的记录数为n (R1) , n (R2) …n (Rn) .那么查找的时间复杂度为:O (Min (n (R1) , n (R2) …n (Rn) ) * (∑ (n (R1) , n (R2) …n (Rn) ) -Min (n (R1) , n (R2) …n (Rn) ) ) 。其中Min (n (R1) , n (R2) …n (Rn) ) 表示所有的条件查找记录中记录数最小的记录, ∑ (n (R1) , n (R2) …n (Rn) ) -Min (n (R1) , n (R2) …n (Rn) ) 表示剩余记录数减去最小记录数的差。
如果查询条件位于半结构化数据节点的树结构节点的深度较深, 那么需要比较的Key比较多, 从而需要花费更多的查询时间。
2.2.2 查询系统的设计
在实际的查询中, 需要开发一个查询系统, 可以供所有的人员使用而不是仅仅通过上面的方式查询。那样的话就需要有一定的专业基础和逻辑思维能力。因此很有必要开发一个类似于以Big Table为列存储数据库为基础的Dremel系统。开发一个以HBase为基础的查询系统, 需要实现两个功能。
1.将类似的半结构化查询语言的语句转化成可以实现基础查询的语句, 然后对HBase数据库数据库查询。
2.将步骤1中的数据根据查询语句中的逻辑条件进行逻辑计算, 将逻辑运算的查找还是基于HBas的分布式查找性能。
大数据查找的数据挖掘擅长的是大数据量的数据查找而不是进行复杂的数据运算, 因此该查询系统的设计不需要设计复杂的数学计算而是分布式的大数据查找的优势。
3 实验结果与分析
本节将通过一系列的实验来验证上述提出的半结构化数据的列存储的应用方案以及可行性。从而证明提出的半结构化数据查询的可行性和高效性。
3.1 实验环境
使用HBase 0.95.1和Hadoop 1.1.2来进行实验, 并将其部署在4个物理节点上, 其中一个节点作为Master节点, 其余3个作为Slave节点, 每个节点含有3.40GHz CPU, 4GB内存以及500GB磁盘空间, 操作系统为64bit Red Hat Enterprise Linux 6, 网络带宽为1Gbps, 四个节点的机器部署在同一个局域网内。实验中主要参数的取值情况如表3所示默认情况下, 每个查询含有4个查询条件。
3.2 实验结果
实验1:在1个Master机器、1个Slave机器和1个Master机器、3个Slave机器的硬件条件下, 记录数为250万, 500万, 1000万的相同条件下, 加载1、2、4列的时间对比与性能对比
实验结果如图4所示:
这个实验得出结论:
结论1:当查询一列数据的时候, 查询消耗时间少。随着列的增多, 还需要做集合逻辑运算, 性能迅速的就落后了。
结论2:4节点的平均处理时间比2节点平均处理时间明显的减少。因此可以得出猜测随着扩展的计算机的规模增大也会减少时间。但随着规模的扩大性能可能随之下降, 还需要进行详细的性能测试。
结论3:记录的集合计算是昂贵的, 每个都可能导致执行耗时的增多。在其他数据集合的实验中看到的趋势大致相同。软件层 (在查询处理层之上) 最好被优化。互联网级别的海量数据集合可以做到很快速的扫描, 但想要花费更少的时间则很困难。
实验总结:由于HBase数据库并不支持树状结构的分层查询服务器, 而是采用Master-Slave体系结构。因此在处理数据的能力上远达不到Dremel系统。查询数据的能力达到PB级别还有很大的性能提升空间。
4 总结与展望
在大数据中很多的数据都是半结构化数据, 因此半结构化数据的处理和查询的提高能进一步发展大数据的应用价值。本方法在查询条件的结果集之间做做交、并、差之间的集合计算需要耗费时间比重比较大, 这个还需要进一步提高性能。如何能减少无关数据的查找, 之查找相关的数据、如何在数据的关联性和数据的查找的便捷性找到结合点是解决半结构化数据查找的关键。
目前大数据仅仅是发展的初步阶段, 作为大数据的处理功能HBase虽在存在着一定的弊端, 比如不能支持条件查询、不能支持Master Server的故障切换、不支持Slave节点的层次划等问题, 随着HBase数据库系统的日益完善, 功能会变得更加丰富, 这些比较高级的正被官方社区慢慢地添加进来。但是HBase作为主流的开源列存储数据的发展趋势锐不可当, 进一步发展现在有数据挖掘技术。
摘要:本文用以Dremel系统为基础解决在HBase系统下如何查询大量的半结构化数据。基本原理是进行先进行数据预处理将半结构化数据进行拆分, 将记录拆分成列使用表存储, 拆分之后保持原有之间的半结构化数据的树之间的上下层关系, 然后再查询的时候只查询条件相关的列, 然后做集合计算, 即可得到数据需要查询的结果, 从而节省了很多时间。
机车悬挂半主动变结构控制仿真研究 第6篇
基于磁流变阻尼器的机车车辆横向半主动悬架系统的变结构控制器, 通过Matlab/Simulink进行仿真验证, 结果表明该控制器有效抑制了车体的横向振动。
1 半主动车辆悬挂系统模型
研究的机车车辆模型以横摇振动为对象的半主动车辆横向悬挂系统, 其力学模型如图1所示。
具有车体横移 (x1) 、转向架横移 (x2) 、和车体测滚 (φ) 3 个自由度。
磁流变阻尼器采用修正的Bouc-Wen模型, 阻尼器的阻尼力为粘滞力与Bouc-Wen 滞变阻尼力之和。表达式为:
其中滞变位移Z由下式确定:
z=-γxz2-βxz2+Ax
式中γ、β和A 是与滞后环形状有关的参数, c0为粘滞系数, α为滞变位移系数。
悬架系统的动力学方程为:
undefined
式中m1为转向架质量, m2为车体质量, Ir为车体横摇转动惯量, k1为每台转向架二系弹簧的横向刚度, k2为转向架一系弹簧的横向刚度, k3为二系弹簧的垂向刚度, 2b为垂直方向二系弹簧的横向间距, h1为横向的二系弹簧中心到车体重心的高度, h2为磁流变阻尼器到车体重心的高度, xr为轨道方向不平顺。
由式 (2) , 得系统状态方程为:
undefined
式中:undefined为状态变量, undefined为输出变量, u为控制输入, w为扰动。
undefined
2.1 变结构控制器设计思想
给定以下线性时不变系统
undefined
其中:状态x∈Rn, 控制u∈Rm, 输出y∈Rl。假设 (A, B) 可控, (A, C) 可观, 且rank (CB) =m。
式中, G∈Rml, S∈Rm。
根据等效控制设计方法, 在滑模面上有
undefined
由式 (5) 、 (6) 、 (7) 及 (8) 可得:
undefined
由式 (9) 得到等效控制
Ueq= (GCB) -1GCAx (10)
将式 (10) 代入式 (5) , 得到滑动模态运动方程
undefined
从式 (10) 、 (11) 看出, 要使等效控制和滑动模态存在, 就必须要求 (GCB) -1存在, 即
rank (GCB) =m (12)
由式 (12) 可得m
上式要求传感器的数量至少要等于执行器的数量。
2.2 滑模面的设计
由线性系统理论知, 由于 (A, B) 可控, 则可通过线性变换将式 (5) 、 (6) 变为以下简约型
undefined
其中:B2∈Rmm是非奇异矩阵, x1∈Rn-m, x2∈Rm。
在滑模面上有
undefined
由于要求 (GCB) -1存在, 所以undefined也存在。由式 (16)
undefined
将式 (17) 代入式 (14) , 得到降维滑动模态运动方程:
undefined
必须选择适当的矩阵使得滑动模态运动方程式 (18) 稳定。令
undefined
滑动模态运动方程式 (18) 变为
undefined
可以用一般的线性系统输出反馈特征结构来设计, 然后再从undefined解出G。G存在的充分必要条件是
undefined
对本文所研究的磁流变智能半主动悬架系统状态方程式 (2) , 定义滑模面
S=Gy (22)
其中undefined
式中G为滑模面矩阵。
在进行滑模面的设计时, 忽略式 (2) 中的外界激励xr, 而在控制器的设计中加以考虑。由于 (A, B) 可控, 则可通过线性变换
undefined
将式 (2) 变为如式 (14) 、 (15) 所示的简约型。将降维滑动模态运动方程表示为式 (20) 的形式。式中V=[v1 v2 v3]。
undefined
由于要求 (GCB) -1存在, 故要求:
g1Ir+m2h2g2≠0 (26)
将式 (21) 展开, 得到
undefined
由式 (19) 得到
undefined
根据滑动模态运动方程式 (20) 的Hurwitz稳定性判据可导出:
undefined
在满足上述约束条件下选取v1=2、v3=0和g2=1则滑模矩阵
undefined
2.3 半主动变结构控制器设计
由可控阻尼力对隔振质量做负功原理, 相应的半主动控制策略为
undefined
式中MAX和MIN表示磁场强度为最大时和最小时磁流变阻尼器产生的阻尼力。
3 仿真及实验结果分析
系统仿真参数采用参考文献[3], 由于机车车辆在平直轨道上行驶时的运动形式为蛇行运动, 引起车体和转向架在横向平面内的振动, 故此取轨道方向不平顺为正弦扫频信号, 振幅为A=3mm。
图2、3别为扫频信号下无控制时和滑模变结构控制时加速度响应曲线, 从图2、3看出, 滑模变结构控制时
加速度比无控制时加速度小。由此说明, 变结构控制下的机车半主动悬架系统具有良好的减振效果。
4 结论
对带有磁流变阻尼器的机车车辆横向半主动悬架系统设计一种输出变结构控制器。仿真分析了悬架系统在正弦扫频信号下的车体加速度响应, 仿真结果表明半主动变结构控制悬架系统具有良好的减振效果。
摘要:针对机车横向稳定性控制问题, 对带有磁流变阻尼器的机车车辆横向半主动悬架系统设计一种变结构控制器。运用Matlab/Simulink软件平台, 对无控制作用悬架系统与变结构控制悬架系统进行对比仿真, 仿真结果表明, 变结构控制下的机车半主动悬架系统具有良好的减振效果。
关键词:磁流变阻尼器,半主动悬架,变结构控制
参考文献
[1]Liu H, Nonami K, Hagiwara T.Semi-active Fuzzy Slid-ing Mode Control of Full Vehicle and Suspensions[J].Journal of Vibration an Control, 2005, 11 (8) :1025-1042.
[2]SHIUH J H, KUO S H.An adaptive Fuzzy Siding ModeController for servomechanis disturbance rejection[J].IEEE Transaction on industrial Electronics, 2001, 48 (4) :845-852.
[3]高国生, 杨绍普, 郭京波.基于磁流变阻尼器的机车横向悬挂半主动控制研究[J].功能材料, 2006, 5 (37) :802-804.
半结构化信息 第7篇
基于P2P方式的对等计算模型摒弃了传统C/S架构的中心拓扑架构。一个对等节点既可以扮演服务器的角色又可以扮演客户端的角色, 使得P2P系统内部实现自组织的资源共享, 有效地降低了应用成本, 提高了系统资源的整体效率。
P2P模型分为中心结构化模型、分布式结构化模型、全分布式无结构化模型与半结构化模型。下面分别简要介绍这几种模型:
(1) 中心结构化模型类似于C/S结构, 一般由索引服务器扮演服务器角色, 向对等节点提供资源索引的检索服务或节点发现服务。对等节点通过索引服务器查找资源或发现其他对等节点。中心结构化模型实际上并不是真正的P2P模型, 索引服务器是整个系统的性能瓶颈, 易出现单点故障, 可扩展性不强。
(2) 分布式结构化模型就是目前广泛采用的DHT模型。节点之间通过DHT技术将资源信息散列后分散地存储于对应节点之上, 其存储模型实质上就是建立资源与存放资源索引的节点之间的关系。典型的代表为Chord, Pastry, Tapestry和Kademlia, 其中Kademlia作为emule软件的协议之一被广泛应用于互联网的文件共享。分布式结构化模型采用DHT技术为对等节点提供一种资源的索引服务, 完全没有中心服务器的概念。其主要应用为文件检索。
(3) 全分布式无结构化模型采用gossip协议的方式进行消息的分发, 是一种完全分布式模型, 彻底消除了服务器角色, 文件的共享与资源检索均通过洪泛或受控洪泛的方式进行。典型的代表有Gnutella网络。由于节点之间完全通过自组织的方式进行交互, 基于全分布式无结构化的P2P模型一般存在可扩展性较差的特点。
(4) 半结构化模型结合了中心结构化模型与全分布式无结构化模型的特点, 在P2P系统内部选取若干资源丰富 (计算资源, 带宽资源) 的节点作为超级节点, 扮演服务器的角色, 其他节点作为客户端节点构造半分布式的网络拓扑结构。超级节点之间使用全分布式无结构化的交互方式, 而超级节点所连的自治域内采用中心结构化拓扑方式。有效地在搜索效率, 可扩展性等方面取得了一个平衡。是一种良好的P2P拓扑构造方式。
将P2P模型应用于流媒体的直播就是通过P2P模型将接收同一个视频源发送的流媒体数据的所有节点构造为一个自治的P2P网络, 流媒体数据在这个网络中的对等节点之间共享分发。可有效降低流媒体服务器的部署成本并高效利用带宽资源实现流媒体的播放。下文介绍的流媒体技术采用了半结构化模型。
1 模型整体设计
1.1 网络拓扑设计
模型的拓扑结构属于半分布式, 在其网络中存在两种类型的节点:普通节点 (Ordinary Nodes/ON) 和超级节点 (Super Nodes/SN) 。任何普通节点, 如果拥有一个IP地址, 以及充足的CPU, 内存和网络带宽资源, 都是超级节点的候选。普通节点必须和超级节点相连接, 才能连接到P2P网络中, 并且必须在登录服务器 (Login Server) 上进行注册, 以便成功登录。尽管登录服务器不是模型中的节点, 然而却是本模型中很重要的组成部分。用户名和密码就储存在登录服务器内。用户登录时的身份认证 (User Authentication) 就是由该服务器完成的。同时, 该服务器也确保了节点登录名在其名字空间中是唯一的。视频服务器 (Video Server) 是媒体源, 包含所有待播放的视频片断。图1表示了普通节点、超级节点、登录服务器以及视频服务器之间的关系。
超级节点对于一组客户机而言是一个中心服务器, 客户机向超级节点提交查询请求, 并从超级节点处接受查询结果。同时, 超级节点之间也是相互连接的, 它们在此叠加网络上转发消息, 同时为其本身和客户机提交或回应查询请求。因此, 所有的超级节点在搜索上都是平等的, 所有节点 (包括客户机) 在下载方面也是平等的。
每个节点维护一个伙伴列表Partner List, 节点可以从视频服务器或者伙伴节点获取媒体数据。节点和伙伴节点不断地交换各自的缓存信息, 然后根据伙伴的缓存信息, 通过一定的数据调度算法从伙伴节点获取媒体数据。节点的伙伴列表并不是固定的, 节点在运行过程中会不断地优化伙伴列表。
普通节点中包括一个超级节点列表缓存 (SN List Cache) , 其中储存有至多200个SN的IP地址以及端口号, 节点之间频繁地交换超级节点列表。特别地, 当一个ON与一个父SN建立连接时, SN会立即向该ON发送一个SN更新列表 (SN Refresh List) , 该列表包含至多200个超级节点的IP地址, 端口号及其负载情况。一旦ON从父SN处收到SN更新列表, ON便会从其SN列表缓存中清除部分条目, 并将父SN发送的条目加入其中。叠加网中相邻的SN也会相互交换SN更新列表。通过这样频繁地交换, 节点就可以掌握最新的活跃SN列表。
1.2 数据的表示与组织
为了方便节点之间交换缓存信息, 需要对媒体数据进行离散化的表示。为了适应网络的异构性, 在模型中部署了多重描述编码MDC, 码流由多个描述组成, 分别代表每一个描述。这些描述的任何一个子集都可以被接收并被解码, 解码后的信号与原始信号相比, 会产生一定的失真, 失真的程度取决于接收到的描述的数量。再把每一个描述离散成时间长度相等的片段, 每一个描述都用一个缓存映射 (Buffer Map) 来表示节点中是否拥有某个片断的数据。为了正确地对多重描述进行解码, 每一个时间段内至少应该有一个片断被接收到。通过在每个时间段内请求多于一个片断, 解码后的视频质量会得到提高。如图2所示。
各个节点根据各自缓存数据的情况与伙伴进行数据交换, 所以节点和伙伴需要相互知道所缓存的数据的内容。节点和伙伴通过不断交换BM来了解相互间的缓存情况。MDC编码器将数据编码为多个不同的描述, 这些描述可能通过不同的路径到达相同的目的地, 解码器尽可能地将接收到的描述解码出来, 最后进行播放。在实现中, 每个片断包含一秒的数据, 用一个滑动窗口 (Sliding Window) 来代表节点的BM, 大小为120个片断, BM中用120个比特来记录, 每个比特代表一个数据片断, 比特的值为1表示有这个片断, 0表示没有。
1.3 普通节点架构
普通节点架构由3个关键模块构成, 如图3所示。
(1) 节点选择模块 (Peer Selecting Module) :包括一个超级节点列表缓存 (SN List Cache) 和一个伙伴管理子模块。利用超级节点, 根据网络状况和数据传输速率等因素选择出伙伴节点, 再利用模块中的伙伴节点管理, 从这个集合中的节点请求媒体数据来获取最优的数据传输速率。
(2) 数据调度模块 (Data Scheduling Module) :在数据发送节点间, 根据伙伴的BM为每个数据片断寻找一个最优的提供者, 并根据伙伴的服务能力, 数据带宽等因素来分派每个数据发送节点所发送数据的次序, 从而获得最小的数据接受延迟。
(3) 监控和Qo S模块 (Monitor&Qo S Module) :主要功能为动态监控每个数据发送节点的数据传输和数据丢失状况, 为节点选择模块和数据调度模块提供必要的统计信息, 用于Qo S控制。
1.4 超级节点架构
超级节点架构如图4所示。
超级节点的架构由4个关键功能模块组成:其中, 节点选择模块 (Peer Selecting Module) 、数据调度模块 (Data Scheduling Module) 以及监控和Qo S模块 (Monitor&Qo S Module) 与普通节点中对应的模块功能相同。这是由于SN是从拥有充足的CPU、内存和网络带宽资源的ON中挑选出来的, 代替专用服务器完成管理功能的节点, SN本身也是用户。而普通节点服务模块 (ON Serving Module) 的功能为: (1) 接受并管理ON向超级节点提交的查询请求, 从内容索引 (Content Index) 中找到与查询内容对应的ON的IP地址和端口号, 并反馈给提交查询的ON; (2) 向接受此SN管理的ON发送SN refresh list。
对等节点通过其属性角色选择相应的节点架构进行半结构化的P2P拓扑构造, 并最终进行流媒体内容的直播分发, 有效提高了分发效率。
2 结束语
P2P技术的迅速发展使其成为构建广域网中大型分布式系统的有力工具。P2P流媒体系统作为P2P技术的重要应用之一也成为当前分布式系统领域的一个研究热点。本文提出了一种半结构化的P2P流媒体直播模型, 该模型结合了中心结构化P2P模型与分布式无结构化P2P模型的优点, 在可扩展性与资源的检索性能上取得了一个较好的均衡。
参考文献
[1]KANGASHARJU, JUSSI.A T.Internet Content Distribution[D].PhD thesis, 2002.
[2]STEPHEN E D, DAVID C.Multicast routing in datagram internet works and extended LANS[J].ACM Transactions on Computer Systems, 1990 (2) .
[3]STEPHEN E D, DEBORAH E, DINO F.An architecture for wide-area multicast routing[J].IEEE/ACM Transaction on Networking, 1996 (2) .
[4]RATNASSAMY S, FRANCIS P, HANDLEY.M ETC.A scalable content addressable network[C].In Proceedings of the ACM SIGCOMM'Dl Conference, 2001.
半地下室框架结构设计与分析 第8篇
地下室刚度较大且埋置于土中,在地震时会受到土体的约束作用。当地下室满足《建筑抗震设计规范》GB 50011—2010[1]第6.1.14条规定时,可将其顶板作为上部结构的嵌固端。但在实际工程中存在很多半地下室结构,由于建筑自然采光及通风的功能要求,需在地下室挡土墙上部开满高位通窗。这种情况下,地下室挡土墙与顶板脱开,不能有效连接,用顶板作为上部结构嵌固端是不合适的。另外,地下室挡土墙上部开窗势必导致部分外圈框架柱在开窗范围内形成短柱[2]。针对这种情况,结合实际工程,对半地下室结构设计中的几个问题展开探讨。
1 工程概况
某学校教学楼工程,位于天津市河东区。建筑功能主要以教学、试验为主,地上5层,地下1层(半地下室),结构总高20.95m,(见图1)。按照天津市建设[2011]1469号文“关于提高我市学校医院等人员密集场所建设工程抗震设防标准的通知”,所有7度(0.15g)的学校建筑均按8度(0.2g)设计。框架结构抗震等级为二级,三类场地土。室内地坪为±0.000 m,室外地坪为-1.450m,地下室结构底板上皮标高为-4.100m,地下室建筑地坪为-3.900m,地下室结构层高4.100m。
2 计算模型及分析
2.1 整体模型的建立和计算结果对比
建筑要求地面以上开300mm高窗且沿两柱之间基本贯通,故地下室挡土墙与顶板不连接,因此该模型不能用地下室顶板作为上部结构的嵌固端。嵌固端应设置在基础顶面,半地下室埋入土中2.45m。
2.1.1 设计模型比较
1)模型一按6层框架设计,不加地下室挡土墙且不设置地下室,PKPM软件SATWE参数设置时地下室层数输入0。
2)模型二输入地下室挡土墙,SATWE参数设置时地下室层数输入1。高位通窗按剪力墙开洞处理。
2.1.2 模型计算结果比较
1)从侧移等整体指标来看,模型二的整体指标比模型一要好,也就是说模型一偏于不安全。
2)模型二由于输入剪力墙(钢筋混凝土地下室挡土墙)且设置一层地下室,侧向刚度突变,地下一层的框梁支座负弯矩较比模型一大了1.3倍左右。地下一层的框梁弯矩对比结果如图2,3所示。
3)模型二的地上一层框柱内力值远比模型一大,框柱x向纵筋的计算结果模型二比模型一大了1.4倍左右,框柱y向纵筋的计算结果模型二比模型一大了2倍左右,框柱箍筋没有太大变化。根据内力计算的框柱配筋结果对比如表1所示。
注:表中数据为:Asx/Asy//Asc
2.2 整体模型受力分析
1)由于地下一层周边地下室挡土墙(在整体计算模型中体现为剪力墙)刚度较大,且受周围土体的约束,因此底层的侧向刚度相对于上部几层而言要大很多。这种情况就框架整体而言,刚度是不均匀的,地上一层为刚度突变位置,极易发生剪切破坏。
2)由下地下室挡土墙对框架柱的约束作用,底层框柱在水平荷载作用下,窗户所在的高度范围内就形成了短柱,且其剪跨比很小,可以看作为极短柱。短柱在地震中大多会发生剪切斜拉破坏。
3) PKPM软件SATWE在计算剪力墙(地下室挡土墙)时对小孔洞采取忽略方式处理,这和实际情况有出入。若300mm高窗贯通,框架梁并未与地下室剪力墙连接,外圈框架梁内力不会如模型二输出的那么小。
2.3 针对整体模型设计措施
1)地下室剪力墙(地下室挡土墙)开洞后形成窗间短柱,这种情况确实不利于抗震。如果场地允许,可以将挡土墙与主体结构脱离,即沿着主体一定距离外设置挡土墙,此时地下室外墙即可采用砌体砖墙。主体结构与挡土结构保持一定距离,保证地震时二者不会碰撞。但在实际工程中,由于场地限制,这种方法通常无法实现。
若设地下室剪力墙,底层柱尤其是与剪力墙相连的外圈框架柱,就应该提高窗洞高度范围内框架柱的抗剪措施,对框架柱进行全高加密是一种有效措施,必要时可以加入型钢芯柱。
2)窗间未开洞的地下室剪力墙,如果水平长度较小应该设置成上下贯通的暗柱,因为在窗户高度范围内其受力状况类似短柱,为了避免在地震过程中暗柱端出现拉裂破坏,暗柱在此部分抗剪箍筋应当加密。
3)从侧移等整体指标来看,模型一偏于不安全,整体框架的梁柱主要基于模型一计算结果进行配筋。但由于地下室剪力墙(地下室挡土墙)对整体刚度的贡献,地上一层成为刚度突变部位,模型二时地下一层框梁的内力、地上一层框柱的内力均比模型一大。因此在实际配筋时为了结构安全,应按照两个模型的计算结果进行包络设计。
2.4 地下室挡土墙计算分析
地下室挡土墙与框架柱的连接在地下水位很低时可以设缝,但这种情况很少见。大多情况地下室挡土墙与框架柱的连接处理为固接或铰接;而墙上端因为开窗原因,形成自由端;墙下端和刚度较大的底板相连,可以按照固接处理。
与地下室挡土墙相接的框架柱在水平方向除了受到直接侧力外,还会受到挡土墙传来的间接侧压力。特别是柱的侧向刚度相对较大时,间接侧压力更不可忽略。如果挡土墙和框架柱之间设缝,就不存在间接侧压力。若二者相连,即便铰接处理,水平力依然会往框架柱上传递。
黄昆等[3]采用简化计算方法,将地下室挡土墙三角形荷载等效为矩形荷载,等效荷载的作用高度为2h0,图4为地下室挡墙侧压力荷载简图。
将地下室挡土墙视为三边固定一边自由的板,荷载按周边传递考虑,得出传到框架柱上的间接侧压力。
通过与有限元计算模型对比,当地下室挡土墙长L与高h的比值L/h在1.2~1.5时,简化计算误差在5%以内。
实际上,可以将地下室挡土墙作为板单元结构进行分析。按照板计算的一般原则,若挡土墙长L与高h的比值L/h>3,挡土墙即可视为单向板,侧向压力仅向挡土墙上下两端传递,而传给框架柱的间接侧压力则很小,可忽略不计。若L/h<2,可按双向板计算,此时框架柱的间接侧压力可按公式2计算。
在具体工程设计时需要对地下室外圈框架柱配筋进行人工计算校核[4]。从SATWE中读取柱轴力及节点弯矩、剪力,然后再施加上地下室挡土墙传来的间接侧压力,按照两端固接杆件核算。若2<L/h<3,可综合以上两种情况进行分析计算。
本工程中,柱距为8.4m,墙高为3m,外墙上端自由、下端固接。由于地下水位较高,为防止水渗入,外墙与柱之间不设缝。侧压力沿地下室挡土墙竖直方向单向传递,计算模型取1 m宽板带,按悬挑构件计算内力,用0.2mm裂缝控制配筋,挡土墙竖向筋为主受力钢筋。为弱化地下室挡土墙与框架柱的连接,水平方向钢筋配置宜尽量减小,但仍需保证二者交接处裂缝限值。
3 结论及建议
通过对带半地下室框架的受力特点和两种计算模型的对比分析,得出以下结论
1)半地下室框架结构的地上一层是刚度突变部位。模型一在侧移等整体指标上比模型二偏于不安全;模型二的地下一层框梁的内力、地上一层框柱内力均比模型一大。实际配筋应按照两个模型的计算结果进行包络设计。
2)开高窗形成的窗间短柱应当妥善处理,框架柱全高加密是一种有效措施,提高抗剪能力及延性。
3)如果场地条件允许,建议地下室挡土墙与整体结构脱离。
4)若地下室挡土墙与框架柱相连,且外墙长L与高h的比值<2,外圈框架柱应考虑间接侧压力,单独核算。
参考文献
[1]中国建筑科学研究院.CB 50011—2010建筑抗震设汁规范[S].北京:中国建筑工业出版社,2010.
[2]GB 50010—2010混凝土结构设计规范[S].北京:中国建筑工业出版社,2010.
[3]黄昆,张宪江,黄福标.半地下室框架结构的简化计算及设计方法[J].浙江建筑,2008(9):18-20.
半结构化信息范文
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。


