时间:2023-03-13 11:28:32
导言:作为写作爱好者,不可错过为您精心挑选的10篇数据机房解决方案,它们将为您的写作提供全新的视角,我们衷心期待您的阅读,并希望这些内容能为您提供灵感和参考。
一、背景综述
在实际的工作中,一旦数据中心机房的设备出现丝毫的故障,就会对计算机系统的运行造成很大的消极影响,鉴于这样情况,我们必须制定一系列的有效措施,既能保证及时的发现问题和解决问题,同时又能够减少工作量,提高工作效率。①机房的设备经常被盗窃,导致计算机系统没有办法正常的工作,另一方面,报警和监控以及记录功能的缺失,也导致了犯罪分子的作案活动更加猖獗;②维修人员在巡检的过程中,并没有良好的进行规范化管理措施,导致很多的工作出现了较大的漏洞;③供电系统有时候没有监控,一旦发生停电或者市电异常的情况,就没有办法及时的掌握数据中心机房的情况,更严重的情况就是,停电后若未及时切换到油机供电,后备电池也会因为过度放电而出现较大的损坏。
二、解决方案
2.1系统组成
从严格的角度来说,数据中心机房的综合监控系统包含两个部分,一个是数据中心机房周围环境和动力监控系统;另一个就是数据中心机房的IT监测系统,这两个系统都具有非常重要的作用,在实际的工作中,绝对不能发生人为加强某一系统,忽略另一个系统的情况。
数据中心机房环境动力监控系统监控的主要内容为:①UPS设备监控,此项设备监控对数据中心机房环境而言,具有决定性的影响;柴油发电机组设备监控,柴油发电机作为设备的核心部分,一旦发生问题,必须得到及时、有效的处理,否则会影响供电,在根本上对数据中心机房环境造成恶劣的影响;②空调设备监控,空调设备能够良好的调节数据中心机房环境的温度,对每一个设备都是非常重要的,在任何一个季节,都需要对温度有一个良好的掌控,否则会影响设备的运行,在硬件方面造成很大的损害,为以后设备的正常运行埋下隐患;③温湿度监测,温湿度是考量数据中心机房环境好坏的重要标准之一,温度和湿度都必须保持在一个合理的范围之内,这样才能保证数据中心机房的稳定性和安全性;
数据中心机房IT监测系统监控的主要内容为:①硬件方面―――网络设备以及服务器的监测,两项设备都是数据中心机房的重要组成部分,对客户具有非常重要的作用;②软件方面―――主要包括数据库的软件以及中间软件等等,在日常的工作中,这些软件能够及时的处理数据,同时提供客户最优质的服务,因此需要得到有效的监测。
2.2系统实现方式
2.2.1数据中心机房环境动力监控系统监控的实施方式
UPS设备监控的实施方法:UPS电源是UPS设备的重要组成部分,在实际的监控当中,需要通过智能协议转换器来进行监控,科研人员经过研究发现,如果用软件的方式和通信数据集中器进行通信,能够达到一个较好的效果,并且能够有效的实现UPS状态的全面诊断以及对UPS各项参数的监视。
如果机房的网络设备出现了异常的情况,那么监测系统可以实现以下几种管理功能,有效的控制异常情况:①能够对告警事件进行详细的记录,同时由管理人员根据不同的需求,对每一种事件进行详细的分类,良好的实现对事件的过滤,这样做的好处是能够及时的找到事件的原因,制定处理办法的时候也具有一定的针对性;②能够通过不同的定义,比方说事件的来源或者类型等等,实现对事件的分析,在实际的工作中按照实践的关联设置功能,自动、高效的区分重复事件,如此一来,就能大幅度的减少系统负载,提升系统的性能。
2.2.2服务器监测的实施方法以及服务器监测应该包括以下的内容
(1)监测服务器能否有效的运行,监测的系统需要广泛一些,虽然现阶段应用windows系统较多,但仍然需要对UNIX一类的主流系统进行有效的监测;(2)监测主流系统的平台上运行的相关进程以及服务的运行状况,这样有助于系统上的各种进程减少冲突,提高性能。
三、结束语
综上所述,完善的数据中心机房综合监控系统应该具备三大特点:能够实现从设备运行情况到机柜微环境,再到机房整体环境的多层次监控;有丰富的阈值设置以便监测出危机的存在,且有丰富的预警方式和预警流程以保证相关人员能够收到警讯。
目前海量数据处理还是一个比较新的研究方向,大多数都是各公司或者是组织各自研究自己的处理方法,国际上没有通用的标准,研究的方式和结果也都是各有千秋。针对项目中带有复杂业务逻辑的海量数据存储,主要从容量扩展和并行处理两个方面考虑。前文己论述过NoSQL分布式数据库由于其数据结构简单、不善于做JOIN连接等复杂操作,存在数据迁移问题,并不适用于本项目,所以本解决方案依旧从关系型数据库入手。其次为了支持多样的切分策略,本论文将实现range、list、consis
tent-hash模式。最后系统借鉴MPP并行处理架构,使得整个项目能部署在便宜的PC集群上,不仅能保证稳定性,还节省项目成本。
物理设施包含数据库服务器的基础架构、web服务器的选择,以及资源分配管理服务器的选择。这三者分别负责数据的存取、数据的分析处理以及资源工作的均衡分配,它们协同合作,共同搭建一个高效的协同的后端服务管理,使存储系统均衡工作、高效运行。
作为解决海量数据的存储方案,首要必须考虑是存放海量数据的需求。根据前文可知,分布式数据库的出现其根本原因是解决存放不下数据的问题,故而将数据依照策略存放在不同的数据库服务器上,存放数据的策略以及数据之间的并行查询处理是研究的重点。第二个问题是分布式处理方案,现有技术从各个方面进行过尝试,有的基于关系型数据库提出了多种shard
ing方案。将关系型数据库迁移到非关系型数据库上代价太大,所以本解决方案基于关系型数据库的系统。
根据以上的设计思路与实现目标,设计出分布式海量数据存储解决方案。该系统主要包含以下四个模块:
SQL解析模块。SQL语句复杂、格式多样、形式多变,解析结果作为数据切分的依据。解析SQL语句的方法是编译成字节码,生成语法树,这种方式的优点是准确率高、数据层次清晰、结构正确,但设计到相关语法树知识,比解析字符串更难以理解。
数据分发模块。如果集群系统中没有进行数据切分,则多台数据库服务器存储的是完全一样的数据,这实际上是对硬件资源的浪费,也在同步数据保持一致上浪费了更多的时间和效能。而且一旦数据再上升一个等级,很可能一台服务器就无法存储下大量数据。所以合适的数据切分策略是迟早的,本解决方案将结合现有的数据切分策略,结合业务逻辑,提供多样的切分策略,并且预留切分接口使用户灵活地自定义自实现,系统的可用性更高。
并行处理模块。由分发服务器和多台数据库服务器构成。相对于集中式数据库来说,分布式询代价需要考虑以下因素:
CPU处理时间,I/O消耗时间,还有数据在网络上的传输时间。在设计系统的时候,应该根据分布式数据库中各个数据库的地理位置的不同情况来设计。在局域网且传输率高的系统中,通信代价和局部处理的开销差别不大,在优化中则应平等对待;在数据传输率较低和通信网速度较慢的系统中,网络传输可能会比花费在查询中的CPU及I/O的开销更大,则应首要考虑优化网络通信。
汇总处理块。结果汇总大致分为两种情况:单机单库情况下,直接返回结果;多机多库的情况则需要在转发节点处进行一个汇总。
基于架构的工作流程大致如下:首先,转发节点收到客户端发来的SQL语句,将依据各个解析节点当前工作量、预计完成解析工作的时间、本条查询语句预估需要时间、历史响应需求时间等因素,将SQL语句转发给各个解析节点,对其进行语法解析。当所有的工作量都经过这个转发节点的时候,必然会产生高并发的问题。在存在多个分发节点的情形下,为了消除单个转发节点的性能瓶颈,本文设计多个分发节点,每个节点都可以将任务转发到不同的解析节点。采用RoundRobin策略将任务依次分发给每个解析节点,让工作量保持均衡。其次,解析节点解析本次查询的SQL语句,生成便于理解的SQL对象,通过调用相应的接口方法可以实现对SQL语句的操作。最后,各个数据库服务器执行了 SQL语句,便对查询结果进行一个汇总并返回,划分倘若是单机查询,那么处理的结果可直接返回给客户端。
SQL解析、数据切分以及转发归并的工作都由以上四个模块协同完成。
基于MPP架构的设计了关系型数据库的海量数据分布式存储解决方案。本章采用解析SQL语句、分发SQL语句,并行处理、归并汇总处理结果的方式完成整个框架。与MySQL
Cluster的区别在于采用的存储引擎就是MySQL,适应于本身就用MySQL进行存储的集中式数据库的改造,或是业务逻辑复杂的报表展示等,无论是业务的扩展,迁移都十分方便。
随着信息技术的发展,网络应用越加广泛,更多的企业开始使用OA系统进行办公,财务、ERP等线上系统更加普及。随着经济的发展,更多的企业选择在不同地区设立更多分部,各分部间的生产网、视频会议系统都依托于运营商的通信网络支撑,市政交通等部门的监控系统分布区域及其广泛,也更多是依赖IP网络运行。这些跨地区的资源调配就产生了大量的数据专线需求。
虽然数据专线业务并不是新型业务,但随着移动网络的发展,如何能更好的建设通信网络满足客户需求仍是值得研究的问题。
一、概述
集团客户专线是指通信运营商利用自有或租用通信资源,为集团客户提供互联网访问、语音业务、或为其机构各网点间提供点到点或点到多点的专用链路,从而实现集团客户专享的高质量网络通信及各种定制的综合业务信息化服务。
集团客户专线按业务类型分主要有语音专线、互联网专线和数据专线三类。
(一)语音专线:通过运营商的传输网络将集团客户语音交换机接入到运营商的交换网络,为用户提供固定电话及企业彩铃等各种增值语音服务。
(二)互联网专线:为集团客户提供各种速率的专用链路,链接至公用互联网骨干网络,从而为客户提供方便快捷的高速互联网访问服务。
(三)数据专线:为集团客户提供透明的数据传输通道,通道为“纯透明的”,用户自己组网,用户承载语音、数据、视频等多种业务。
二、业务需求
运营商提供的透明的传输链路,为集团客户提供从总部到各分部之间的数据传输通道。可为各金融机构提供各分支网点的生产网络,企事业单位各分支机构间的视频会议系统及办公自动化系统,公安交通等视频监控系统提供安全稳定的传输链路。集团客户由于其性质、业务、覆盖区域需要,对传输电路通常有以下要求:
(一)安全性:数据专线业务对安全性要求很高,要求运营商提供专用的内网电路供集团客户内部使用,并与互联网隔离。保证信息在边界接入过程中不被非法获取,一旦出现数据失密将导致严重后果。需要从物理层、网络层、应用层等各个层面实施数据保密性工作。
(二)可靠性:需提供电信级的业务可靠性,专线业务要求高QoS保障,依客户需求提供备用电路并在规定时间内完成故障修复。使用标准化的协议,达到互联互通。
(三)可扩展性:考虑客户后期发展及业务拓展,需预留一定量的传输资源及设备升级空间。
(四)覆盖性:大型企事业单位各地分支网点较多,运营商提供的传输链路应能覆盖到各分支网点,为其提供快速接入。
(五)需求多样化:需按客户需求,提供不同速率的带宽,并针对客户设备接口不同提供相应的接口。
三、解决方案
(一)SDH方式
从90年代起移动开始建设SDH传输网,核心层以10Gb/s和2.5Gb/s设备为主,汇聚层已2.5Gb/s设备为主,接入层以622Mb/s设备为主。SDH传输网覆盖范围广、自愈性能强,可靠性高,但现阶段集团不再新增SDH传输网的投资,现网资源比较紧张。
金融类客户一般对系统安全性可靠性要求较高,部分客户明确要求以SDH方式实现。以某银行地市分行到各支行、ATM网点的传输电路为例:在银行分行总部部署一台华为OSN3500光端机,根据客户需求配置相应板卡,用于汇聚所在分部的数据,电路链接至分行客户路由器。在每个网点部署1端华为Metro 100光端机,为客户设备提供FE接口或2M接口,新建光缆与运营商SDH接入网对接。考虑银行系统对安全性和可靠性要求较高,银行总部的SDH设备上联至运营商的汇聚机房OSN7500,并提供双路由保护。在每个网点都提供光端机下沉。拓扑图示意如下:
采用SDH方式组网,技术成熟稳定,系统安全性高,符合金融类系统对高可靠性的要求,但现网SDH接入环传输资源利用率已经很高,部分接入环时隙不足,接入该部分接入环的客户点,需提前将SDH传输网上的大颗粒数据业务迁移到PTN网络或GPON上,或提前对接入环进行拆组环,需要增加额外的投资及工期时间。
(二)PTN方式
PTN是面向分组业务和传送网络的技术,以分组交换为核心并提供多业务支持,能在保证网络质量的前提下答复提高网络带宽。但PTN传输网现阶段覆盖率还未达到100%。部分集团客户接入点不具备PTN接入条件。因SDH资源比较紧张,集团客户需求带宽较大时建议采用PTN方式实现,以某县政府视频会议系统为例,运营商为其提供该县政府到所辖10个乡镇视频会议系统所需传输电路,每条电路带宽为6M,客户设备接口为以太网接口。在该县政府新增一台三层交换机,用于汇聚数据,在每个分支机构提供1台多端口PTN光纤收发器,通过FE口上联至最近的PTN基站,通过PTN传送网连接至该县县政府,完成数据传输。PTN传输网资源丰富,可为集团客户提供高速数据传输,后期可为客户提供带宽扩容。在各接入点预留空余设备端口,可用于开通其他业务。拓扑结构示意如下:
现阶段还有少数区域PTN未完成全部覆盖,可考虑暂时使用SDH和PTN混合组网方式,待PTN开通后进行割接。
(三)GPON方式
GPON网络系统是构建于无源光分配网络上的宽带接入技术,由光线路终端OLT、无源分光器POS和光网络单元ONU组成。可以提供高带宽多业务的承载方式。近两年移动综合业务网市区和县城已基本完成覆盖,集团客户接入点位于综合业务区覆盖区域可利用综合业务网资源完成快速接入。以某单位市局至各县局间数据传输电路为例,在市局和各县局接入点新增1台符合客户设备接口需求的ONU,布放光缆至最近的综合业务网光缆交接箱,光交箱中新增1:16或1:32分光器,上联至综合业务网机房OLT设备,OLT上联至城域网汇聚交换机,由城域网汇聚交换机上联至MSG路由器,通过路由器完成数据传输。
四、方案比较和建议
【中图分类号】G250.74【文献标识码】A【文章编号】1672-5158(2013)07-0213-02
引言:近年来,随着经济改革的不断深入,企业的各项业务也有了长足发展,计算机应用水平得到迅速的提高。目前,开放平台加客户/服务器的双机热备份应用模式已经被我国中小型企业广泛采用。
通常这种应用模式是以两台小型机做互为备份的两个节点,同时联到一个共享磁盘柜上,构成一个Client/Server方式下的Server端服务器系统。这种服务器系统在考虑系统的高连续可用性时,一般从主机、网络到UPS电源都是一主一备,存放数据的磁盘选择磁盘镜像技术或选择磁盘冗余阵列5技术(RAID5)。
从硬件角度看,这种配置已经考虑了各组成部分的冗余,然而从应用的角度来看,这样的服务器系统还是有缺陷的。
对应用系统而言,数据库是非常重要的,而在这种服务器系统中数据库只有一个,一旦出现故障,不但整个系统会瘫痪,甚至还会给银行带来很大的经济损失。对于这个问题,双机热备份模式是无能为力的。在实际应用系统的运行过程中,由于参数设置不当或数据库本身存在的缺陷,使得数据库出现的问题在故障率中所占比重还是比较大的,因而给应用系统的可靠运行带来了较大的影响。本文针对这一问题,介绍我单位的一种解决方案。
一、系统的改进方案
为了解决Oracle数据库无备份的问题,必须另建一套服务器系统。然而对中小型企业来讲,另外投资一套小型服务器系统,经济上往往不允许。考虑到现在的PC服务器在性能上已经足可以充当企业级服务器,投资较小,所以我们选择了用PC服务器备份的方案,如图1所示:
根据对IBM System X服务器的压力测试结果,我们认为它具有处理日交易3万笔的能力,符合我单位目前业务的情况,因此我们选用了IBM System X服务器做备份Oracle数据库。
PC服务器硬件配置:
(1)CPU 4×Pentium Pro
(2)内存 8G
(3)硬盘 320G
软件环境:
(1)操作系统 Windows server 2003
(2)数据库 Oracle 10g
(3)应用软件 ERP软件
二、 RAID系统
RAID (Redundant Array of Inexpensive Dins),廉价冗余磁盘阵列。RAID是一种使用磁盘驱动器的方法,它将一组磁盘驱动器用某种逻辑方式联系起来,作为逻辑上的一个磁盘驱动器来使用,使RAID一般是在SCSI磁盘驱动路上实现的。它的优点在于:
通过将多个物理磁盘编织(weaving)进一个单独的逻辑卷来使用,使RAID相对传统的磁盘驱动器,在同样的容量下,价格要低许多。
通过将数据按条块(blocks)写入不同的磁盘来并行地读写几个磁盘,进而提升磁盘访向速度。带有多个磁盘控制器的RAID系统,存取速度提高很快。
RAID的具体实现可以靠硬件也可以靠软件,通过硬件实现RAID的产品有磁盘阵列柜,阵列柜中安装有磁盘阵列控制卡,可以直接将柜中的硬盘配置成为逻辑盘阵。磁盘阵列柜通过SCSI电缆与服务器上普通SCSI卡相连,系统管理员需直接在磁盘柜上配置磁盘阵列。
磁盘阵列控制器一般都支持多种RAID级别、磁盘的热插拔、在线平滑扩容和双冗余电源。
三、备份数据库工作原理
由于PC服务器中的操作系统、数据库与生产机中的版本不同,所以必须先将生产机中的数据库数据卸出来,以文本文件的形式传到PC服务器上,然后将此文本文件再装入PC服务器的数据库中,从而使两个数据库中的数据一致。慎重起见,还可以对重要表的有关字段进行求和,并将两个数据库的求和结果进行比较,若一致则可以放心,不一致则说明上述操作过程有问题,需要排除后重做。
1.日间备份
将每天晚上轧帐后的数据卸出并装载到PC服务器上,使得生产机和PC服务器中的数据在每天业务开始前保持一致。正常开机后,当生产机上的数据库出现问题不能正常使用时,可以通过修改PC服务器的网络地址,使上传的交易传到PC服务器,从而实现数据库的切换。
但应注意,切换后的数据库状态是每天业务开始时的状态,所以还应有一个追帐的过程,直到追帐完成,才算完成整个切换过程。这种切换所需的时间仍远远少于磁带恢复后再追帐的时间。一般磁带备份只做轧帐前的数据备份,这样磁带恢复后还要再做一个轧帐过程,才能恢复到开业时的数据库状态。
2.查找隔日数据
有时根据业务的需要,要求恢复前一天的有关数据,由于白天业务运转不允许生产数据库停下来恢复数据,有了PC服务器,可以将一些数据表在轧帐前卸出来,传到PC服务器上,需要时在PC服务器上恢复出来,进行数据的查找。
3.磁带备份的补充
服务器上的数据还起到异种介质备份的作用,提高了备份数据的可靠性。PC服务器可放在办公环境下使用,这样可使服务器与生产机保持适当的距离,一定程度上提高了整个系统的抗灾能力。
在双机热备份应用模式下,采用PC服务器作数据库的备份,提高了整个应用系统的连续可用性和数据备份的可靠性,由于该方案投资省、易实施,对中小型企业有一定的借鉴价值。
四、系统特点与总结
双机与磁盘阵列柜互联结构的特点是:
硬软结合实现真正意义上的数据与系统分离。
对硬件配置要求不高,服务器可采用不同或相差较大的配置。
系统切换时间段,平均切换时间为60秒。
切换过程对应用程序无影响,无需重新启动或登陆。
系统效率高。因为整个系统中数据读写、管理及容错由磁盘阵列来完成。而系统服务器故障纠错处理由HA软件来完成,而这两个都是相对独立的子系统。双机容错监控路径为SCSI线路(80M/S)和RS232线路或10/ 100MB自适应网卡线路,既不占用主机CPU资源,也不产用基础网络宽带,因此系统效率高。
双机与磁盘阵列柜互联结构不采用内存镜像技术,因此需要有一定的切换时间(通常为60-180秒),它可以有效地避免由于应用程序自身的缺陷导致系统全部宕机,同时由于所有的数据全部存贮在中置的磁盘阵列柜中,当工作机出现故障时,备份机接替工作机,从磁盘阵列中读取数据,所以不会产生数据不同步的问题,由于这种方案不需要网络镜像同步,因此这种集群方案服务器的性能要比镜像服务器结构高出很多。
双机与磁盘阵列柜互联结构的缺点是在系统当中存在单点错的缺陷,所谓单点错是指当系统中某个部件或某个应用程序出现故障时,导致所有系统全部宕机。在这个系统中磁盘阵列柜会导致单点错,当磁盘阵列柜出现逻辑或物理故障时,所有存贮的数据会全部丢失,因此在选配这种方案时,需要选用一个品质与售后服务较好的产品。
五、结束语
计算机技术、网络技术的广泛应用,使企业运作效率大大提高。同时也使现代企业对计算机系统的依赖性进一步增加。如何保证核心应用永不停止,关键数据不会丢失?越来越多的企业采用双机热备份或多机集群技术来解决这一问题,其中双机热备份技术以其技术成熟,成本相对较低,获得了广泛的应用。
典型的双机热备份系统通过在两台服务器上运行双机热备份软件和共用RAID磁盘阵列来实现。这种方案在电信,金触、证券、政府等部门和行业的成功应用,业己证明其可靠性和成熟性。
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2017)05-0009-02
1 问题的提出
随着大数据时代的来临,结构化数据、半结构化数据与非结构化数据已广泛存在于各个软件应用中。任何移动应用和系统都离不开数据库进行存储数据,而数据的复杂性给它们的开发带来了困难和挑战。
在现实生活中,社会现实中的万事成物都是一个动态系统。随着时间的推移和事情的发展,各种实体都会发展变化,具体体现在实体属性的变化上,因此,我们称之为实体的动态属性[1]。例如,在一款银行绩效考核系统中的客户经理实体,随着业务的发展,客户经理的其考核内容也会发生变化,会有存款业绩、贷款业务、基金业绩、是否投诉等不断增加,也会产生相对应的业绩数值,这些不断业绩都称为该客户经理实体的动态性,详情如表1客户经理实体2017年1月份业务需求表所示。
在实际的项目开发中,固定数量的、明确的实体属性,有利于软件设计与开发人员进行项目开发。但是,动态属性的实体,由于实体属性的个数未知,属性名称未知,在系统运行过程中,根据业务的需要,随时增添新的属性,因此,给项目开发人员带来了困难和挑战。笔者在数据库设计方面经过长期的实践,探索出了针对该问题的实体的动态属性在数据库设计中的解决方法,希望对有相同需要的数据库设计人员或软件开发人提供一点参考价值。
2 定义相关数据结构
数据库中的数据结构与数据对象的数据类型、内容、性质有关的,是对数据对象的一个静态描述。为了便于说明,还以上述绩效考核系统中的客户经理实体为例进行描述。该客户经理实体包括存款业绩、贷款业务、基金业绩、是否投诉等属性,其在关系数据库中可以定义成相关字段,具体详细结构描述如下:
Create Table ClientManager(
CName nvarchar(50), //姓名字段
CDeposit decimal(18, 2), //存款业绩字段
CLoan decimal(18, 2), //贷款业绩字段
CFund decimal(18, 2), //基金业绩字段
CIsComplain nvarchar(2), //是否投诉字段
... //未知属性字段
)
很显然,由于实体未知属性的存在,上述结构中的字段不明确,这样的设计在目前的数据库技术中不能得以实现。
3 关系数据库中实体的设计方法
目前,市场要流行的关系型数据库门类众多,有甲骨文公司的Oracle、MySQL,有微软公司的SQL Server,还有针对移动应用的SQLite。下面针对上述实体的动态属性问题,给出两种关系型数据库的解决方法。
3.1 采用改行为列
为了改变上述字段不明确的问题,从表1中可以看出是二维表中的字段不明确,采用以行来代替列的形式,就可以把未知的列的值作为一条记录存储于表中,这样,就可以根据需求动态满足字段的增加或减少,解决该问题。但是,这样需要解决两个问题,一个是属性名的问题和另一个属性值的问题。因此,行转为列的形式中,二维表中需要属性名和属性值两列。具体的在客户经理实体中,定义为经理姓名、业绩名称和业绩额,具体详细结构描述如下:
Create Table ClientManager(
CName nvarchar(50), //经理姓名
CAchieveName nvarchar(50), //业绩名称字段
CAchieveValue nvarchar(50) //业绩额字段
)
在关系数据库中,客户经理的实体二维表中的业绩和业绩额从以行的形式转为以列的形式,但是,表中的记录数据增加,其具体形式如表2客户经理实体行转成列后的样式表所示。
3.2 采用两个关系实体
采用行转为列的方式能够适应简单属性值全都一个数据类型的动态属性的问题,比如,例子中的业绩额全为数值类型,开发人员在进行开发实现功能时可以进行统一计算。但是,如果属性不是一个统一的类型,比如例子中的业绩额有数值类型的,还有字符类型的。这种情况下,程序开发人员,在进行数据取值时,要有目的的进行运算,而在例子中属性值的数据类型不明确,给开发人员带来了麻烦。解决这种复杂的情况,可以增加一个实体表对属性值的取值详细信息进行描述,而将在该实体中将上一个实体的属性名作为外键,这样,就能够保证数据的一致性。在例子中,在客户经理实体的基础上,增加一个业绩设置实体,其字段有业绩名称、业绩额的取值类型、业绩额的取值长度、业绩额的取值精度,具体表述所下:
Create Table AchieveSet(
AchieveName nvarchar(50), //业绩名称字段
AValueDataType nvarchar(50), //业绩额的取值类型
AValueLength int, //业绩额的取值长度
AValuePrecision int //业绩额的取值精度
)
综上所述,通过行转列的方式,解决属性值同一类型的动态属性问题;通过两个实体来解决属性值非同一类型的复杂的动态属性问题。程序开发人员可以根据不同的需求,采用不同的方法对系统进行开发。
4 非关系数据库实体的设计方法
随着技术的发展,对半结构化、非结构化的数据进行处理,出现了NoSQL数据管理技术的发展。下面结合非关系数据技术,给出两种解决动态属性问题的解决方法。
4.1 采用HBase模型
HBase是一个分布式的,面向列族进行存储的数据库[4]。在HBase数据库中,动态属性可以采用它的数据模型来进行实现。定义一个属性列族,而在该列族中根据需要可以任意动态放入子列即可。具体操作是定义一个客户经理实体,在该实体中创建一个业绩列族,通过行键来存储客户经理实体记录中的经理名称,具体描述如下:
create ‘ClientManager’,'CAchieve'
其中,ClientManager’是客户经理实体,'CAchieve'是客户经理的业绩。
实体表创建完成后,可以进行操作,进行存储记录数据,其操作如下:
put 'ClientManager','张三','CAchieve:存款业绩','10000'
put 'ClientManager','张三','CAchieve:是否投诉','是'
put 'ClientManager','李四','CAchieve:基金业绩','10500'
...
其中,张三、李四列使用的是HBase行键,'CAchieve'冒号后面是动态属性。
4.2 采用MongoDB模型
MongoDB稻菘馐遣捎梦牡怠⒓合和数据库三部分来对数据进行组织[5]。在MongoDB数据库中,动态属性可以采用它的数据模型来实现,根据其文档的机制来进行实现。在例子中,采用定义一个客户经理实体的集合,在集合中插入定义好的记录文档,具体操作如下:
db.createCollection("'ClientManager'"); //定义客户经理集合
db.ClientManager.insert({"name":"李四","存款业绩":10000",是否投诉":是})
db.ClientManager.insert({"name":"李四","基金业绩":11000,"是否投诉":是})
其中,大括号{}内的数据是文档信息,存储客户经理信息,而每一键值对记录该客户经理实体的绩效信息,比如,"存款业绩":10000"等。每个文档内中的键值对中的键可以不相同,这样,就达到了实现动态属性的要求。
5 总结
截止到目前为止,关系型数据库理论和非关系型数据库理论并存,而且他们都已经发展得很成熟,在市场上广泛应用。作者从实际开发一款绩效考核系统中,考核指标不断变化的实际需求出发,调研和总结当前市场上几种处理实体属性不断变化的解决方案。根据不同的方案可选择不同的数据库技术,在开发实施过程中需要相应的技术条件和设备条件。总之,希望给后来者的学习和工作提供一些建议和帮助。
参考文献:
[1] 唐小刚,谭石强.一种实体属性非确定的关系数据库设计方法[J]. 湘南学院学报,2006(4).
[2] 李华娟.关系型数据库设计之实践技巧[J].电子技术与软件工程,2016(1).
一、系统设计及解决方案实现的背景
纵观券商IT发展现状,首先企业级业务应用越来越多,分工也越来越细,而企业级的业务应用需求和要求都越来越高,单个业务产品满足不了企业级应用需求,以下是目前券商主要面临的企业级应用需求:
1.面向上级监管部门的数据报送
2.企业级合规管理和风险控制要求越来越高
3.实时动态业务风险监控
4.企业决策支持平台
5.客户营销管理
二、数据中心目标定位
概括而言,数据中心一方面是现有营业部柜台交易系统、总部清算系统、稽核系统等业务系统的数据采集者和管理者,同时也是营销管理、稽核监控、风险管理、数据挖掘和多维分析系统的数据提供者。
(一)产品定位。企业数据标准中心,据交换中心,据服务中心。
(二)功能定位。致力于企业业务数据的管理方法和管理工具研发,包括业务数据组织架构规划、数据规范管理、数据质量管理、数据管理以及数据的复用性管理等方面的系统性工程。
(三)存贮设计定位
既要考虑高并发高效率的OLTP服务处理,也要考虑大数据量访问的OLAP统计分析要求, 基于未来5年到10年的数据存贮容量测算,以此来考虑系统的主机、存储架构设计以及数据处理技术应用等技术研究工作的方向。
三、系统设计原则
数据中心项目技术解决方案的设计原则体现在以下六个方面,使得有限的资源以较有效的协作方式共同发挥效用:
(一)可扩展性
数据模型:设计模型时,尽可能满足未来可能要上线的业务系统数据模型,同时还需制定一套合理的模型设计规范。
数据分发平台:在设计时应考虑,随着分发数据规模的扩大和分发节点的增多,对分发处理和传输处理的性能要求会越来越高。
(二)高性能
分发平台:需考虑大数据量条件下的文件传输效率,主要体现在特殊日期及特殊情况下的全量文件传输。数据库设计:同时要考虑分析类型的大批量数据或频繁访问需求,还要满足实时监控类的高并发访问要求。。
(三)可管理性
数据质量管理:报告的可读性,标准的可维护性,问题处理流程的可操作性。数据分发平台:需要充分考虑数据分发任务易于配置,传输结果易于监控。
(四)高可用性
数据模型的可用性:能屏蔽源系统结构的变化对数据中心系统带来影响。局部数据模型的扩展不会对其它数据模型产生大的影响。系统备份:生产系统出现异常时,备份恢复机制及时恢复处理。
(五)安全性。一是防止数据中心系统的数据资源被恶意修改和盗取;二是防止数据在传输过程中被截留和篡改。
(六)可重用性。可重用性是指尽可能避免数据中心项目的重复投入,应尽可能考虑包括物理设备、系统软件、框架组件、规范方法以及业务应用等多个层面上的复用。
四、数据库存贮方案设计
1.1 数据各逻辑层级划分。为保证数据中心能提供多层次、多粒度、多特征的数据服务,并保证ETL过程的清晰、可控、完整、准确,数据中心根据数据性质、处理阶段以及数据质量的不同分为原始层、标准层、模型层、数据集市层4个数据层,具体如下:
1.2 数据库系统的硬件架构设计。根据系统分析得出的各项数据,即可得到相应的硬件配置要求。
1.2.1 存储设备容量评估。本节提出的“存储容量规划”将支持过去5年以上的历史数据和未来10年的新增业务数据的存储空间要求。
1.2.1.1 基础数据规模评估。根据调查,某券商2002年以来(至2012年)的历史数据规模可按1.5T计算。
我们以此次配置的存储“满足未来3-4年(从2012年算起)的业务正常运行”、“将考虑未来10年的业务运行的扩展能力”这两个条件来评估,得出的基础数据规模为:
A2015=1.5T+(7G×25%×236)×(1.05+1.1025+1.1576)
约=2.9T
A2022=1.5T+(7G×25%×236)×(1.05+1.1025...+1.05^10)
约=6.8T
注:公式中的25%是增量数据因子。每次进行清洗时,通过一定的方法,将部分非增量数据丢弃(这75%的数据,我们通过比对法发现其与历史数据或存量数据有重复取值,将其载入后暂存待查或去除)的结果。
1.2.1.2 逻辑数据存储规模评估。上节评估出的“基础数据规模(后称A)”,将是本系统进行逻辑数据存储规模(后称B)的依据。原始层数据的规模B1:按最后年度的1倍采集数据量计算。ODS层数据的规模B2:考虑到原始数据被处理后的部分业务数据的重新组织和重定义,且会生成一定的聚集数据,应给予适当的冗余,此处的冗余因子设定为1.2。
EDW层数据的规模B3:考虑ODS数据将经过较大规模的重新组织和聚集处理(初步设计按10大主题进行分析)进入此层,需要考虑较大的冗余度,按业务特点初步设定此处的冗余因子设定为1.2×1.3=1.56。
1.3 备份环境设计。根据证监会的相关要求,系统需要建设本地“备份和应用测试机”环境。但如果我们只是刻板的将“生产环境”克隆一下,将极不经济。我们需要按照应用特点、数据处理要求,来定制备机架构。本地“备份和应用测试机”需兼顾“数据备份和本地容灾”双重职能。
1.4 数据备份需求评估。数据中心的稻荼匦虢立可靠有效的备份机制,避免由于数据丢失。初步规划:将数据中心管理的数据分成3类并分别制定备份策略。这3类数据可以使用用户隔离、表空间隔离相结合的方式,增强备份调度的可操作性。静态数据、配置信息表(/领域表):可以每日备份,并可覆盖性备份,保留最近3日或者5日的备份即可。
2.蔬菜产销价格存在巨幅价差。以春天蔬菜价格为100,夏天则为76,秋天则为73,冬天则为80。今年春节过后,受雨雪天气影响,本地叶菜类蔬菜有一定涨幅,但由于各地提前做好的保供给预案,加上海南、山东等省份调入量增加,茄果、根茎类等蔬菜价格不升反降。当前江西省蔬菜集中上市,辣椒等本地主打蔬菜品种价格下跌明显,据报道,永丰县坑田镇3500亩、700万公斤辣椒平均价格仅1元/公斤,而去年为10元/公斤。
从江西省农业厅市场处开展的生产者价格(农民出售价)调查和县级农贸市场价格监测情况看,两者平均价差为289%。市场价格仅是20家县城农贸市场平均价,如果以大中城市菜场价算,价差还要大的多。
关于蔬菜巨幅价差原因探究
1.产地蔬菜市场发展缓慢。蔬菜产销最佳模式是存得住、运得掉、卖得好、赚得到。首先是要存得住,由于产地市场投入不足、发育迟缓。蔬菜往往一上市就面临市场冲击,几乎无话语权。
2.蔬菜采后商品化处理程度低。冷链设施匮乏、贮运保鲜加工技术落后,带来蔬菜商品质量差、运耗大、食用不便等诸多问题,全省每年因蔬菜腐烂造成的损失约占产值的25%-30%。2013年江西省人均蔬菜供应量278公斤,而城镇每人年均蔬菜购买量仅120公斤。
3.销售中间加价环节过多且不规范。这也是为什么农民种菜卖不出去,而城市蔬菜依然价高的症结之一,特别是2008年冰冻灾害天气期间反应特别强烈。
解决或缓解巨幅价差的建议
1.大力发展产地批发市场或田头市场。产地市场(另有中转和销地市场)应是公益性的,以政府投入为主。国外产地市场大都以配送中心、分拣中心等形式出现。此外要加大对家庭农场、合作社、龙头企业贮运能力的培育。
2.减少流通环节,规范中间商利润。推行农超对接、产销直供等新型流通方式,大力推进农产品经营网络化,探索开展农产品电子商务试点。支持涉农企业、农民合作社发展线上线下交易,充分利用信息技术,创建最快速度、最短距离、最少环节的新型农产品流通方式。
3.加大对政策落实情况的督导。2012年国务院出台了《关于深化流通体制改革加快流通产业发展的意见》,今年商务部等13部门出台了《关于进一步加强农产品市场体系建设的指导意见》,对农产品批发市场的财政支持、金融支持、用地支持和用水、用电支持都进行了明确。据了解,江西省有些地区农产品批发市场在用地方面、水电方面的优惠政策难以落实,建议相关部门要加大督导力度。
虽然这些行业的最终应用不尽相同,但某些信号调理需求却是共同的。这些系统的主要部分要求对多个传感器进行精确数据采集,或者要求高采样速率。 此外,很多这样的应用都有很严格的功率预算,因为它们采用电池供电,或者无法耐受自身电子元件发热导致的额外升温。因此,需要用到可以在温度范围内保持高精度,并且可以轻松用于各种场景的低功耗模数转换器(ADC)信号链。这类信号链见图1,该图描绘了一个井下钻探仪器。
虽然额定温度为175℃的商用IC数量依然较少,但近年来这一数量正在增加,尤其是诸如信号调理和数据转换等核心功能。这便促使电子工程师快速可靠地设计用于高温应用的产品,并完成过去无法实现的性能。虽然很多这类IC在温度范围内具有良好的特性化,但也仅限于该器件的功能。显然,这些元件缺少电路级信息,使其无法在现实系统中实现极佳性能。
本文中,我们提供了一个新的高温数据采集参考设计,该设计在室温至175℃温度范围内进行特征化。该电路旨在提供一个完整的数据采集电路构建块,可获取模拟传感器输入、对其进行调理,并将其特征化为SPI串行数据流。该设计功能非常丰富,可用作单通道应用,也可扩展为多通道同步采样应用。由于认识到低功耗的重要性,该ADC的功耗与采样速率成线性比例关系。该ADC还可由基准电压源直接供电,无须额外的电源轨,从而不存在功率转换相关的低效率。这款参考设计是现成的,可方便设计人员进行测试,包含全部原理图、物料清单、PCB布局图和测试软件。
电路概览
图1所示电路是一个1 6位、600kSPS逐次逼近型模数转换器系统,其所用器件的额定温度、特性测试温度和性能保证温度为175℃。很多恶劣环境应用都采用电池供电,因此该信号链针对低功耗而设计,同时仍然保持高性能。
本电路使用低功耗(600kSPS时为4.65mW)、耐高温PulSAR ADCAD7981,它直接从耐高温、低功耗运算放大器AD8634驱动。AD7981ADC需要2.4-5.1V的外部基准电压源,本应用选择的基准电压源为微功耗2.5V精密基准源ADR225,后者也通过了高温工作认证,并具有非常低的静态电流(210℃时最大值为60μA)。本设计中的所有IC封装都是专门针对高温环境而设计的,包括单金属线焊。
模数转换器
本电路的核心是16位、低功耗、单电源ADC AD7981,它采用逐次逼近架构,最高支持600kSPS的采样速率。如图2所示,AD7981使用两个电源引脚:内核电源(VDD)和数字输入/输出接口电源(VIO)。VIO引脚可以与1.8~5.OV的任何逻辑直接接口。VDD和VIO引脚也可以连在一起以节省系统所需的电源数量,并且它们与电源时序无关。图3给出了连接示意图。
AD7981在600 kSPS时功耗典型值仅为4.65mW,并能在两次转换之间自动关断,以节省功耗。因此,功耗与采样速率成线性比例关系,使得该ADC对高低采样速率——甚至低至数Hz——均适合,并且可实现非常低的功耗,支持电池供电系统。此外,可以使用过采样技术来提高低速信号的有效分辨率。
AD7981有一个伪差分模拟输入结构,可对IN+与IN-输入之间的真差分信号进行采样,并抑制这两个输入共有的信号。IN+输入支持OV至VREF的单极性、单端输入信号,IN-输入的范围受限,为GND至lOOmV。AD7981的伪差分输入简化了ADC驱动器要求并降低了功耗。AD7981采用10引脚MSOP封装,额定温度为175℃,
ADC驱动器
AD7981的输入可直接从低阻抗信号源驱动;然而,高源阻抗会显著降低性能,尤其是总谐波失真(THD)。因此,推荐使用ADC驱动器或运算放大器(如AD8634)来驱动AD7981输入,如图4所示。在采集时间开始时,开关闭合,容性DAC在ADC输入端注入一个电压毛刺(反冲)。ADC驱动器帮助此反冲稳定下来,并将其与信号源相隔离。
低功耗(ImA/放大器)双通道精密运算放大器AD8634适合此任务,因为其出色的直流和交流特性对传感器信号调理和信号链的其他部分非常有利。虽然AD8634具有轨到轨输出,但输入要求从正供电轨到负供电轨具有300mV裕量。这就使得负电源成为必要,所选负电源为2.5V。AD8634提供额定温度为175℃的8引脚SOIC封装和额定温度为210℃的8引脚FLATPACK封装。
ADC驱动器与AD7981之间的RC滤波器衰减AD7981输入端注入的反冲,并限制进入此输入端的噪声带宽。不过,过大的限带可能会增加建立时间和失真。因此,为该滤波器找到最优RC值很重要。其计算主要基于输入频率和吞吐速率。
由AD7981数据手册可知,内部采样电容CIN=30pF且tCONV=900ns,因此正如所描述的,对于lOkHz输入信号而言,假定ADC工作在600kSPS且CFXT=2.7nF,则用于2.5V基准电压源的电压步进为:
因此,在16位处建立至1/2 LSB所需的时间常数数量为: AD7981的采集时间为:
通过下式可计算RC滤波器的带宽:
这是一个理论值,其一阶近似应当在实验室中进行验证。通过测试可知最优值为R EXT=85 Q和CEXT=2. 7nF(f_3dB_693. 48kHz),此时在高达l75℃的扩展温度范围内具有出色的性能。
在参考设计中,ADC驱动器采用单位增益缓冲器配置。增加ADC驱动器增益会降低驱动器带宽,延长建立时间。这种情况下可能需要降低ADC吞吐速率,或者在增益级之后再使用一个缓冲器作为驱动器。
基准电压源
ADR225 2.5V基准电压源在时210℃仅消耗最大60μA的静态电流,并具有典型值40×10-6/℃的超低漂移特性,因而非常适合用于该低功耗数据采集电路。该器件的初始精度为±0.4%,可在3.3-16V的宽电源范围内工作。像其他SAR ADC-样,AD7981的基准电压输入具有动态输入阻抗,因此必须利用低阻抗源驱动,REF引脚与GND之间应有效去耦,如图5所示。除了ADC驱动器应用,AD8634同样适合用作基准电压缓冲器。
使用基准电压缓冲器的另一个好处是,基准电压输出端噪声可通过增加一个低通RC滤波器来进一步降低,如图5所示。在该电路中,49.9Ω电阻和47μ电容提供大约67Hz的截止频率。
转换期间,AD7981基准电压输入端可能出现高达2.5mA的电流尖峰。在尽可能靠近基准电压输入端的地方放置一个大容值储能电容,以便提供该电流并使基准电压输入端噪声保持较低水平。一般而言,采用低ESR-10μ或更高——陶瓷电容,但对于高温应用来说会有问题,因为缺少可用的高数值、高温陶瓷电容。因此,选择一个低ESR、47μF钽电容,其对电路性能的影响极小。
数字接口
AD7981提供一个兼容SPI、QSPI和其他数字主机的灵活串行数字接口。该接口既可配置为简单的3线模式以实现最少的I/O数,也可配置为4线模式以提供链回读和繁忙指示选项。4线模式还支持CNV(转换输入)的独立回读时序,使得多个转换器可实现同步采样。
本参考设计使用的PMOD兼容接口实现了简单的3线模式,SDI接高电平VIO。VIO电压是由SDPPMOD转接板从外部提供。转接板将参考设计板与ADI系统开发平台(SDP)板相连,并可通过USB连接PC,以便运行软件、评估性能。
电源
本参考设计的+5V和-2.5V供电轨需要外部低噪声电源。由于AD7981是低功耗器件,因此可通过基准电压缓冲器直接供电。这样便不再需要额外的供电轨——节省电源和电路板空间。通过基准电压缓冲器为ADC供电的正确配置如图6所示。如果逻辑电平兼容,那么还可以使用VIO。就参考设计板而言,VIO通过PMOD兼容接口由外部供电,以实现最高的灵活性。
IC封装和可靠性
ADI公司高温系列中的器件要经历特殊的工艺流程,包括设计、特性测试、可靠性认证和生产测试。专门针对极端温度设计特殊封装是该流程的一部分。本电路中的175℃塑料封装采用一种特殊材料。
耐高温封装的一个主要失效机制是焊线与焊垫界面失效,尤其是金(Au)和铝(Al)混合时(塑料封装通常如此)。高温会加速AuAl金属间化合物的生长。正是这些金属间化合物引起焊接失效,如易脆焊接和空洞等,这些故障可能在几百小时之后就会发生,如图7所示。
为了避免失效,ADI公司利用焊盘金属化(OPM)工艺产生一个金焊垫表面以供金焊线连接。这种单金属系统不会形成金属间化合物,经过195℃、6000小时的浸泡式认证测试,已被证明非常可靠,如图8所示。
虽然ADI公司已证明焊接在195℃时仍然可靠,但受限于塑封材料的玻璃转化温度,塑料封装的额定最高工作温度仅为175℃。除了本电路所用的额定175℃产品,还有采用陶瓷FLATPACK封装的额定210℃型号可用。同时有已知良品裸片(KGD)可供需要定制封装的系统使用。无源元件
应当选择耐高温的无源元件。本设计使用175℃以上的薄膜型低TCR电阻。COG/NPO电容容值较低常用于滤波器和去耦应用,其温度系数非常平坦。耐高温钽电容有比陶瓷电容更大的容值,常用于电源滤波。本电路板所用SMA连接器的额定温度为165℃,因此,在高温下进行长时间测试时,应当将其移除。同样,0.1英寸接头连接器(J2和P3)上的绝缘材料在高温时只能持续较短时间,因而在长时间高温测试中也应当予以移除。对于生产组装而言,有多个供应商提供用于HT额定连接器的多个选项,例如MicroD类连接器。
PCB布局和装配
在本电路的PCB设计中,模拟信号和数字接口位于ADC的相对两侧,ADC IC之下或模拟信号路径附近无开关信号。这种设计可以最大程度地降低耦合到ADC芯片和辅助模拟信号链中的噪声。AD7981的所有模拟信号位于左侧,所有数字信号位于右侧,这种引脚排列可以简化设计。基准电压输入REF具有动态输入阻抗,应当用极小的寄生电感去耦,为此须将基准电压去耦电容放在尽量靠近REF和GND引脚的地方,并用低阻抗的宽走线连接该引脚。本电路板的元器件故意全都放在正面,以方便从背面加热进行温度测试。完整的组件如图9所示。
针对高温电路,应当采用特殊电路材料和装配技术来确保可靠性。FR4是PCB叠层常用的材料,但商用FR4的典型玻璃转化温度约为140℃。超过140℃时,PCB便开始破裂、分层,并对元器件造成压力。高温装配广泛使用的替代材料是聚酰亚胺,其典型玻璃转化温度大于240℃。本设计使用4层聚酰亚胺PCB。
PCB表面也需要注意,特别是配合含锡的焊料使用时,因为这种焊料易于与铜走线形成铜金属间化合物。常常采用镍金表面处理,其中镍提供一个壁垒,金则为接头焊接提供一个良好的表面。此外,应当使用高熔点焊料,熔点与系统最高工作温度之间应有合适的裕量。本装配选择SAC305无铅焊料,其熔点为217℃,相对于175℃的最高工作温度有42℃的裕量。
性能预期
采用lkHz输入正弦信号和5V基准电压时,AD7981的额定SNR典型值为9ldB。然而,当使用较低基准电压(例如2.5V,低功耗/低电压系统常常如此),SNR性能会有所下降。我们可以根据电路中使用的元件规格计算理论SNR。由AD8634放大器数据手册可知,其输入电压噪声密度为4.2nV/ ,电流噪声密度为0.6pA/ 。由于缓冲器配置中的AD8634噪声增益为1,并且假定电流噪声计算时可忽略串联输入电阻,则AD8634的等效输出噪声贡献为:
RC滤波( )器之后的ADC输入端总积分噪声为: AD7981的均方根噪声可根据数据手册中的2.5V基准电压源典型信噪比(SNR,86dB)计算得到。
整个数据采集系统的总均方根噪声可通过AD8634和AD7981噪声源的方和根(RSS)计算:
因此,室温(25℃)时的数据采集系统理论SNR可根据下式近似计算:
测试结果
电路的交流性能在25~185℃温度范围内进行评估。使用低失真信号发生器对性能进行特性化很重要。本测试使用Audio Precision SYS-2522。为了便于在烤箱中测试,使用了延长线,以便仅有参考设计电路暴露在高温下。测试设置的功能框图如图10所不。
由前文设置中的计算可知,室温下期望能达到大约86dB的SNR。该值与我们在室温下测出的86.2dB SNR相当,如图11中的FFT摘要所示。
评估电路温度性能时,175℃时的SNR性能仅降低至约84dB,如图12所示。THD仍然优于-100dB,如图13所示。本电路在175℃时的FFT摘要如图14所示。
小结
中图分类号:TP309.3 文献标识码:A 文章编号:1007-9599 (2013) 02-0000-02
1 问题的产生和解决方案
1.1 问题的发现
在进行学校和科室的资料整理的工作中,发现日常的事务性资料的管理中存在很多的冗余数据。例如某位老师在入校时提交了一份详细的个人资料,可能在后期工作中又有可能需要他的个人信息,因此又让他提供一份详细的个人资料,而这两份个人资料之间有很多相同的文件(如电子照片、个人的工作经历等)。这些重复存储的冗余数据不仅给资料的管理带来了一系列的问题,还造成了存储空间的极大浪费,日积月累这些数据会成海量增加。假设每人有10M的冗余数据,学校有师生2000人,全市有146所中职院校,那么就有2920G的冗余数据,全省有559所中职院校,那么就有11180G的冗余数据。因此对资料管理系统中重复数据进行有效删除已迫在眉睫。
1.2 问题的解决方案
对于处理冗余数据和海量存储,最流行的企业级解决方案是采用重复删除技术。
数据的重复删除技术是通过去除冗余数据来减小数据存储系统的容量,从而降低数据存储系统的成本。重复数据删除系统的原理是将大数据分割成许多小的数据块,然后将它们和系统中现有的数据进行比较[1]。要存储的数据在数据存储系统中已经存在,则不复制该数据,这些数据在数据存储系统中没有记录,则把数据插入数据存储系统,并记录新插入数据的索引。
“重复数据删除”是指特定的数据简化方法,该方法基于这样一种原理构建而成:为特定数据集中长度可变的冗余数据块(数据段)替换引用指针[2]。重复数据删除的目的是增大磁盘阵列中可存储的信息量,并增加可通过网络传输的有效数据量[3]。基于长度可变的数据段进行重复数据删除,则提供比单实例存储技术更大的粒度,因而能够识别并且无需存储所有相同文件的重复实例[4]。
我们可以通过设计一个基于重复删除技术的资料管理系统来解决数据冗余的问题,所有的老资料必须由资料管理系统来管理,所有的新资料必须通过资料管理系统来录入。首先对资料管理系统中所有的资料内容进行分块,然后建立布隆过滤器,并通过哈希函数将所有的分块映射到索引数组中,然后通过对录入的资料进行哈希散列得到在索引数组中的位置,如果该资料在分块索引数组中存在,则认为是重复数据,对其进行删除。
2 方案的详细设计
2.1 布隆过滤器原理
布隆过滤器(Bloom Filter)是一个很长的二进制向量和一系列随机映射函数。布隆过滤器是一种空间效率很高的随机数据结构,它利用位数组很简洁地表示一个集合,并能判断一个元素是否属于这个集合。布隆过滤器的这种高效是有一定代价的:在判断一个元素是否属于某个集合时,可能会把不属于这个集合的元素误认为属于这个集合。
哈希函数的个数k不是越大越好,k 为 ln2 * (m / n) ,才能使得f最小,k个哈希函数越相互独立效果越好。
当集合S={x1, x2,…,xn}的所有元素都被k个哈希函数映射到m位的位数组中时,这个位数组中某一位还是0的概率是:
p=(1- 1m )kn e-kn/m
(1-p)k就表示k次散列都刚好选中1的区域,即失败率:
f=(1-e-kn/m)k=(1-p)k
2.2 布隆过滤器算法设计
首先将现有的资料内容分块建立布隆过滤器,并通过哈希函数映射到索引数组中。进行资料录入时通过第一级布隆过滤器来判断,要录入的内容在索引数组中是否存在,不存在则直接保存到资料管理系统中,若存在则再通过第二级布隆过滤器来判断,不存在则直接保存到资料管理系统中,若存在则再通过第三级布隆过滤器来判断,不存在则直接保存到资料管理系统中,若存在则说明录入的数据属于重复数据,将其删除。
2.3 资料管理系统设计
系统的总体结构设计中对程序的结构进行了分层处理,把用户层和底层的算法剥离开来,结构更加清晰,功能更加明确,同时也可以降低模块间的耦合性,提高功能模块间的独立性,易于重用,易于扩展。本程序中界面和算法是分开的,可以把算法当做独立的模块直接重用到其他的系统中,界面也可以方便扩展其他的功能,而不影响现有的功能。
整个系统结构分为二层:用户层和服务层。
1)服务层
服务层即底层算法层,由CBloomFilter类、CDigitBloomFilter类和CStringBloomFilter类构成,主要用来生成和管理布隆过滤器且封装了哈希算法的核心模块。CDigitBloomFilter类和CStringBloomFilter类都是CBloomFilter 类的派生类,其中CStringBloomFilter封装了字符串布隆过滤器的哈希算法和哈希散列的位数组以及检查元素是否在位数组中和插入位数组的操作,CDigitBloomFilter封装了数字布隆过滤器的的哈希算法和哈希散列的位数组以及检查元素是否在位数组中和插入位数组的操作。
2)用户层
用户层即用户界面为整个结构的最上层,主要负责用户的输入输出等操作和其他的一些内部逻辑操作,如文件的拷贝,文件目录的查找、文件的删除等。
3 总结与展望
本文的重点是研究布隆过滤器在资料管理系统中重复删除的应用,给出一个资料管理的解决方案,布隆过滤器可以通过低于1%的错误率换取存储空间的节省和读写效率的提高,适用于能容忍低错误率的应用场合。重复数据删除技术本身就是一项新兴的技术。因此,在重复数据删除领域,还有很多方面需要进一步完善和深入研究。
参考文献:
[1]A. Clements, I. Ahmad,M. Vilayannur, and J. Li. Decentralized deduplication in SAN cluster file systems. In Proc. USENIX ATC,2009.
关键词:会员制 数据挖掘 RFM聚类分析 关联规则
现阶段,国内广大中小型企业正面临着自身发展的瓶颈。在围绕增加销售收入所设计的营销策略中,企业倾向于把重点放在开发新客户方面,而忽略了对旧客户的维护。这种情况导致企业难以培养有忠诚度的顾客,大量流失潜在的优质客户,从而陷入对客户不断开发、不断流失的恶性循环。部分企业借鉴外国同行经验,采取会员制策略,但其数据库只收集最基本的会员资料,营销手段单一,如分发广告信息、消费打折等活动,而忽略了对会员本身的分析,如人口和心理特征、消费行为等,造成了浪费企业执行成本、不恰当的信息令顾客与企业关系恶化等后果。同样利用会员制收集信息的便利性,在北美和欧洲,基于数据挖掘技术的数据库营销已经发展日趋成熟,大小企业都先后加入到这一行列中(罗茂初等,2007)。
本文提出一套基于会员制的数据挖掘系统解决方案,通过运用相应的数据挖掘技术解决营销活动中的四个基本问题,加深企业对顾客的认识,从而有针对性地制定营销策略。
会员制信息的数据挖掘方案
(一)营销活动的四个基本问题
在为会员制定营销手段的过程中,必须回答以下四个基本问题:
一是什么是影响会员对营销手段做出回应的显著因子?如何寻找出最可能对营销手段做出回应的会员?二是企业所拥有的会员可以分为哪几类?每个种类的会员的特征有什么不同?三是哪些事件(或日子)能联系会员与企业的产品,成为营销活动开始的契机?四是会员的消费习惯和购物次序如何?
只有完整回答以上问题,企业才算得上了解自己的会员,营销手段才能做到有的放矢,切实地提高企业的营销能力。
(二)系统实现框架
为了解决上述问题,系统由四种数据挖掘技术构成。其中Logistic回归模型用于寻找影响回应率的显著因子。RFM聚类分析通过提取会员新鲜度、消费频率和消费金额三个指标值进行聚类分析,划分会员种类。而事件触发模型是企业寻找特殊营销事件开展的重要工具。关联规则挖掘通过分析会员的购物篮寻找出各商品之间潜在的关系。企业可以据此决定商品的摆设、捆绑销售策略和优惠销售策略等营销手段等。系统框架结构如图1所示。
(三)建模方法
1.Logistic回归模型。由于Logistic回归分析所建立的预测模型是根据过去的营销数据记录计算获得,因此有一定的滞后性。具体做法是:从上一次营销活动记录中选取出所有可能影响会员做出回应的变量为自变量,用会员是否回应的结果作为因变量,用0表示没有回应,1表示有回应。这样通过Logistic回归计算所得的结果是一个会员对于营销活动做出回应的概率。筛选出通过显著性检验的变量,所获得的预测模型则可用于实践。
2.RFM聚类分析。RFM具体定义:R―新鲜度,指会员最近一次交易是在多久以前。时间距离越近,企业和会员的关系就越“新鲜”。通常按天数划分最近一次交易时间。F―消费频率,指会员在一定时间间隔内和企业交易次数。时间间隔一般取半年或一年。M―消费金额,指会员每次平均消费金额。
RFM的指标各项数据通过营销记录表定期(如每半年)自动生成。然后应用于聚类分析。此处选择K-Mean clustering,即直接聚类,该聚类分析算法如下(辛爱莉、衣龙海、张林,2008):
设要把数据库中所有会员分为K组。
第一步为任意选择K位成员,以他们指标下的各项数据作为每一组的中心;第二步为计算其他成员指标下的各项数据与每个组的中心的合成距离。合成距离的计算取几何距离公式:,一个会员离Ki组的中心越近,他就属于该组。第三步为将所有成员根据距离分配到各个组后,重新计算各组的中心。方法为取每个组所有成员的特征平均值。重复第二步。重复第三步。
循环以上步骤,一直到计算出的中心与上一次计算的中心完全相等,则循环结束。所获得的结果就是最后分类,每组的中心代表这个组的特点。
3.事件触发模型。该模型主要作用是增进会员对企业的感情和提醒会员于特殊时间购买本企业相关产品。
事件分成两类:常规事件和突发事件。常规事件包括会员生日和有营销机会的节日。突发事件是指事前无法预料的,能为企业进行营销所用的特殊事件。
部分参考节日:元旦,农历新年,情人节,三八妇女节,清明节,劳动节,儿童节,端午节,父亲节,母亲节,七夕,中秋节,国庆,重阳,冬至,圣诞节等。
部分参考事件:开学,企业新品推荐,运动会或重大比赛,商业演出,募捐活动等。
实施方法:为根据RFM聚类分析所划分的会员群设计各自对应的宣传文案和营销策略,在事件发生的倒数第三日通过电子邮件发送,倒数第二日通过手机短信发送,以确保有效到达率。适当环境可考虑使用直邮。统计回应记录及会员的反馈意见。事后分析,作为本次营销活动的总结和下次策划的参考。
此外,特定行业应针对其顾客的消费和行为的规律事先制订相应的触发模型。
4.关联规则。在关联规则的挖掘算法中,以Agrawal等人提出的Apriori算法最具有影响力和最为常用。Apriori算法利用了频繁项集的基本原理:若项集X是频繁项集,则X的任意子集也必定是频繁项集;反之,若X有一子集不是频繁项集,则X也必然不是频繁项集。
设产品集C={Cj,j=1,2,……,n},每次交易事件Ti=i1C1+i2C2+……+inCn,其中ij取值为0或1。此处的加号是和的意思,并非直接相加。
交易集为U={Ti|i=1,2,……,m},所以可抽象出矩阵:
设support(Cj)=/m,若support(Cj)≥min_support_1,将Cj加入到集合Z中。重复上述步骤,直到Z包含所有符合条件的Cj。假设共有k个符合条件,重新编号为D1,D2……Dk。其对应的ij亦同时跟随变化。两两交叉组合,共计k(k-1)/2个。
设support(DpDq)=ipiq/m,若support(DpDq)min_support_2,令Mpq=DpDq,输出到关联候选集A和集合Z中。
重复上述步骤,直到Z包含所有符合条件的Mpq,并删除集合中所有的Cj。把Z内的项两两交叉组合,并循环以上方法,直到集合Z为空集。
此时开始用置信度排除出重要的关联规则:由A,B两个项生成的关联规则有两个:AB和BA ;由A,B和C三个项生成的关联规则有三个:A,BC;B,CA和C,AB。如此类推,N个项可以生成N个关联规则。当检验只有两个项DpDq的关联规则时,设confidence(DpDq)=iqip/iq,confidence(DqDp)=iqip/ip,若confidence()≥min_confidence,则把该关联规则输出,否则删除。
为简化计,可把min_support和min_confidence先设定为一固定值。特殊情况下再作调整。同理检验由更多项生成的关联规则。其中confidence(AB)=P(AB)/P(B),此时A为由一个以上的单项组成的复合项目,B依然为单项。
若需要进行多层关联规则分析,只需扩充C集,其他仍然按以上步骤分析。多层关联规则(孙景、李峰,2008)有助于发掘出特定商品与品类之间的潜在关系。
应用示例
设某运动用品店收集到26位会员的消费记录。其中性别是1代表男性,0代表女性的虚拟变量,回应项中1代表有回应,0代表没有回应。现抽取性别、新鲜度、消费频率和消费金额作Logistic回归,结果如表1所示。
由表1可知,消费频率是影响会员是否做出回应的重要因子,消费频率越高,回应的可能性越大。因此,应该按此思路设计营销手段,争取顾客多次回头,如积分升级计划,每周(月)的优惠活动等,务求通过增加顾客的消费频率提高销售收入。
提取新鲜度、消费频率和消费金额三个变量项作直接聚类分析,在置信度为90%的条件下,获得表2。
以消费频率和消费金额为主要划分标准,把26位会员分成普通组和重点组。普通组成员的特征是消费频率较低,消费金额较小,因此营销的主要目的是增加此组人群对企业的好感以及依赖,培养忠诚度,使其转为重点组成员;重点组成员的特征是消费频率较高,消费金额是普通组的2倍以上。因此,提供最优质的服务与适当的让利优惠是维系此组成员必不可少的手段。
会员生日、学生假期、重大比赛或者明星活动是有利于运动店启动事件营销的契机。
产品集={球服,篮球,球袜,纪念品,其他装备},又收集到如下的会员交易集
U=T
根据前部分的计算公式,假设min_Support_1=30%,则A={(球服,篮球),(球服,球袜),(球服,纪念品),(篮球,其他装备)},同时生成Z={(球服,篮球,球袜),(球服,篮球,其他装备),(球服,篮球,纪念品),(球服,球袜,纪念品)}。继续计算,假设min_Support_2=20%,则(球服,球袜,纪念品)加入到A集中。此时A={(球服,篮球),(球服,球袜),(球服,纪念品),(篮球,其他装备),(球服,球袜,纪念品)}。
通过置信度筛选出强关联规则。假设min_Confidence_1=60%,保留(球服球袜),(球服纪念品),(篮球其他装备),(其他装备篮球)为强关联规则。综上所述,我们发现了六个可供使用的强关联规则:A={(球服球袜),(球服纪念品),(篮球其他装备),(其他装备篮球),(球服,球袜纪念品),(球服,纪念品球袜)}。
针对这些关联规则,可以设计如下营销手段:球服摆放于显眼处,球袜摆放在其相近位置,并且可用优惠价购买球服与相对应的球袜;开发对应球服的纪念品,如运动手表、背包、水壶及相应队伍的明星人物模型等;篮球与其他装备打包搭配销售。
讨论与结语
针对各个企业的特殊性,在本解决方案基础上应相应增加原始数据库的资料,以确保企业可以掌握足够多的信息进行数据挖掘。同时要及时做事后测评和总结,不断累积应用数据挖掘技术的经验。此外,必须结合过往经营活动的经验,以筛选不合理的挖掘结果。最后,在企业有一定条件时,应该增加本系统的挖掘功能,通过建立更多不同种类的数学模型来更深入了解顾客群的情况。
本文从现实的可行性出发,提出了一套基于会员制的数据挖掘系统解决方案,希望能有助于中小企业合理地运用会员制进行数据挖掘。本方案以四种数据挖掘技术为核心,通过对四个基本问题的解答获取有效的数据挖掘信息,设计有针对性的营销手段,从而切实地提升企业的营销水平。
参考文献:
1.罗茂初等.数据库营销[M].经济管理出版社,2007
2.辛爱莉,衣龙海,张林.聚类算法在电子商务客户细分中的应用[J].商场现代化,2008(530)