Oracle中的Instance实例和数据库的区别

Oracle中的Instance实例和数据库的区别,第1张

区别:数据库是磁盘上的文件。实例是内存结构和一组后台进程。

正常的数据库读入内存的过程是,由实例中一组后台进程从磁盘上将数据文件读入到实例的内存,然后经过在内存中对数据的 *** 作再从实例的内存中经过一组后台进程写到数据库中。

SQL2008和SQL2008 r2的区别:

一、功能的区别

SQL2008增加了很多新功能包括:新功能包括数据压缩,基于策略的管理和集成全文检索功能。可以对整个数据库、数据文件和日志文件进行加密,而不需要改动应用程序;为了在线添加内存资源而扩展SQL Server中的已有的支持,热添加CPU使数据库可以按需扩展。

SQL2008 r2对比SQL2008引进了一系列新功能帮助各种规模的业务从信息中获取更多价值。经过改进的SQL Server 2008 R2增强了开发能力,提高了可管理性,强化了商业智能及数据仓库。

二、安装需求的区别

SQL2008支持的 *** 作系统:Windows Server 2003 Service Pack 2, Windows Server 2008, Windows Vista, Windows Vista Service Pack 1, Windows XP Service Pack 2, Windows XP Service Pack 3。

SQL2008 r2还要求安装微软的NET Framework 35 SP1。可是,如果没有安装,安装程序会自动安装该组件,除非是在安装SQL Server Express的各种版本之一。如果在安装SQL Server Express,那么就必须手工安装NET Framework。

三、关键特性的区别

SQL2008提供了一个解决方案来满足这些需求,这个解决方案就是公司可以使用存储和管理许多数据类型,包括XML、e-mail、时间/日历、文件、文档、地理等等,同时提供一个丰富的服务集合来与数据交互作用:搜索、查询、数据分析、报表、数据整合,和强大的同步功能。

SQL2008 r2为任何规模的应用提供完备的信息平台。可管理的,熟悉的自服务商业智能(BI)工具。支持大规模数据中心与数据仓库。支持平滑建立与扩展应用到云端与微软的应用平台紧密集成。

四、版本的区别

SQL2008除了发布企业版的同时,提供适用于中小型应用规模的标准版、工作组版、以及180天试用的评估版及免费的学习版。

SQL2008 r2的版本有企业版、标准版、工作组版、Web版、开发者版、Express版、Compact 35版。

参考资料来源:百度百科——sql server 2008

百度百科——SQL Server 2008 R2

一、关于CPU

1CPU频率越高性能就越高吗?

不一定。这是在很多新手当中存在的误区。CPU性能取决于很多综合参数,不一定根频率成正比。当然,在同系列的CPU中,比如都是赛扬4,频率越高性能越高。

2为什么赛扬高频低能?而速龙系列低频高能?

说这个问题之前先讲一下什么叫缓存。缓存(英文名Cache),即高速缓冲存储器,是位于CPU和主存储器DRAM(也就是内存)之间的规模较 小的但速度很高的存储器(其实硬盘、刻录机缓存也都是一个道理)。CPU的缓存分两个,一个是内部缓存,也叫一级缓存(L1 Cache):封闭在CPU芯片内部的高速缓存,用于暂时存储CPU运算时的部分指令和数据,存取速度与CPU主频一致。L1缓存越大,CPU工作时与存取速度较慢的L2缓存和内存间交换数据的次数越少,相对电脑的运算速度可以提高;外部缓存,也叫二级数据缓存(L2 Cache):CPU外部的高速缓存,现在处理器的L2 Cache是和CPU运行在相同频率下的(以前P2 P3的二级缓存运行在相当于CPU频率一半下)。

赛扬的基本架构和同时代的奔腾是差不多的,但它的外频低、前端总线低,而且缓存与奔腾系列相比严重缩水(Northwood核心赛扬4的二级缓存只有128K,而Northwood核心P4的二级缓存有512K)。减少了四分之三的缓存大大降低了成本,但也造成了CPU能力的急剧下降。而速龙系列的一级缓存高达128K,TA、TB核心的速龙二级缓存为256K,Barton及以后核心的速龙二级缓存达到了512K,

3我的CPU温度为什么那么高?

首先是散热器的问题,再者就是机箱内通风不好,可能是电源线和数据排线影响了通风。另外不必对CPU的温度太过敏感,一些朋友看到五六十度就吓坏了。其实没有那么夸张,一般来说,CPU在75度以下都可以安全工作(通常认为安全工作温度=极限工作温度的80%)。

4为什么我的CPU外频只有100而其他人的都是400、533等等?

问这类问题的朋友都存在着一个很大的误区,那就是他们把外频和前端总线的概念混淆了。外频是由主板为CPU提供的基准时钟频率,一般常见的有100、133、166、200。而我们说的FSB(Front System Bus)指的是系统前端总线,它是处理器与主板北桥芯片或内存控制集线器之间的数据通道,常见频率有400、333、533、800。作为新手不必掌握那么多概念性的东西,只要记住以下几个公式:

主频=外频倍频(MHz)

Intel CPU前端总线=外频4(MHz)

AMD CPU前端总线=外频2(MHz)

CPU数据带宽=前端总线8(MB/s)

内存带宽=内存等效工作频率8(MB/s)

5什么是超线程?超线程对我有用吗?为什么我用了超线程CPU 系统性能没有得到多少提升?

所谓超线程技术(HT)就是利用特殊的硬件指令,把多线程处理器内部的两个逻辑内核模拟成两个物理芯片,从而使单个处理器就能“享用”线程级的并行计算的处理器技术。多线程技术可以在支持多线程的 *** 作系统和软件上,有效的增强处理器在多任务、多线程处理上的处理能力。简单来说就是模拟两个CPU进行工作。

采用超线程技术的CPU在处理多任务的能力上显著强过非超线程的CPU,但在单任务的工作方面并没有太大的性能优势,甚至在运行不支持超线程技术的软件时性能还略有下降。一般来说,超线程的CPU主要用在高端机及服务器上,普通的家用或办公机器,如果没有特殊要求,不必使用HT。

关于很多朋友反映使用超线程CPU性能提升不大的问题做一下解释,这当中存在一个误区,很多朋友认为只要使用超线程的CPU就能用上超线程技术,事实上并非如此。要将超线程的威力发挥出来需要五大基本的条件

a)CPU要支持HT,目前支持超线程技术的CPU有P4C系列、P4E系列以及部分型号的Xeon

b)主板芯片要支持HT,这是很容易被忽略的条件之一。目前支持HT的主板芯片组主要有 Intel i925/i915/i875/i865全系列、VIA PT800/PT880、SIS 655FX/655TX/661FX、ATI 9100IGP。

c)内存需要双通道的DDR400。由于开启超线程的CPU前端总线高达800MHz,数据带宽高达64GB/s,因此要求内存带宽也必须达到64GB/s,避免系统瓶颈的产生。

主板参数全程分解(3)- -

12机箱前置面板接头

机箱前置面板接头是主板用来连接机箱上的电源开关、系统复位、硬盘电源指示灯等排线的地方。一般来说,ATX结构的机箱上有一个总电源的开关接线(Power SW),其是个两芯的插头,它和Reset的接头一样,按下时短路,松开时开路,按一下,电脑的总电源就被接通了,再按一下就关闭。

而硬盘指示灯的两芯接头,一线为红色。在主板上,这样的插针通常标着IDE LED或HD LED的字样,连接时要红线对一。这条线接好后,当电脑在读写硬盘时,机箱上的硬盘的灯会亮。电源指示灯一般为两或三芯插头,使用1、3位,1线通常为绿色。

在主板上,插针通常标记为Power LED,连接时注意绿色线对应于第一针(+)。当它连接好后,电脑一打开,电源灯就一直亮着,指示电源已经打开了。而复位接头(Reset)要接到主板上Reset插针上。主板上Reset针的作用是这样的:当它们短路时,电脑就重新启动。而PC喇叭通常为四芯插头,但实际上只用1、4两根线,一线通常为红色,它是接在主板Speaker插针上。在连接时,注意红线对应1的位置。

13外部接口

ATX主板的外部接口都是统一集成在主板后半部的。现在的主板一般都符合PC'99规范,也就是用不同的颜色表示不同的接口,以免搞错。一般键盘和鼠标都是采用PS/2圆口,只是键盘接口一般为蓝色,鼠标接口一般为绿色,便于区别。而USB接口为扁平状,可接MODEM,光驱,扫描仪等USB接口的外设。而串口可连接MODEM和方口鼠标等,并口一般连接打印机。

14主板上的其它主要芯片

除此而外主板上还有很多重要芯片:

声卡芯片

现在的主板集成的声卡大部分都是AC'97声卡,全称是Audio CODEC’97,这是一个由Intel、Yamaha等多家厂商联合研发并制定的一个音频电路系统标准。主板上集成的AC97声卡芯片主要可分为软声卡和硬声卡芯片两种。所谓的AC'97软声卡,只是在主板上集成了数字模拟信号转换芯片(如ALC201、ALC650、AD1885等),而真正的声卡被集成到北桥中,这样会加重CPU少许的工作负担。

所谓的AC'97硬声卡,是在主板上集成了一个声卡芯片(如创新CT5880,雅马哈的744,VIA的Envy 24PT),这个声卡芯片提供了独立的声音处理,最终输出模拟的声音信号。这种硬件声卡芯片相对比软声卡在成本上贵了一些,但对CPU的占用很小。

网卡芯片

现在很多主板都集成了网卡。在主板上常见的整合网卡所选择的芯片主要有10/100M的RealTek公司的8100(8139C/8139D芯片)系列芯片以及威盛网卡芯片等。除此而外,一些中高端主板还另外板载有Intel、3COM、Alten和Broadcom的千兆网卡芯片等,如Intel的i82547EI、3COM 3C940等等。

IDE阵列芯片

一些主板采用了额外的IDE阵列芯片提供对磁盘阵列的支持,其采用IDE RAID芯片主要有HighPoint、Promise等公司的产品的功能简化版本。例如Promise公司的PDC20276/20376系列芯片能提供支持0,1的RAID配置,具自动数据恢复功能。美国高端HighPoint公司的RAID芯片如HighPoint HPT370/372/374系列芯片,SILICON SIL312ACT114芯片等等。

I/O控制芯片

I/O控制芯片(输入/输出控制芯片)提供了对并串口、PS2口、USB口,以及CPU风扇等的管理与支持。

常见的I/O控制芯片有华邦电子(WINBOND)的W83627HF、W83627THF系列等,例如其最新的W83627THF芯片为

I865/I875芯片组提供了良好的支持,除可支持键盘、鼠标、软盘、并列端口、摇杆控制等传统功能外,

更创新地加入了多样新功能,例如,针对英特尔的Prescott内核微处理器,提供符合VRD100规格的微处理器过电压保护,如此可避免微处理器因为工作电压过高而造成烧毁的危险。

此外,W83627THF内部硬件监控的功能也同时大幅提升,除可监控PC系统及其微处理器的温度、电压和风扇外,在风扇转速的控制上,更提供了线性转速控制以及智能型自动控转系统,相较于一般的控制方式,此系统能使主板完全线性地控制风扇转速,以及选择让风扇是以恒温或是定速的状态运转。这两项新加入的功能,不仅能让使用者更简易地控制风扇,并延长风扇的使用寿命,更重要的是还能将风扇运转所造成的噪音减至最低。

频率发生器芯片

频率也可以称为时钟信号,频率在主板的工作中起着决定性的作用。我们目前所说的CPU速度,其实也就是CPU的频率,如P4 17GHz,这就是CPU的频率。电脑要进行正确的数据传送以及正常的运行,没有时钟信号是不行的,时钟信号在电路中的主要作用就是同步;因为在数据传送过程中,对时序都有着严格的要求,只有这样才能保证数据在传输过程不出差错。

时钟信号首先设定了一个基准,我们可以用它来确定其它信号的宽度,另外时钟信号能够保证收发数据双方的同步。对于CPU而言,时钟信号作为基准,CPU内部的所有信号处理都要以它作为标尺,这样它就确定CPU指令的执行速度。

时钟信号频率的担任,会使所有数据传送的速度加快,并且提高了CPU处理数据的速度,这就是我们为什么超频可以提高机器速度的原因。要产生主板上的时钟信号,那就需要专门的信号发生器,也称为频率发生器。

但是主板电路由多个部分组成,每个部分完成不同的功能,而各个部分由于存在自己的独立的传输协议、规范、标准,因此它们正常工作的时钟频率也有所不同,如CPU的FSB可达上百兆,I/O口的时钟频率24MHz,USB的时钟频率为48MHz,因此这么多组的频率输出,不可能单独设计,所以主板上都采用专用的频率发生器芯片来控制。

频率发生器芯片的型号非常繁多,其性能也各有差异,但是基本原理是相似的。例如ICS 950224AF时钟频率发生器,是在I845PE/GE的主板上得到普遍采用时钟频率发生器,通过BIOS内建的“AGP/PCI频率锁定”功能,能够保证在任何时钟频率之下提供正确的PCI/AGP分频,有了起提供的这“AGP/PCI频率锁定”功能,使用多高的系统时钟都不用担心硬盘里面精贵的数据了,也不用担心显卡、声卡等的安全了,超频,只取决于CPU和内存的品质而已了。

最后再让我们通过一张详细的大图来对主板来个彻底注释。

1是整合音效芯片,2是I/O控制芯片,3是光驱音源插座,4是外接音源辅助插座,

5是SPDIF插座,6是USB插头,7是机箱被开启接头,8是PCI插槽,

9是AGP4X插槽,10是机箱前端通用USB接口,11是BIOS,12是机箱面板接头,

13是南桥芯片,14是IDE1插口,15是IDE2插口,16是电源指示灯接头,

17是清除CMOS记忆跳线,18是风扇电源插座,19是电池,20是软驱插座,

21是ATX电源插座,22是内存插槽,23是风扇电源插座,24是北桥芯片,

25是CPU风扇支架,26是CPU插座,27是12VATX电源插座,28是第二组音源插座,

29是PS/2键盘及鼠标插座,30是USB插座,31是并串口,32是游戏控制器及音源插座,

33是SUP_CEN插座。

搜狐首页 >> IT频道 >> 数码天下 >> 硬件DIY-搜狐IT >> 硬件知识

进阶必读:内存参数详解

ITSOHUCOM 2004-07-28 11:10 作者: queueber 转自: 太平洋电脑网

页面功能 我来说两句我要“揪”错推荐字体:大 中 小打印 关闭

第1页:第2页:第3页:

绪论:

如今很多玩家都想方设法的发掘电脑的性能,内存带宽对整个系统起到至关重要的作用,它关系到系统总线速度。大家在设置过程中可能会遇到一些感到迷惑的现象,有时一个较低的总线速度配以高参数的内存,其性能也许比一味追求高总线速度还要好。选购内存时,玩家也

都知道,同频率下时序参数越高的内存其系统带宽也会随之增长,也就是要尽量选用CAS/tRCD/tRPD/tRAS参数值低的内存。举个例子,如果系统总线速度为400MHz,你需要搭配使用PC3200规格的DDR内存,理想的CAS值是2。如果要把系统总线超频到500MHz,同步的情况下则需要PC4000的内存。当大家选购高频率的内存时,应该会发现其CAS延迟通常都比较高,25或者3是比较常见的。然而CAS是最敏感的内存参数,CAS值从3降低到2,虽然只有1/3,但另一方面,如果这种情况发生在一个总线速度为500MHz的系统上,你的系统性能会提升25%之多!

内存控制器:

内存控制器是电脑上最重要的组成部件之一。它的功能是监督控制数据从内存载入/载出。如果需要,还可以对数据的完整性进行检测。

芯片组决定了支持的处理器类型,通常包含几组控制器,分别控制着处理器和其他组件的数据交换。内存控制器是芯片组很常见的一部分,它建立了从内存到微处理器的数据流。如果是支持双通道模式的芯片组,就会包含两组内存控制器。与众不同的是,近期问世的AMD Athlon64处理器内部集成了内存控制器。

内存参数规格:

内存的时序参数一般简写为2/2/2/6-11/1T的格式,分别代表CAS/tRCD/tRP/tRAS/CMD的值。 2/2/2/6-11/1T中最后两个时序参数,也就是tRAS和CMD(Command缩写),是其中较复杂的时序参数。目前市场上对这两个参数的认识有一些错误,因为部分内存厂商直接用它们来

代表内存性能。

CMD Rate祥解:

Command Rate译为"首命令延迟",这个参数的含义是片选后多少时间可以发出具体的寻址的行激活命令,单位是时钟周期。片选是指对行物理Bank的选择(通过DIMM上CS片选信号进行)。如果系统指使用一条单面内存,那就不存在片选的问题了,因为此时只有一个物理Bank。

用更通俗的说法,CMD Rate是一种芯片组意义上的延迟,它并不全由内存决定,是由芯片组把虚拟地址解释为物理地址。不难估计,高密度大容量的系统内存的物理地址范围更大,其CMD延迟肯定比只有单条内存的系统大,即使是双面单条。

Intel对CMD这个问题就非常敏感,因此部分芯片组的内存通道被限制到四个Bank。这样就可以比较放心地把CMD Rate限定在1T,而不理用户最多能安装多少容量的内存。

宣扬CMD Rate可以设为1T实际上多少也算是一种误导性广告,因为所有的无缓冲(unbuffered)内存都应具有1T的CMD Rate,最多支持四个Bank每条内存通道,当然也不排除芯片组的局限性。

tRAS:

tRAS在内存规范的解释是Active to Precharge Delay,行有效至行预充电时间。是指从收到一个请求后到初始化RAS(行地址选通脉冲)真正开始接受数据的间隔时间。这个参数看上去似乎很重要,其实不然。内存访问是一个动态的过程,有时内存非常繁忙,但也有相对空闲的时候,虽然内存访问是连续不断的。tRAS命令是访问新数据的过程(例如打开一个新的程序),但发生的不多。

接下来几个内存时序参数分别为CAS延迟,tRCD,以及tRP,这些参数又是如何影响系统性能的呢?

CAS:

CAS意为列地址选通脉冲(Column Address Strobe 或者Column Address Select),CAS控制着从收到命令到执行命令的间隔时间,通常为2,25,3这个几个时钟周期。在整个内存矩阵中,因为CAS按列地址管理物理地址,因此在稳ǖ幕�∩希�飧龇浅V匾�牟问�翟降驮胶谩9�淌钦庋�模�谀诖嬲罅兄蟹治�泻土校�泵�钋肭蟮酱锬诖婧螅�紫缺淮シ⒌氖莟RAS (Active to Precharge Delay),数据被请求后需预先充电,一旦tRAS被激活后,RAS才开始在一半的物理地址中寻址,行被选定后,tRCD初始化,最后才通过CAS找到精确的地址。整个过程也就是先行寻址再列寻址。从CAS开始到CAS结束就是现在讲解的CAS延迟了。因为CAS是寻址的最后一个步骤,所以在内存参数中它是最重要的。

tRCD:

根据标准tRCD是指RAS to CAS Delay(RAS至CAS延迟),对应于CAS,RAS是指Row Address Strobe,行地址选通脉冲。CAS和RAS共同决定了内存寻址。RAS(数据请求后首先被激发)和CAS(RAS完成后被激发)并不是连续的,存在着延迟。然而,这个参数对系统性能的影响并不大,因为程序存储数据到内存中是一个持续的过程。在同个程序中一般都会在同一行中寻址,这种情况下就不存在行寻址到列寻址的延迟了。

tRP:

tRP指RAS Precharge Time ,行预充电时间。也就是内存从结束一个行访问结束到重新开始的间隔时间。简单而言,在依次经历过tRAS, 然后 RAS, tRCD, 和CAS之后,需要结束当前的状态然后重新开始新的循环,再从tRAS开始。这也是内存工作最基本的原理。如果你从事的任务需要大量的数据变化,例如视频渲染,此时一个程序就需要使用很多的行来存储,tRP的参数值越低表示在不同行切换的速度越快。

总结:

或许你看完以上论述后还是有一些不解,其实大家也没必要对整个内存寻址机制了解的非常透彻,这个并不影响你选择什么规格的内存,以及如何最大程度上在BIOS中优化你的内存参数。最基本的,你应该知道,系统至少需要搭配满足CPU带宽的内存,然后CAS延迟越低越好。

因为不同频率的内存的价格相差并不是很大,除了那些发烧级产品。从长远的目光来考虑,我们建议大家尽量购买高频率的内存产品。这样或许你将来升级CPU时可以节省一笔内存费用,高频率的内存都是向下兼容的。例如如果购买了PC3200 400MHz的内存,标明的CAS延迟是25。如果你实际使用时把频率降到333MHz,通常情况下CAS延迟可以达到2。

一般而言,想要保持内存在一个高参数,如果不行可以采取降低频率的方法。但对处理器超频时,都会要求较高的总线速度,此时的瓶颈就在内存系统上,一般只有靠牺牲高参数来保持内存频率和CPU的外频同步。这样可以得到更大的内存带宽,在处理大量数据时就能明显的从中获益,例如数据库 *** 作,Photoshop等。

另外一点值得注意的是,PC3200或PC3500规格的内存,如果CAS延迟可以设为2,也能在一定程度上弥补内存带宽。因为此时CPU和内存交换数据时间隔的时间大大减少了。如果用户经常使用的程序并不需要大的带宽,低CAS延迟也会带来显著的性能提升,例如一些小型游戏和3D应用程序。

总而言之,一条参数为2-2-2-5的内存绝对比3-4-4-8的内存优秀很多,总线速度越高,这种情况就越明显。

硬盘的主要技术指标

在我们平时选购硬盘时,经常会了解硬盘的一些参数,而且很多杂志的相关文章也对此进行了不少的解释。不过,很多情况下,这种介绍并不细致甚至会带有一些误导的成分。今天,我们就聊聊这方面的话题,希望能对硬盘选购者提供应有的帮助。

首先,我们来了解一下硬盘的内部结构,它将有助于理解本文的相关内容。

图为:硬盘的内部结构

工作时,磁盘在中轴马达的带动下,高速旋转,而磁头臂在音圈马达的控制下,在磁盘上方进行径向的移动进行寻址

硬盘常见的技术指标有以下几种:

1、每分钟转速(RPM,Revolutions Per Minute):这一指标代表了硬盘主轴马达(带动磁盘)的转速,比如5400RPM就代表该硬盘中的主轴转速为每分钟5400转。

2、平均寻道时间(Average Seek Time):如果没有特殊说明一般指读取时的寻道时间,单位为ms(毫秒)。这一指标的含义是指硬盘接到读/写指令后到磁头移到指定的磁道(应该是柱面,但对于具体磁头来说就是磁道)上方所需要的平均时间。除了平均寻道时间外,还有道间寻道时间(Track to Track或Cylinder Switch Time)与全程寻道时间(Full Track或Full Stroke),前者是指磁头从当前磁道上方移至相邻磁道上方所需的时间,后者是指磁头从最外(或最内)圈磁道上方移至最内(或最外)圈磁道上方所需的时间,基本上比平均寻道时间多一倍。出于实际的工作情况,我们一般只关心平均寻道时间。

3、平均潜伏期(Average Latency):这一指标是指当磁头移动到指定磁道后,要等多长时间指定的读/写扇区会移动到磁头下方(盘片是旋转的),盘片转得越快,潜伏期越短。平均潜伏期是指磁盘转动半圈所用的时间。显然,同一转速的硬盘的平均潜伏期是固定的。7200RPM时约为4167ms,5400RPM时约为5556ms。

4、平均访问时间(Average Access Time):又称平均存取时间,一般在厂商公布的规格中不会提供,这一般是测试成绩中的一项,其含义是指从读/写指令发出到第一笔数据读/写时所用的平均时间,包括了平均寻道时间、平均潜伏期与相关的内务 *** 作时间(如指令处理),由于内务 *** 作时间一般很短(一般在02ms左右),可忽略不计,所以平均访问时间可近似等于平均寻道时间+平均潜伏期,因而又称平均寻址时间。如果一个5400RPM硬盘的平均寻道时间是9ms,那么理论上它的平均访问时间就是14556ms。

5、数据传输率(DTR,Data Transfer Rate):单位为MB/s(兆字节每秒,又称MBPS)或Mbits/s(兆位每秒,又称Mbps)。DTR分为最大(Maximum)与持续(Sustained)两个指标,根据数据交接方的不同又分外部与内部数据传输率。内部DTR是指磁头与缓冲区之间的数据传输率,外部DTR是指缓冲区与主机(即内存)之间的数据传输率。外部DTR上限取决于硬盘的接口,目前流行的Ultra ATA-100接口即代表外部DTR最高理论值可达100MB/s,持续DTR则要看内部持续DTR的水平。内部DTR则是硬盘的真正数据传输能力,为充分发挥内部DTR,外部DTR理论值都会比内部DTR高,但内部DTR决定了外部DTR的实际表现。由于磁盘中最外圈的磁道最长,可以让磁头在单位时间内比内圈的磁道划过更多的扇区,所以磁头在最外圈时内部DTR最大,在最内圈时内部DTR最小。

6、缓冲区容量(Buffer Size):很多人也称之为缓存(Cache)容量,单位为MB。在一些厂商资料中还被写作Cache Buffer。缓冲区的基本要作用是平衡内部与外部的DTR。为了减少主机的等待时间,硬盘会将读取的资料先存入缓冲区,等全部读完或缓冲区填满后再以接口速率快速向主机发送。随着技术的发展,厂商们后来为SCSI硬盘缓冲区增加了缓存功能(这也是为什么笔者仍然坚持说其是缓冲区的原因)。这主要体现在三个方面:预取(Prefetch),实验表明在典型情况下,至少50%的读取 *** 作是连续读取。预取功能简单地说就是硬盘“私自”扩大读取范围,在缓冲区向主机发送指定扇区数据(即磁头已经读完指定扇区)之后,磁头接着读取相邻的若干个扇区数据并送入缓冲区,如果后面的读 *** 作正好指向已预取的相邻扇区,即从缓冲区中读取而不用磁头再寻址,提高了访问速度。写缓存(Write Cache),通常情况下在写入 *** 作时,也是先将数据写入缓冲区再发送到磁头,等磁头写入完毕后再报告主机写入完毕,主机才开始处理下一任务。具备写缓存的硬盘则在数据写入缓区后即向主机报告写入完毕,让主机提前“解放”处理其他事务(剩下的磁头写入 *** 作主机不用等待),提高了整体效率。为了进一步提高效能,现在的厂商基本都应用了分段式缓存技术(Multiple Segment Cache),将缓冲区划分成多个小块,存储不同的写入数据,而不必为小数据浪费整个缓冲区空间,同时还可以等所有段写满后统一写入,性能更好。读缓存(Read Cache),将读取过的数据暂时保存在缓冲区中,如果主机再次需要时可直接从缓冲区提供,加快速度。读缓存同样也可以利用分段技术,存储多个互不相干的数据块,缓存多个已读数据,进一步提高缓存命中率。

图为:经常能看到的硬盘参数指标,正确理解它们的含义对选购会有帮助

7、噪音与温度(Noise & Temperature):这两个属于非性能指标。对于噪音,以前厂商们并不在意,但从2000年开始,出于市场的需要(比如OEM厂商希望生产更安静的电脑以增加卖点)厂商通过各种手段来降低硬盘的工作噪音,ATA-5规范第三版也加入了自动声学(噪音)管理子集(AAM,Automatic Acoustic Management),因此目前的所有新硬盘都支持AAM功能。硬盘的噪音主要来源于主轴马达与音圈马达,降噪也是从这两点入手(盘片的增多也会增加噪音,但这没有办法)。除了AAM外,厂商的努力在上文的厂商介绍中已经讲到,在此就不多说了。至于热量,其实每个厂商都有自己的标准,并声称硬盘的表现是他们预料之中的,完全在安全范围之内,没有问题。这一点倒的是不用担心,不过关键在于硬盘是机箱中的一个组成部分,它的高热会提高机箱的整体温度,也许硬盘本身没事,但可能周围的配件却经受不了,别的不说,如果是两个高热的硬盘安装得很紧密,那么它还能承受近乎于双倍的热量吗?所以硬盘的热量仍需厂商们注意。

2006年11月17日北京中关村英特尔CPU报价

型号 规格 今日报价 涨跌

赛扬 17(散) 17/400MHz/128K/Socket478 165

赛扬 18(散) 18/400MHz/128K/Socket478 175

赛扬 20(散) 20/400MHz /128K/Socket478 240

赛扬 21(散) 21/400MHz/128K/Socket478 245

赛扬 24(散) 24/400MHZ/128K/Socket478 290 +5

赛扬 D310 (散) 213/533MHZ/256K/Socket478 270

赛扬 D315 (散) 226/533MHz /256K/Socket478 290

赛扬 D320 (散) 24/533MHz/256K/Socket478 305 -5

赛扬 D320 (盒) 24/533MHz/256K/Socket478 330

赛扬 D325 (散) 253/533MHz/256K/Socket478 335

赛扬 D325 (三年盒) 253/533MHz/256K/Socket478 325 -15

赛扬 D330 (散) 266/533MHz/256K/Socket478 375 +5

赛扬 D335 (散) 28/533MHz/256K/Socket478 410 -5

赛扬 D340 (散) 293/533MHz/256K/Socket478 430 -30

赛扬 D350 (散) 306/533MHz /256K/Socket478 450 -60

赛扬 D326 (散) 253/533MHz /256K/LGA775 365

赛扬 D326 (盒) 253/533MHz /256K/LGA775 400

赛扬 D331 (散) 266/533MHz /256K/L

实体数据模型是把数据库一次性从数据库读取出来转换成对象存储到内存中,效率很高,但是占用内存很大。存储过程是发送一个函数名和参数到数据库服务器,返回一个结果集,再反序列化成对象,耗时主要是在反序列化上。对于小数据显然用实体数据模型快,但是处理大数据时用实体数据模型就应该考虑硬件配置。。

几个简单的步骤大幅提高Oracle性能 我优化数据库的三板斧

数据库优化的讨论可以说是一个永恒的主题 资深的Oracle优化人员通常会要求提出性能问题的人对数据库做一个statspack 贴出数据库配置等等 还有的人认为要抓出执行最慢的语句来进行优化 但实际情况是 提出疑问的人很可能根本不懂执行计划 更不要说statspack了 而我认为 数据库优化 应该首先从大的方面考虑 网络 服务器硬件配置 *** 作系统配置 Oracle服务器配置 数据结构组织 然后才是具体的调整 实际上网络 硬件等往往无法决定更换 应用程序一般也无法修改 因此应该着重从数据库配置 数据结构上来下手 首先让数据库有一个良好的配置 然后再考虑具体优化某些过慢的语句 我在给我的用户系统进行优化的过程中 总结了一些基本的 简单易行的办法来优化数据库 算是我的三板斧 呵呵 不过请注意 这些不一定普遍使用 甚至有的会有副作用 但是对OLTP系统 基于成本的数据库往往行之有效 不妨试试 (注 附件是Burleson写的用来报告数据库性能等信息的脚本 本文用到)

一.设置合适的SGA

常常有人抱怨服务器硬件很好 但是Oracle就是很慢 很可能是内存分配不合理造成的 ( )假设内存有 M 这通常是小型应用 建议Oracle的SGA大约 M 其中 共享池(SHARED_POOL_SIZE)可以设置 M到 M 根据实际的用户数 查询等来定 数据块缓冲区可以大致分配 M M i下需要设置DB_BLOCK_BUFFERS DB_BLOCK_BUFFERDB_BLOCK_SIZE等于数据块缓冲区大小 i 下的数据缓冲区可以用db_cache_size来直接分配

( )假设内存有 G Oracle 的SGA可以考虑分配 M 共享池分配 M到 M 数据缓冲区分配 M到 M

( )内存 G SGA可以考虑分配 G 共享池 M到 M 剩下的给数据块缓冲区

( )内存 G以上 共享池 M到 M就足够啦 再多也没有太大帮助 (Biti_rainy有专述)数据缓冲区是尽可能的大 但是一定要注意两个问题 一是要给 *** 作系统和其他应用留够内存 二是对于 位的 *** 作系统 Oracle的SGA有 G的限制 有的 位 *** 作系统上可以突破这个限制 方法还请看Biti的大作吧

二.分析表和索引 更改优化模式

Oracle默认优化模式是CHOOSE 在这种情况下 如果表没有经过分析 经常导致查询使用全表扫描 而不使用索引 这通常导致磁盘I/O太多 而导致查询很慢 如果没有使用执行计划稳定性 则应该把表和索引都分析一下 这样可能直接会使查询速度大幅提升 分析表命令可以用ANALYZE TABLE 分析索引可以用ANALYZE INDEX命令 对于少于 万的表 可以考虑分析整个表 对于很大的表 可以按百分比来分析 但是百分比不能过低 否则生成的统计信息可能不准确 可以通过DBA_TABLES的LAST_ANALYZED列来查看表是否经过分析或分析时间 索引可以通过DBA_INDEXES的LAST_ANALYZED列

下面通过例子来说明分析前后的速度对比 (表CASE_GA_AJZLZ大约有 万数据 有主键)首先在SQLPLUS中打开自动查询执行计划功能 (第一次要执行\RDBMS\ADMIN\utlxplan sql来创建PLAN_TABLE这个表)

SQL> SET AUTOTRACE ON SQL>SET TIMING ON

通过SET AUTOTRACE ON 来查看语句的执行计划 通过SET TIMING ON 来查看语句运行时间

SQL> select count() from CASE_GA_AJZLZ; COUNT() 已用时间: : : Execution Plan SELECT STATEMENT Optimizer=CHOOSE SORT (AGGREGATE) TABLE ACCESS (FULL) OF CASE_GA_AJZLZ ……………………

请注意上面分析中的TABLE ACCESS(FULL) 这说明该语句执行了全表扫描 而且查询使用了 秒 这时表还没有经过分析 下面我们来对该表进行分析

SQL> yze table CASE_GA_AJZLZ pute statistics;

表已分析 已用时间: : : 然后再来查询

SQL> select count() from CASE_GA_AJZLZ; COUNT() 已用时间: : : Execution Plan SELECT STATEMENT Optimizer=FIRST_ROWS (Cost= Card= ) SORT (AGGREGATE) INDEX (FAST FULL SCAN) OF PK_AJZLZ (UNIQUE) (Cost= Card= ) …………………………

请注意 这次时间仅仅用了 秒!这要归功于INDEX(FAST FULL SCAN) 通过分析表 查询使用了PK_AJZLZ索引 磁盘I/O大幅减少 速度也大幅提升!下面的实用语句可以

用来生成分析某个用户的所有表和索引 假设用户是GAXZUSR

SQL> set pagesize SQL> spool d:\ yze_tables sql; SQL> select yze table ||owner|| ||table_name|| pute statistics; from dba_tables where owner= GAXZUSR ; SQL> spool off SQL> spool spool d:\ yze_indexes sql; SQL> select yze index ||owner|| ||index_name|| pute statistics; from dba_indexes where owner= GAXZUSR ; SQL> spool off SQL> @d:\ yze_tables sql SQL> @d:\ yze_indexes sql

解释 上面的语句生成了两个sql文件 分别分析全部的GAXZUSR的表和索引 如果需要按照百分比来分析表 可以修改一下脚本 通过上面的步骤 我们就完成了对表和索引的分析 可以测试一下速度的改进啦 建议定期运行上面的语句 尤其是数据经过大量更新

当然 也可以通过dbms_stats来分析表和索引 更方便一些 但是我仍然习惯上面的方法 因为成功与否会直接提示出来

另外 我们可以将优化模式进行修改 optimizer_mode值可以是RULE CHOOSE FIRST_ROWS和ALL_ROWS 对于OLTP系统 可以改成FIRST_ROWS 来要求查询尽快返回结果 这样即使不用分析 在一般情况下也可以提高查询性能 但是表和索引经过分析后有助于找到最合适的执行计划

三.设置cursor_sharing=FORCE 或SIMILAR

这种方法是 i才开始有的 oracle 不支持 通过设置该参数 可以强制共享只有文字不同的语句解释计划 例如下面两条语句可以共享

SQL> SELECT FROM MYTABLE WHERE NAME= tom SQL> SELECT FROM MYTABLE WHERE NAME= turner

这个方法可以大幅降低缓冲区利用率低的问题 避免语句重新解释 通过这个功能 可以很大程度上解决硬解析带来的性能下降的问题 个人感觉可根据系统的实际情况 决定是否将该参数改成FORCE 该参数默认是exact 不过一定要注意 修改之前 必须先给ORACLE打补丁 否则改之后oracle会占用 %的CPU 无法使用 对于ORACLE i 可以设置成SIMILAR 这个设置综合了FORCE和EXACT的优点 不过请慎用这个功能 这个参数也可能带来很大的负面影响!

四.将常用的小表 索引钉在数据缓存KEEP池中

内存上数据读取速度远远比硬盘中读取要快 据称 内存中数据读的速度是硬盘的 倍!如果资源比较丰富 把常用的小的 而且经常进行全表扫描的表给钉内存中 当然是在好不过了 可以简单的通过ALTER TABLE tablename CACHE来实现 在ORACLE i之后可以使用ALTER TABLE table STORAGE(BUFFER_POOL KEEP) 一般来说 可以考虑把 数据块之内的表放在keep池中 当然要根据内存大小等因素来定 关于如何查出那些表或索引符合条件 可以使用本文提供的access sql和access_report sql 这两个脚本是著名的Oracle专家 Burleson写的 你也可以在读懂了情况下根据实际情况调整一下脚本 对于索引 可以通过ALTER INDEX indexname STORAGE(BUFFER_POOL KEEP)来钉在KEEP池中

将表定在KEEP池中需要做一些准备工作 对于ORACLE i 需要设置DB_KEEP_CACHE_SIZE 对于 i 需要设置buffer_pool_keep 在 i中 还要修改db_block_lru_latches 该参数默认是 无法使用buffer_pool_keep 该参数应该比 CPU数量少 但是要大于 才能设置DB_KEEP_CACHE_BUFFER buffer_pool_keep从db_block_buffers中分配 因此也要小于db_block_buffers 设置好这些参数后 就可以把常用对象永久钉在内存里

五.设置optimizer_max_permutations

对于多表连接查询 如果采用基于成本优化(CBO) ORACLE会计算出很多种运行方案

从中选择出最优方案 这个参数就是设置oracle究竟从多少种方案来选择最优 如果设置太大 那么计算最优方案过程也是时间比较长的 Oracle 和 i默认是 建议改成 对于 i 已经默认是 了

六.调整排序参数

( ) SORT_AREA_SIZE:默认的用来排序的SORT_AREA_SIZE大小是 K 通常显得有点小 一般可以考虑设置成 M( ) 这个参数不能设置过大 因为每个连接都要分配同样的排序内存

lishixinzhi/Article/program/Oracle/201311/18879

个人博客网站, 数据库和服务器是放在一起的,所以说就看硬盘容量多少了。一般都是40G起步,有给50G的,足够用好多年了,如果不够用还可以额外添加数据盘,所以这方面不用担心。

个人建站的办法很简单,首先网站1核2G内存1M带宽,40G高效云盘。要准备以下的资料

注册域名。最好能和网站内容有点关联

选择网站系统。例如wordpress,zblog,emblog等都可以。

选择云服务器,例如阿里或者腾讯等

解析域名到服务器

发布网站到云主机以上步骤还是需要一些知识的。

至此,网站建设完成。老魏写过云服务器手动建站等多篇教程,看完有疑问可以问,在线了就回答。

数据库,是经过优化的存储格式,一定比文本文件效率好,因为结构化处理的关系,可以很好地应对如搜索、匹配等 *** 作;

而文本,表面看起来简单,但是,随着量的增加,一旦达到某个量级,几乎就不可用了。

至于CPU,数据库比文本文件的方案更加可控,更安全。

区别如下:

1 Oracle是大型数据库而Mysql是中小型数据库,Oracle市场占有率达40%,Mysql只有20%左右,同时Mysql是开源的而Oracle价格非常高。

2 Oracle支持大并发,大访问量,是OLTP最好的工具。

3 安装所用的空间差别也是很大的,Mysql安装完后才152M而Oracle有3G左右,且使用的时候Oracle占用特别大的内存空间和其他机器性能。

4Oracle也Mysql *** 作上的一些区别

①主键

Mysql一般使用自动增长类型,在创建表时只要指定表的主键为auto increment,插入记录时,不需要再指定该记录的主键值,Mysql将自动增长;Oracle没有自动增长类型,主键一般使用的序列,插入记录时将序列号的下一个值付给该字段即可;只是ORM框架是只要是native主键生成策略即可。

②单引号的处理

MYSQL里可以用双引号包起字符串,ORACLE里只可以用单引号包起字符串。在插入和修改字符串前必须做单引号的替换:把所有出现的一个单引号替换成两个单引号。

③翻页的SQL语句的处理

MYSQL处理翻页的SQL语句比较简单,用LIMIT 开始位置, 记录个数;ORACLE处理翻页的SQL语句就比较繁琐了。每个结果集只有一个ROWNUM字段标明它的位置, 并且只能用ROWNUM<100, 不能用ROWNUM>80

④ 长字符串的处理

长字符串的处理ORACLE也有它特殊的地方。INSERT和UPDATE时最大可 *** 作的字符串长度小于等于4000个单字节, 如果要插入更长的字符串, 请考虑字段用CLOB类型,方法借用ORACLE里自带的DBMS_LOB程序包。插入修改记录前一定要做进行非空和长度判断,不能为空的字段值和超出长度字段值都应该提出警告,返回上次 *** 作。

⑤空字符的处理

MYSQL的非空字段也有空的内容,ORACLE里定义了非空字段就不容许有空的内容。按MYSQL的NOT NULL来定义ORACLE表结构, 导数据的时候会产生错误。因此导数据时要对空字符进行判断,如果为NULL或空字符,需要把它改成一个空格的字符串。

⑥字符串的模糊比较

MYSQL里用 字段名 like '%字符串%',ORACLE里也可以用 字段名 like '%字符串%' 但这种方法不能使用索引, 速度不快。

以上就是关于Oracle中的Instance实例和数据库的区别全部的内容,包括:Oracle中的Instance实例和数据库的区别、SQL2008和sql2008 r2有什么区别、有关CPU、内存、硬盘、主板的参数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9328528.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存