Oracle Exadata特性简介及应用指南
Oracle Exadata Database Machine KVM虚拟化概述和最佳实践说明书
Oracle Exadata Database MachineKVM Virtualization Overview and Best Practicesfor On-Premises RoCE-Based SystemsExadata DevelopmentJune 2023Topics Covered•Use Cases•Exadata Virtualization Software Requirements •Exadata Isolation Considerations•Exadata KVM Sizing and Prerequisites•Exadata KVM Deployment Overview•Exadata KVM Administration and Operational Life Cycle •Migration, HA, Backup/Restore, Upgrading/Patching •Monitoring, Resource ManagementHigh-Performance Virtualized Database Platform Using KVM•Kernel-based Virtual Machine (KVM) hypervisor •Linux kernel-based type 2 hypervisor with improved performance•Exadata RoCE based systems only (X10M, X9M-2, X8M-2)•VMs provide CPU, memory, OS, and system admin isolation for consolidated workloads•Hosting, cloud, cross department consolidation, test/dev, non-database or third-party applications•Exadata VMs deliver near raw hardware performance•Database I/Os go directly to high-speed RDMA Network Fabric bypassing hypervisor•Combine with Exadata network and I/O prioritization to achieve unique full stack isolation•Trusted Partitions allow licensing by virtual machine•See Oracle Exadata Database Machine Licensing Information User's Guide Exadata VirtualizationFinance Cluster Sales Cluster Marketing Cluster•Dedicated Database Servers provide the best isolation •Virtualization has good isolation but requires more management overhead and resource usage•VMs have separate OS, memory, CPUs, and patching•Isolation without need to trust DBA, System Admin•Database consolidation in a single OS is highly efficient but less isolated•DB Resource manager isolation adds no overhead•Resources can be shared much more dynamically•But must trust admins to configure systems correctly•Best strategy is to combine VMs with database native consolidation•Multiple trusted DBs or Pluggable DBs in a VM•Few VMs per server to limit overhead of fragmenting CPUs/memory/software updates/patching etc.Exadata Consolidation OptionsM o r e I s o l a t i o n More Efficient Dedicated DB ServersVirtual Machines Many DBs in one Server Database MultitenantDatabase Server: Bare Metal / Physical versus Virtualized Software Architecture ComparisonVirtualizedDatabase ServerHostExadata(Linux w/ KVM,firmware)Guest-nExadata (Linux)Oracle GI/DBhomesGuest-2Exadata (Linux)Oracle GI/DBhomesGuest-1Exadata (Linux)Oracle GI/DBhomesBare Metal / PhysicalDatabase ServerExadata (Linux, firmware)Oracle GI/DB homesNo change to Storage Grid, Networking, or Other-vs -Differences Between Physical and VirtualDetails expanded throughout remaining slides TopicHow Virtual differs from Physical Reduced Licensing OptionUse Trusted Partitions to allocate OCPUs for Database License Cluster configurationSystem has one or more VM clusters, each with own Grid Infrastructure / Database software install Network IsolationUse Secure Fabric to isolate clusters while sharing underlying Exadata Storage Exadata storage configurationSeparate grid disks and ASM disk groups (DATA,RECO) for each cluster Database server disk configurationDefault file system sizes are small Grid Infrastructure and Database software homes attached as separate file systems Software UpdatesDatabase servers require separate KVM host (Linux, firmware) and KVM Guest (Linux) updates EXAchkRun once for KVM host + storage servers + switches, run once for each VM Cluster Enterprise Manager Enterprise Manager + Oracle Virtual Infrastructure plug-in + Exadata plug-inExadata KVM Requirements•Hardware•Exadata systems with RoCE interconnects (e.g., X10M, X9M-2, X8M-2)•Software•Review MOS 888828.1 for recommended and minimum required versions •KVM Host•Virtualization using Oracle Linux Kernel-based Virtual Machine (KVM)•KVM Host and KVM guests can run different Exadata database server versions•KVM Guests•Each guest runs Exadata database server software isolated from other guests•Each guest runs Grid Infrastructure and Database software isolated from other guestsExadata KVM Interoperability•Interoperability between KVM/RoCE and Xen/InfiniBand•KVM supported only with RoCE interconnects•Xen supported only with InfiniBand interconnects (e.g., X8, X7, etc.)•X8 and earlier upgraded to or freshly deployed with Exadata 19.3 and later continue to be based on Xen •Cannot inter-rack RoCE and InfiniBand•Separate KVM/RoCE and Xen/InfiniBand systems can be used in same Data Guard / GoldenGate configuration• E.g., KVM-based system as primary, separate Xen-based system as standby•Migration from Xen to KVM•Move database using Data Guard, GoldenGate, RMAN, ZDMExadata KVM Security Isolation Recommendations•Each VM RAC cluster has own Exadata grid disks and ASM Disk Groups•Setting Up Oracle ASM-Scoped Security on Oracle Exadata Storage Servers•https:///en/engineered-systems/exadata-database-machine/dbmsq/exadata-security-practices.html•802.1Q VLAN T agging for Client and Admin Ethernet Networks•Configured w/ OEDA during deployment (requires pre-deployment switch config)•Client network manual configuration possible post-deployment (MOS 2710712.1)•Private network isolation•Secure RDMA Fabric Isolation with Oracle Linux KVM•https:///en/engineered-systems/exadata-database-machine/dbmmn/managing-oracle-vm-guests-kvm.html•https:///en/engineered-systems/exadata-database-machine/dbmin/exadata-network-requirements.html•RESTful remote access for storage server administration through ExaCLIExadata Secure RDMA Fabric Isolation for RoCE•Exadata Secure Fabric for RoCE systems implements network isolation for Virtual Machines while allowing access to common Exadata Storage Servers•Each VM cluster is assigned a private network•VM clusters cannot communicate with each other•All VMs can communicate to the shared storageinfrastructure•Security cannot be bypassed•Enforcement done by the network card on every packet•Rules programmed by hypervisor automaticallyExadata KVM Sizing Recommendations•Maximum of 12 KVM guests per database server•Eighth Rack systems support maximum of 4 KVM guests per database server•Determine peak CPU, memory, disk space needed by each database•Perform sizing evaluation prior to deployment, configure in OEDA accordingly•Consider KVM host reserved memory•Consider KVM host reserved CPU•Consider KVM guest long-term local disk file system growth•Long lived KVM guests should budget for full space allocation (assume no benefit from sparseness and shareable reflinks)•Each VM cluster has its own grid disks and disk groups•Contact Oracle for sizing guidance•Cannot over-provision physical memory•Sum of all KVM guests + KVM host reserved memory <= installed physical memory•KVM Host Reserved Memory•KVM host reserves portion of installed memory•Not available to KVM guests, enforced by vm_maker•KVM Guest memory sizing•Total VM Memory Available•Allocate to single guest or divide among multiple guests •Minimum 16 GB memory for a guest•To support OS, GI/ASM, starter DB, few connections •VM Memory size can not be changed online •Guest restart requiredMemory Config Supported Platforms Installed Memory (GB)VM Memory (GB) 24 x 128 GB X10M3072280024 x 96 GB X10M2304209032 x 64 GB X9M2048187024 x 64 GB X10M, X9M, X8M1536139016 x 64 GB X9M102492012 x 64 GB X10M, X8M76866016 x 32 GB X10M, X9M51244012 x 32 GB X9M, X8M384328•CPU over-provisioning is allowed•Up to 2x over-provisioning permitted with multiple VMs•Exceptions -No CPU over-provisioning on X10M systems:•with 512GB memory, or•when Capacity-On-Demand is used•Large increase in cores with X10M•CPU over-provisioning use cases decrease significantly compared to previous Exadata hardware•Performance degradation may occur if all guests become fully active when over-provisioning •Number of vCPUs assigned to a VM can be changed online•KVM Host Reserved CPU•Host is allocated 4 vCPUs (2 cores) -Not available to guests•Eighth rack is allocated 2 vCPUs (1 core)•Guest CPU sizing (X10M 2x96-core CPUs)•Single guest vCPU•Minimum 4 vCPU•Maximum 380 vCPU•Sum of all guests’ vCPU•Max 380 vCPU if no over-provisioning•Max 760 vCPU if 2x over-provisioning1,2HardwareMin vCPUper guestMax vCPUper guestMax over-provision vCPUall guestsX10M43807601,2X9M-24124248X9M-2 Eighth462124X8M-2492184X8M-2 Eighth446921 –No CPU over-provisioning when Capacity-on-Demand is used2 –No CPU over-provisioning on systems with 512GB memory•KVM guest local file system disk space over-provisioning not recommended, but possible •Actual allocated space initially much lower than apparent space due to sparseness and shareable reflinks(with multiple VMs), but will grow over time as shared space diverges and becomes less sparse•Long lived KVM guests should budget for full space allocation (assume no benefit fromsparseness and shareable reflinks)•Over-provisioning may cause unpredictable out-of-space errors•Over-provisioning may prevent ability to restore disk image backup•X10M database server –2 x 3.84TB NVME drives configured RAID1•Default local disk space available for VMs 1.46 TiB, online resizable to 3.4 TiB•Option to add 2 x 3.84TB NVME drives RAID1, increase local disk space to 6.9 TiB•Default disk space used per KVM guest 228 GiB•KVM guest local disk space can be extended after initial deployment by adding local disk images •Disk space can be extended with shared storage (e.g., ACFS, DBFS, external NFS, OCI File Storage) for user files•Do not use shared storage for Oracle/Linux binaries/configuration/diagnostic files.Access/network issues may cause system crash or hang.•Spread disk groups for each VM cluster across all disks on all cells•Every VM cluster has its own grid disks•Disk group size for initial VM clusters should consider future VM additions•Using all space initially will require shrinking existing disk group before adding new•Enable ASM-Scoped Security to limit grid disk accessExadata Storage RecommendationVM Cluster ClusterNodesGrid Disks (DATA/RECO for all clusters on all disks in all cells)clu1db01vm01db02vm01DATAC1_CD_{00..11}_cel01 RECOC1_CD_{00..11}_cel01 DATAC1_CD_{00..11}_cel02 RECOC1_CD_{00..11}_cel02 DATAC1_CD_{00..11}_cel03 RECOC1_CD_{00..11}_cel03clu2db01vm02db02vm02DATAC2_CD_{00..11}_cel01 RECOC2_CD_{00..11}_cel01 DATAC2_CD_{00..11}_cel02 RECOC2_CD_{00..11}_cel02 DATAC2_CD_{00..11}_cel03 RECOC2_CD_{00..11}_cel03Deployment Specifications and LimitsCategory X8M-2X9M-2X10M VMs Max guests per database server12 (41)12 (41)12Memory Min GB per guest161616 Max GB per guest / all guests139021*********CPU/vCPU Min vCPU per guest444 Max vCPU per guest92124380 Max over-provisioned vCPU all guests1842487603,4Disk space Usable TiB per DB server for all guests 3.15 3.40/ 6.975 3.40/ 6.975 Used GiB per guest at deployment1412282281 –Eighth Rack systems maximum number of guests is 42 –Using maximum memory configuration3 –No CPU over-provisioning when Capacity-on-Demand is used4 –No CPU over-provisioning on systems with 512GB memory5 –When local disk expanded to 4 drivesDeployment OverviewOracle Exadata Deployment AssistantThe Oracle Exadata Deployment Assistant, also known as OEDA, is the only tool to create VMs on Exadata1.Create configuration with OEDA Configuration Tool2.Prepare customer environment for OEDA deployment•Configure DNS, configure switches for VLANs (if necessary)3.Prepare Exadata system for OEDA deployment•# switch_to_ovm.sh; applyElasticConfig.sh4.Deploy system with OEDA Deployment ToolDecide Virtual or Physical •Section to pick KVM•All Linux VM•All Linux Physical•Custom (some servers VM,some servers physical)•An individual database server is configured either VM or PhysicalDefine Clusters•Decide:1.Number of VM clusters to create2.Database servers and Cells that willmake up those VM clusters•Recommend using all cells for each cluster •What is a “VM cluster?”•One or more guests on differentdatabase servers running Oracle GI/RAC,each accessing the same shared Exadatastorage managed by ASM.Cluster Configuration•Each VM cluster has its own configuration•OS users and groups•VM size (memory, CPU)•Grid infrastructure version and software location•Exadata software version•ASM disk groups (and underlying storage grid disks)•Database version and software location•Starter database configuration•Client, Backup, and Admin networking configurationAdvanced Network Configuration•Admin and Client Networks 802.1Q VLAN T agging•To separate Admin and ClientNetworks traffic across VMs,use distinct VLAN ID and IPinfo for each cluster•Admin and Client Networkswitches must have VLAN tagconfiguration done beforeOEDA deploymentAdvanced Network Configuration•Private Network Secure Fabric•Secure RDMA Fabric Isolation uses RoCEVLANs to enable strict network isolationfor Oracle RAC clusters.•Multiple VM clusters share storage serverresources but cannot communicate witheach other.Installation Template•Verify proper settings for all VMclusters in Installation Template so the environment can be properly configured before deployment (DNS, switches, VLANs, etc.).Network RequirementsComponent Domain Network Example hostnameDatabase servers KVM host(one per database server)Mgmt eth0dm01dbadm01Mgmt ILOM dm01dbadm01-ilomKVM guest(one or more per databaseserver)Mgmt eth0dm01dbadm01vm01Client bondeth0dm01client01vm01Client VIP dm01client01vm01-vipClient SCAN dm01vm01-scanPrivate RoCE dm01dbadm01vm01-privStorage servers (same as physical)Mgmt eth0dm01celadm01 Mgmt ILOM dm01celadm01-ilom Private RoCE dm01celadm01-privSwitches (same as physical)Mgmt and Private dm01sw-adm,dm01sw-roceGuest Disk LayoutFile system Size Use/ (root)15G Root file system/u0120G Oracle BASE/u01/app/<ver>/grid50G Grid infrastructure software home/u01/app/oracle/product/<ver>/dbhome_150G Database software home/tmp3G/tmp/home4G User home directories/var2G/var/var/log18G System logs/var/log/audit1G System audit logs/crashfiles20G System kdump kernel crash vmcore/boot512M System bootOther LVM space44G LVDbSwap1, LVDbSys2,LVDbVar2,LVDoNotRemoveOrUseTOTAL228GExadata KVM Basic Maintenance•Primary maintenance tools•OEDACLI -OEDA Command Line Interface•vm_maker•Refer to Exadata Database Machine Maintenance Guide•Managing Oracle Linux KVM Guests•https:///en/engineered-systems/exadata-database-machine/dbmmn/managing-oracle-vm-guests-kvm.htmlExadata KVM Migration•Migrate databases on existing system to new Exadata KVM system •Methods•Create Data Guard standby on new Exadata KVM system, switchover (minimal downtime)•Duplicate existing databases to new Exadata KVM system•Back up existing databases, restore databases on new Exadata KVM system•Standard Exadata migration practices and considerations apply•Convert existing ROCE-based Exadata system deployed bare metal/physical to KVM •Methods•Back up existing databases, redeploy system to KVM, restore databases•Convert one or subset of database servers at a time to KVMBackup/Restore of Virtualized Environment•KVM host•Standard backup/restore practices to external location•KVM guest –Two Methods•Backup within KVM host: Snapshot the VM disk images and backup snapshot externally •Backup within KVM guest: Standard OS backup/restore practices apply•If over-provisioning local disk space -Restoring VM backup will reduce (may eliminate) space savings (i.e., relying on over-provisioning may prevent full VM restore)•Database backup/restore•Use standard Exadata MAA practices with RMAN, ZDLRA, and Cloud Storage•Refer to Exadata Database Machine Maintenance GuideComponent to update MethodStorage servers•Same as physical -run patchmgr from any server with ssh access to all storageservers or use Storage Server Cloud Scale Software Update feature.RDMA Network Fabricswitches•Same as physical -run patchmgr from any server with ssh access to all switches.Database server –KVM host •Run patchmgr from any server with ssh access to all KVM hosts.•KVM host update upgrades database server firmware.•KVM host reboot requires restart of all local VMs.•KVM guest software not updated during KVM host update.•KVM host/guest do not have to run same version, although specific update ordering may be required (see MOS 888828.1).Database server –KVM guest •Run patchmgr from any server with ssh access to all KVM guests. Typically done on a per-VM cluster basis (e.g., vm01 on all nodes, then vm02, etc.), or update all VMs on a KVM host before moving to next.Grid Infrastructure / Database •Use Fleet Patching and Provisioning (FPP), OEDACLI, or standard upgrade and patching methods apply, maintained on a per-VM cluster scope. GI/DB homes should be mounted disk images, like initial deployment.Updating SoftwareHealth Checks and Monitoring•Exachk(AHF) runs in KVM host and KVM guest•Run in one KVM host -evaluates all KVM hosts, cells, switches•Run in one KVM guest of each VM cluster -evaluates all KVM guests, GI/DB of that cluster•Exadata Storage Software Versions Supported by the Oracle Enterprise Manager Exadata Plug-in (MOS 1626579.1)•Exawatcher runs in KVM host and KVM guest•Database and Grid Infrastructure monitoring practices still apply•Considerations•KVM host is not sized to accommodate EM or custom agents•Exadata MAA failure/repair practices still applicable.•Refer to MAA Best Practices for Oracle Exadata Database Machine•Live Migration is not supported –use RAC to move workloads between nodesExadata MAA/HAResource Management•Exadata Resource Management practices still apply•Exadata IO and flash resource management are all applicable and useful•Within VMs and within a cluster, database resource management practices still apply •cpu_count still needs to be set at the database instance level for multiple databases in a VM.Recommended min cpu_count=2.•No local disk resource management and prioritization•IO intensive workloads should not use local disks•For higher IO performance and bandwidth, use ACFS or NFSExadata KVM / Xen ComparisonCategory KVM-based Xen-based Terminology kvmhost, guest dom0, domUHardware support X8M-2 through X10M (using RoCE switches)X2-2 through X8-2 (using InfiniBand switches) Hypervisor KVM (built in to UEK)XenVM management vm_maker, OEDACLI xm, OEDACLI, domu_makerDatabase server software update patchmgr using same ISO/yum repo for KVM host andguestspatchmgr using different ISO/yum repo fordom0 and domUsFile system configuration xfs ext4, and ocfs2 for EXAVMIMAGESOur mission is to help people see data in new ways, discover insights, unlock endless possibilities.。
Oracle Exadata一体机介绍
• 独特 架构保证
• 最快, 最省
不断增加的Exadata用户
各地区,各行业
Exadata V2系统架构
Single Instance Single-Instance Database
RAC RAC Database Database
Database
数据库处理层
超高速并发网络层 880Gb/s/机架 =(8+14)*40Gb/s 智能存储层 1M IOPS/机架 Exadata Cell
• 数据仓库 • 高性能数据库服务
<Insert Picture Here>
• 数据库整合
Exadata 数据库一体机
最佳Oracle数据库平台
• Best Machine for Data Warehousing
• Best Machine for OLTP • Best Machine for Database Consolidation
• Exadata Smart Flash Cache
• Breaks random I/O bottleneck by increasing IOPs by up to 20X • Doubles user data scan bandwidths
• Exadata Storage Indexes
InfiniBand Switch/Network
Exadata Cell
Exadata Cell
每Cell能提供
1.5GB/s(非压缩裸盘) 3.6GB/s(非压缩flash)
存储层智能:每个存储单元包括存储、CPU及相应的软件 分布式并发计算:数据库跨越存储单元横向部署,ASM提供镜像保护 大规模:智能存储单元数量不受限
Oracle Exadata数据库一体机极致性能和最佳实践
Exadata 采用更高的单路带宽
- InfiniBand提供40Gb/s的带宽,比高端阵列 的光纤通道技术快8倍
Exadata 提供更高的IOPS
- 智能Exadata Smart Flash Cache技术处理更 多的IOPS
• 冗余40Gb/s 交换机 • 统一的服务器和存储网络
• 5.3 TB PCI 闪存 • 跨服务器进行存储镜像
© 2010 Oracle Corporation – Oracle Confidential
CONFIDENTIAL – ORACLE HIGHLY RESTRICTED
6
– 6–
Exadata X2 体系架构
CONFIDENTIAL – ORACLE HIGHLY RESTRICTED
4
前所未有的交钥匙方案:
Sun Oracle Exadata X2数据库机
• 完整的, 预配置的, 严格测 试的系统提供极限性能 • 随付即用的系统 • 高性能、高可用性
© 2010 Oracle Corporation – Oracle Confidential
Copyright © 2009, Oracle Corporation and/or its affiliates
CONFIDENTIAL – ORACLE HIGHLY RESTRICTED
8
– 8–
Exadata数据库一体机创新的技术架构
集中管理平台
三层架构/两层应用 架构
客户端 避免单点故障
智能存储层 1M IOPS/机架
Exadata Cell
Exadata Cell
OracleExadata技术架构和主要特点
Raw Disk1
Raw Flash1
User Data2
(assuming no compression)
SAS SATA
SAS SATA
7.2 TB 24 TB
384 GB 2 TB 7 TB
21 TB 72 TB
1.1 TB 6 TB 21 TB
50 TB 168 TB
2.6 TB 14 TB 50 TB
100 TB 336 TB
5.3 TB 28 TB 100 TB
1 – Raw capacity calculated using 1 GB = 1000 x 1000 x 1000 bytes and 1 TB = 1000 x 1000 x 1000 x 1000 bytes.
2 - User Data: Actual space for end-user data, computed after single mirroring (ASM normal redundancy) and after allowing space for database structures such as temp, logs, undo, and indexes. Actual user data capacity varies by application. User Data capacity calculated using 1 TB = 1024 * 1024 * 1024 * 1024 bytes.
Exadata Cell
InfiniBand 交换网络
Exadata Cell
Exadata Cell
3
全新的技术架构– Share Nothing与Share Disk的结合
Oracle 数据库一体机 — Exadata
• Sun Oracle Database Machine
– 预配置,提供高性能 – 平衡的系统 – 无限扩展性能,容量、带宽和处理 能力
• Exadata Storage Server Software 11gR2
• Exadata Storage Server Software 11gR2 • Oracle Database 11gR2
© 2009 Oracle Corporation - Confidential
6
Exadata 产品
Exadata Storage Server & Database Machine • Exadata Storage Server
– 为Oracle 数据库优化的存储产品 – 提供极限 I/O 和 SQL 执行性能 – 软硬件一体化
数据库处理
超高速并发网络
Exadata Cell
InfiniBand 交换网络
Exadata Cell
Exadata Cell
智能存储
基础技术 – 分布式计算
计算密集型处理 • Exadata 智能存储服务器
– 在存储部件中实现数据密集型处理 • 进行表及索引扫描,过滤查询无关数据
数据密集型处理
• 数据库服务器承担计算密集型处理(同传统结构)
– 50 GB/秒
50 40 30
未压缩数据的查询吞 吐量
50
• 与列压缩相结合
21 11.4 7.5 10
20 – 闪存中有超过 50 TB 的数据 10 – 对压缩数据的查询提高 到 500 GB/秒
0
HITACHI
USP V
TERADATA NETEZZA SUN ORACLE
Oracle 一体机管理手册(Exadata_admin)
•
• • •
dcli
In parallel executes OS commands or scripts on multiple nodes Requires SSH -k option automates distribution of SSH private keys into authorized_keys file
17
© 2011 Oracle Corporation – Proprietary and Confidential
DCLI Usage Examples
$ dcli -g mycells stsd2s1: GridDisk stsd2s1: GridDisk stsd2s1: GridDisk stsd2s1: GridDisk stsd2s1: GridDisk ... $ dcli -g mycells stsd2s1: GridDisk stsd2s1: GridDisk stsd2s1: GridDisk stsd2s1: GridDisk ... $ dcli -g mycells stsd2s1: IORMPLAN stsd2s2: IORMPLAN stsd2s3: IORMPLAN cellcli -e create data_CD_2_stsd2s1 data_CD_3_stsd2s1 data_CD_4_stsd2s1 data_CD_5_stsd2s1 data_CD_6_stsd2s1 griddisk all successfully successfully successfully successfully successfully prefix="data", size=120G created created created created created
Oracle Exadata一体机解决方案
• 挑战
– 海量数据下的性能、稳定性、可扩展性——数据量在TB甚至几十TB以 上,并且会快速扩展,需要高性能和可扩展的技术支撑平台 – 系统的复杂度与开放性——支持多种不同的数据源,对分析类和操作 类混合负载的支持,与多个业务系统对接,双向数据交互的支持。 – 数据集中管理——数据大集中以后,如何保证各个业务系统的高可靠、 高性能。
IT企业信息化建设需要完整实时、集中的数据中心平 台 • 对于长期发展的企业而言,面临更加激烈的国际、国内竞争 如何提高企业信息系统的运行和管理效率,成为企业的 战略性目标 以客户为中心,为客户提供个性化的服务,提 高客户满意度,提高市场占有率和客户忠诚度 及时、全面、准确地掌握企业的运作信息,科学决 策,降低经营成本,在降低成本的同时扩展市场
© 2010 Oracle Corporation
12
Exadata关键特性满足需求
• 极限性能,卓越的用户体验
• 高可靠性、扩展性满足业务长期发展
• 绿色数据中心
• 整体系统,易管理
© 2011 Oracle Corporation
Exadata – Smart Scan 处理技术
Exadata为什么快10-100x倍?
Байду номын сангаас
20
Exadata 混合列压缩比较
1000
Uncompressed
1000
Uncompressed
100
Pure Columnar Cliff
OLTP Compress
500 500
OLTP
50
Hybrid & Pure Column
Table Size
0 0
Hybrid Pure Column
EXADATA基础知识培训
EXADATA基础知识培训前言EXADATA是一款由Oracle公司开发的高性能数据库解决方案,其强大的处理能力和可靠性使其成为现代企业在数据管理方面的首选。
本次培训将介绍EXADATA的基础知识,包括其特点、架构以及使用方法,帮助您更好地理解和应用EXADATA。
第一章:EXADATA简介1.1 EXADATA的定义EXADATA是一种集成了硬件和软件的一体化数据库解决方案。
它将强大的存储和计算能力集中在一起,并通过高速网络进行连接,实现了高性能和可扩展性。
1.2 EXADATA的特点EXADATA具备以下几个显著特点:1)高性能:EXADATA通过优化的硬件设计和数据存储方式,实现了卓越的查询和分析性能,能够处理大规模的数据请求。
2)可靠性:EXADATA采用了多层次的数据备份和容错机制,确保数据的安全性和可恢复性。
它具备故障转移和自动恢复功能,能够最大程度地减少系统故障对业务的影响。
3)可扩展性:EXADATA支持弹性扩展,可以根据业务需求灵活地增加存储和计算资源,同时保持高性能和可用性。
1.3 EXADATA的应用场景EXADATA广泛应用于大型企业和数据库密集型应用中,特别适用于以下场景:1)大数据分析:由于其卓越的性能和可扩展性,EXADATA能够支持大数据分析任务,提供快速准确的查询结果。
2)在线事务处理(OLTP):EXADATA具备高并发处理能力,能够支持高速在线事务处理系统的运行,提供稳定可靠的服务。
3)云计算环境:EXADATA可以作为云计算平台的一部分,为不同业务提供高性能的数据存储和处理能力。
第二章:EXADATA架构2.1 EXADATA硬件架构EXADATA的硬件架构由数据库服务器和存储服务器组成。
数据库服务器负责运行数据库实例和处理查询请求,而存储服务器则负责存储数据并提供快速的读写操作。
2.2 EXADATA软件架构EXADATA的软件架构包括数据库软件、操作系统和EXADATA存储软件。
SHOUG Oracle Exadata 的那些事 - Steven Li (李亚)
• 当然:
• 不要相信道听途说(当然也包括我)。 • 没有经过充分测试不要使用。 • 权衡利弊,三思而后行。
在LGWR的trace中,可以看到三个明显的特征:
1. LGWR在post/wait与polling之间来回切换的频率很高; 2. redo synch write rate的频率较高; 3. 通常还会有log write elapsed time超时的告警信息。 上海Oracle用户组
• SQL> alter system set sga_target=4096m scope=spfile; • SQL> alter system set shared_pool_size=1536m scope=spfile; • SQL> alter system set large_pool_size=512m scope=spfile;
上海Oracle用户组
不服气?那就比比看
Write Through Flash Cache
上海Oracle用户组
不服气?那就比比看
Write Back Flash Cache
上海Oracle用户组
Learn Cycle 总有不想上班的时候
Oracle Exadata 的那些事
Steven Li (李亚) 上海Oracle用户组
# who am i—有图有真相
上海Oracle用户组
咦?Log File Sync 是什么鬼?
Exadata数据库一体机介绍
40G IB 8核 24G
Exadata Cell Exadata Cell
N x 1.5GB/s N x 3.6GB/s
• 存储层智能,解决计算能力问题:每个存储单元包括存储、CPU及相应的软件, 处理SQL 及 压缩,恒定的计算能力与存储的比值。
• 横向并发计算,解决带宽和可靠性问题:数据库跨越存储单元横向部署,ASM提供镜像保护, 处理能力与数据量同比扩展。
单实例数据库
RAC 集群数据库
数据库处理层
6或8核 6或8核
最新Oracle DB11gR2 超高速、并发网络层
96G或 1TB
96G或 1TB
InfiniBand Switch/Network
880Gb/s/机架 智能存储层 1M IOPS/机架
Exadata Cell
384GB
闪存
12 x 600GB
Exadata 数据库体机介绍
沈建明 资深销售顾问 Oracle中国,系统事业部
Oracle为什么推出Exadata 数据库一体机
<Insert Picture Here>
2
电信运营商现有IT系统面临的挑战
• 计费、帐务、客服、网管等事务型(OLTP)系统 – 业务分散,服务器数量众多,占地多,能耗大 – 处理能力不平衡,计算资源没有得到充分利用 – 系统优化过程复杂,难度大 – 故障处理周期长,影响系统的服务能力
• 预装软件
• Oracle Database Enterprise 11gR2 • Oracle RAC Option • Oracle Partitioning Option • Oracle Exadata Storage Server Software
oracle的extend方法
一、介绍Oracle数据库Oracle数据库是全球领先的企业级数据库管理系统,它提供了高性能的数据库管理和数据处理能力。
Oracle数据库具有丰富的功能和强大的扩展性,可以满足各种企业和组织的数据库管理需求。
二、Oracle数据库的扩展性1. 数据库扩展性的重要性数据库扩展性是指数据库系统在处理大量数据和用户访问时的性能和稳定性。
随着业务的发展和数据量的增加,数据库系统需要具备良好的扩展性,以保证系统的高效运行。
2. Oracle数据库的扩展方法Oracle数据库提供了多种扩展方法,包括分区表、分区索引、分布式数据库和集群数据库等。
其中,分区表和分区索引是Oracle数据库常用的扩展方法之一。
三、Oracle数据库的extend方法介绍1. 分区表分区表是将表中的数据按照一定的规则分布到不同的存储空间中,以便提高查询性能和管理效率。
Oracle数据库通过分区表的方式可以实现对大表的管理和优化。
2. 分区索引分区索引是对表的索引进行分区存储,以减少索引的存储空间和提高索引的查询效率。
Oracle数据库可以通过分区索引来优化对大表的查询操作。
3. 分布式数据库分布式数据库是指将数据库系统分布在不同的地理位置或不同的网络中,以实现数据的共享和分布式计算。
Oracle数据库通过分布式数据库可以实现大规模数据的存储和处理。
4. 集群数据库集群数据库是将多个数据库系统组成一个集群,以实现数据的高可用和负载均衡。
Oracle数据库可以通过集群数据库实现对大规模数据库系统的管理和优化。
四、Oracle数据库extend方法的应用场景1. 大规模数据的管理对于大规模数据的管理,Oracle数据库可以通过分区表和分区索引来对数据进行分布式存储和索引优化,以提高系统的性能和管理效率。
2. 高并发访问的场景在高并发访问的场景下,Oracle数据库可以通过集群数据库来实现对数据库系统的负载均衡和高可用性,以保证系统的稳定性和性能。
Oracle数据库一体机Exadata的IO资源管理
类别计划
(CellCLI)
INTERACTIVE:60% BATCH:40%
I/O 资源管理计划:示例
IORM 分配
数据库内
数据库 A
数据库 B
数据库 A
数据库 B
45%
30%
15%
40%
70%
35%
18%
30%
22% 10%
70%
15%
数据库间
类别
40%
60%
BATCH
所有 用户 I/O (100%)
级别 1
80% 20%
级别 2
100%
级别 3
50% 50%
设置数据库 I/O 利用率限制
CellCLI> alter iormplan
-
>
dbplan=((name=db1, level=1, allocatபைடு நூலகம்on=50, limit=75), -
>
(name=db2, level=1, allocation=30, limit=75), -
当设置或修改了某个数据库内资源计划时,会通知 Exadata Storage Server:
启用或修改的计划将使用 iDB 发送到每个单元
您必须在所有 Exadata 单元上激活 IORMPLAN。 以下是常用的数据库内计划:
mixed_workload_plan
dss_plan
default_maintenance_plan
数据库 A
BEGIN DBMS_RESOURCE_MANAGER.CREATE_SIMPLE_PLAN(SIMPLE_PLAN => ‘DB_A_Plan', CONSUMER_GROUP1 => ‘CG1', GROUP1_PERCENT => 15, CONSUMER_GROUP2 => ‘CG2', GROUP1_PERCENT => 10, CONSUMER_GROUP3 => ‘CG3', GROUP1_PERCENT => 35, CONSUMER_GROUP4 => ‘CG4’, GROUP2_PERCENT => 40); DBMS_RESOURCE_MANAGER.CREATE_PENDING_AREA(); DBMS_RESOURCE_MANAGER.UPDATE_CONSUMER_GROUP(CONSUMER_GROUP => ‘CG1’, NEW_CATEGORY => ‘BATCH’); DBMS_RESOURCE_MANAGER.UPDATE_CONSUMER_GROUP(CONSUMER_GROUP => ‘CG2’, NEW_CATEGORY => ‘BATCH’); DBMS_RESOURCE_MANAGER.UPDATE_CONSUMER_GROUP(CONSUMER_GROUP => ‘CG3’, NEW_CATEGORY => ‘INTERACTIVE’); DBMS_RESOURCE_MANAGER.UPDATE_CONSUMER_GROUP(CONSUMER_GROUP => ‘CG4’, NEW_CATEGORY => ‘INTERACTIVE’); DBMS_RESOURCE_MANAGER.SUBMIT_PENDING_AREA();
Oracle数据库一体机(Exadata)介绍资料
可伸缩性支持增加更多的机架
Copyright © 2010 Oracle Corporation and/or its affiliates
– 7–
Exadata 数据库一体机X2-2满配
提供极限性能
• 8台2CPU(每CPU6核)64位的数据库服务器 • 96 核 (每台服务器12核) • 768 GB内存 (每台服务器96GB) • 对外提供10 GigE(万兆以太网)接口 • 16个10GbE 端口 (每台服务器2个端口 per server) • 14台Exadata存储服务器X2-2 • 高性能600GB SAS磁盘 或者 • 高容量2 TB SAS磁盘 • 3台Sun Datacenter InfiniBand Switch • 36-port Managed QDR (40Gb/s) switch • 1台专门用于管理的Cisco 以太网交换机 • KVM硬件 • 冗余的Power Distributions Units (PDUs)
flash?exadata是最快的?而且可以线形地扩展到更多的机架storagedatabandwidthuncompressedgbsec通用格式disk?存储阵列已经无法提供磁盘的带宽????没有闪存提供的额外带宽没有操作下推没有列压缩没有infiniband通用格式96
<Insert Picture Here>
• 通过提高IOPs20倍来打破随机I/O瓶颈 • 提高用户数据扫描带宽
• Exadata存储索引
• 消除不必要的I/O
• I/O Resource Manager (IORM)
• 按照不同的I/O优先级别使用存储网格, 保证可预知的性能
• 混合列压缩
• 高效的压缩,增加有效的存储空间, 提高用户数据扫描带宽
Oracle数据库云服务器Exadata介绍
Oracle数据库云服务器Exadata介绍杨建鑫Principal Sales Consultant内容•Exadata简介•Exadata技术发展与硬件架构•Exadata技术优势及软件架构•Exadata客户案例Oracle数据库云服务器Exadata运行Oracle数据库的最佳平台适合与下面场景的架构•数据仓库(Data Warehousing)•交易系统(OLTP)•数据库整合Exadata是为所有Oracle数据库应用设计的战略数据库平台Exadata 发展•Exadata Introduced•X2-2 CPU Refresh •40 Gb InfiniBand •PCI Flash Cards•X2-2 CPU Refresh •X2-8 64-core Servers•Sparc SuperCluster •3TB Disks•Smart Flash Cache •Storage Index •Columnar Compression•Smart Scan •InfiniBand Scaleout•Smart Memory Scan •Parallel Memory Affinity •Enterprise Manager 12c•Hardware DB Encryption•Automatic Service Request•Data Mining Offload •Storage Expansion Rack•X2-8 CPU Refresh •2TB DRAM per node•Solaris x86 •Reverse Offload •Smart Flash Logging将Oracle 的最佳实践与快速发展的硬件相结合独特的软件特性Future Optimizations•In-Memory OptimizedCompression•Memory-to-MemoryInfiniBand Messaging •Flash Cache for Writes20082009 2010 2011 2012数以千计的全球成功案例Rapid adoption in all geographies and industriesSpectacular Customer Results“Softbank created a warehouse up to8x faster while reducing costs 50%”—Keiichiro Shimizu, Softbank“Turkcell’s largest 250 TB DB is nowonly 27 TB with Exadata Compression”—Ferhat Sengonul, Turkcell“Performance improved17x with no changes toour application”—Jim Duffy, BNP ParibasExadata Growth“Exadata is the fastest growing product in Oracle’s history”-Oracle CEO, Larry EllisonExadata技术发展与硬件架构Exadata架构完整的系统 : 计算资源, 存储资源, 网络资源•数据库集群–基于Intel芯片架构的数据库服务器–Oracle Linux or Solaris 11–Oracle Database 11g–10 Gig Ethernet (to data center)•存储网格–基于Intel芯片架构存储服务器–504TB裸容量– 5.3TB Flash storage–Exadata Storage Server Software•InfiniBand网络–内部网络互联 ( 40 Gb/sec )Exadata 硬件架构Exadata 智能存储网格•14 x 高性能低成本存储服务器(2U)•高性能, 低成本, 冗余, 线性扩展•100 TB 高性能SAS 磁盘, 或 504 TB 高容量SAS 磁盘 •168 Intel cores in storage •5.3 TB PCI 闪存•跨存储服务器的数据镜像保护•超级性能 &开箱即用满配最大功耗14KW, 平均 9.8KW. 而通常一个高端的SMP 小机(不包含存储和交换机)就需要超过20KW 的功耗数据库网格InfiniBand 网络•冗余 40Gb/s 交换机 •服务器与存储的统一网络• 8台数据库服务器(X2-2)✓96 CPU cores (12 Cores per server,2x Six-CoreIntel X5675 Processors (3.06 GHz)✓768 GB memory (可扩展到912GB )• 或2台数据库服务器(X2-8)✓160 CPU cores (80 Cores per server) ✓4 TB (2 TB per server)Exadata 低功耗Exadata 架构概述Exadata CellInfiniBand 交换网络单节点数据库RAC 数据库Exadata CellExadata Cell智能存储层数据库处理层 超高速并发网络层传统主机+存储的数据库架构的IO瓶颈问题•存储层:1)数据量不断增加,带来的IO瓶颈;2)随着数据长时间运行带来的数据分布不均匀,存在IO热点•网络层:传输带宽不足,无法快速传输大量数据到服务器•服务器层:接收过多数据进行处理,内存优势无法发挥Exadata–数据处理架构的革命打破数据带宽瓶颈•Exadata 提供更多的并发带宽-模块化存储单元CELL,高度并行的存储网格-带宽与容量成正比•Exadata 采用更高的单路带宽-InfiniBand提供40G bits/S的带宽,比高端阵列的光纤通道技术快5+倍•智能的存储、Exadata 传送更少的数据-数据查询过程被下移到智能存储层,传送到服务器中的数据只包括最相关的结果数据,显著的减少了发送到服务器的数据,减轻了服务器CPUs负荷。
exadata官方培训教程
exadata官方培训教程Exadata是一款为Oracle数据库专门设计的硬件平台,其以高效、高可靠、高安全等特性受到了用户的广泛认可。
为了更好地使用Exadata,Oracle推出了官方培训教程,帮助用户掌握Exadata系统的基础知识和高级功能。
一、Exadata的介绍Exadata是Oracle公司开发的一种专门用于数据库的高端服务器,其具有卓越的性能和可靠性。
通过Exadata系统,可以将数据存储和计算之间的通信量大大减少,从而实现高效的数据处理和查询。
Exadata还具有高度的可伸缩性,能够满足大型企业级应用场景下的需求。
二、Exadata官方培训教程的特点Exadata官方培训教程不仅提供了基础知识的讲解,而且还提供了一系列实际应用案例和高级功能的演示。
通过实际案例,用户可以更好地理解Exadata系统的工作原理和优势。
通过高级功能的演示,用户可以深入了解Exadata系统的各项功能,进一步提升应用场景的效果。
三、Exadata官方培训教程内容1. Exadata基础知识用户可以通过Exadata基础知识模块来了解Exadata的体系结构、部署模式、管理方式等基本知识。
该模块还包括Exadata的网络连接、物理存储等方面的介绍。
2. Exadata常规维护用户可以通过Exadata常规维护模块来了解Exadata系统的日常维护工作,如网络维护、存储管理、备份与恢复等操作。
该模块还包括Exadata系统的性能监控和故障诊断等内容。
3. Exadata的高级功能用户可以通过Exadata高级功能模块来了解Exadata系统的高级功能,如物理存储优化、数据复制、容灾备份等功能。
该模块还包括Exadata系统的高级查询优化、数据加密等内容。
四、Exadata官方培训教程的优势1. 实践案例:Exadata官方培训教程提供了大量的案例和应用场景,使用户可以更好地理解Exadata的实际应用和优势。
Oracle Exadata Database Machine 11g 管理指南说明书
• Identify and resolve issues • Validate performance gains
Monitor
• Exadata service • Database • Storage cells
Manage
• Performance diagnostics • Application SQL tuning
Exadata Management
Exadata Management
Deploy
• Provision Database
• Configure monitoring
Test
• Validate application performance • Test for response time • Test for throughput
Storage OS
• Migrating application to Exadata involves multiple changes:
• O/S migrations • Storage subsystem changes • Database upgrades • Single database instance to RAC
SQL Performance Analyzer (SPA)
SQL Plans + Stats on current system
SQL Workload STS
SQL Plans + Stats on Exadata DB Machine
Compare SQL Performance
Analysis Report
Maintain
• Patch automation
OracleExadata技术架构和主要特点
故障修复
根据诊断结果,采取相应的措施修复故障, 如更换硬件、重新配置软件等。
数据恢复
在数据丢失的情况下,根据备份进行数据恢 复,确保业务的连续性。
THANKS FOR WATCHING
感谢您的观看
03 Oracle Exadata数据库 技术
Exadata的数据库架构
硬件架构
Exadata的硬件架构包括数据库服务器、存储服务器和InfiniBand交换机。数据库服务器负责处理数据库查询, 存储服务器提供存储空间,而InfiniBand交换机则提供高速数据传输。
软件架构
Exadata软件架构包括数据库软件、Exadata智能存储软件和Exadata智能加速软件。这些软件协同工作,提供高 性能、高可用性和高扩展性的数据库服务。
Exadata的存储性能优化源自010203
存储I/O优化
Exadata通过智能的I/O调 度和优化技术,减少I/O 等待时间和延迟,提高存 储I/O性能。
存储网络优化
Exadata采用高性能的存 储网络技术,降低网络延 迟和传输瓶颈,提高数据 传输效率。
存储管理优化
Exadata提供高效的存储 管理工具和策略,简化存 储管理流程,降低管理成 本,提高存储资源利用率。
QoS控制
通过流量控制和优先级调度,确保关键业务流量 在网络中的优先传输。
压缩与加密技术
采用数据压缩和加密技术,减少数据传输量,提 高网络安全防护能力。
负载均衡
通过负载均衡技术,将数据流量合理分配到多个 网络路径上,提高网络吞吐量。
05 Oracle Exadata安全技 术
Exadata的安全架构
Exadata_Database_Machine_X5-2
Oracle 产品介绍Oracle Exadata 数据库云服务器 X5-2特性• 每机架多达 684 个 CPU 内核和14.6 TB 内存用于数据库处理• 每机架多达 288 个 CPU 内核专用于在存储中处理 SQL• 每机架 2 到 19 台数据库服务器• 每机架 3 到 18 个 OracleExadata Storage Server• 每机架高达 230 TB 闪存• 40 Gb/秒的 (QDR) InfiniBand网络• 每机架的未压缩镜像可用容量高达 385 TB• 混合列压缩的压缩率通常可达10-15 倍• 完全冗余带来高可用性• Oracle Linux事实• 每机架来自 SQL 的未压缩 I/O带宽高达 263 GB/秒• 每秒可执行多达 414.4 万个数据库 8K 读取 I/O 操作• 易于升级,可满足任意规模应用的需求• 可连接多个 Exadata 数据库云服务器 X5-2 机架或 Exadata存储扩展机架进行扩展。
只使用 InfiniBand 电缆和内部交换机即可连接多达 18 个机架。
还可通过外部 InfiniBand 交换机构建更大规模的配置• 针对所有数据库应用进行了优化的预配置系统Oracle Exadata 数据库云服务器为运行 Oracle 数据库提供了一个性能最强、最经济高效和可用性最高的平台。
Exadata 是一个现代化的架构,配有可横向扩展的行业标准数据库服务器、可横向扩展的智能存储服务器、最先进的 PCI 闪存存储服务器以及一个可连接所有服务器和存储的内部极速 InfiniBand 结构。
Exadata 所用的独有软件算法在存储、基于 PCI 的闪存和 InfiniBand 网络中实现了数据库智能,因此,与其他平台相比,能以更低的成本实现更高的性能和容量。
Exadata 可运行所有类型的数据库负载,包括在线事务处理 (OLTP)、数据仓库 (DW)、内存中分析以及各种混合负载。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2012年8月1前言1.1本文背景前期东软-甲骨文公司组织了一次针对社保系统的Exadata联合应用测试,本文内容是本次Exadata测试的经验总结,其中包含了与Oracle技术人员交流经验应用、Oracle相关技术文档应用及个人测试经验总结。
1.2本文简介本文是关于ORACLEExadata的一些特性介绍和应用Exadata的一些指南;本文不会涉及太多传统ORACLEDataBase已经具有的而非Exadata专有的一些特性介绍。
通过本文,读者可以了解ORACLE推出Exadata的目的和初衷,简单了解Exadata架构体系,了解Exdata的一些设计思路,了解其特性及其原理;了解Exadata的适合应用场景,不适合应用场景,以及在Exadata下开发的一些注意事项(尤其是做Exadata项目主要设计、开发人员一定要了解Exadata,不要把它完全当作传统ORACLE数据库)。
1.3读者范围●已经熟悉ORACLE数据库●有Exadata相关项目●想了解一些Exadata的特性原理和其实现细节一 Exadata概述1Exadata简介1.1ORACLEExadataDatabaseMachine1.ORACLEExadata数据库云服务器,把服务器、存储、数据库合理的整合在一起。
2.为满足大型数据库存在的性能瓶颈而推出的,最初为DW系统应用,后来也同时支持OLTP系统,成为一个支持混合应用的系统。
3.包含DatabaseServer、ExadataStorageServer2Exadata的配置及性能参数2.1性能优势1.是ShareNothing(StorageServer)与ShareDisk(DataBaseServer)结合的系统,有优点也有缺点。
2.是软硬件结合的系统,也是一个Balance系统,通过多CPU、大内存、多磁盘、Flashcard、Infiniband等合理搭配,再结合强大的软件系统,减少单一性能瓶颈;其主要是软件提升系统性能,而不是主要靠硬件。
其性能好最主要原因是通过Offload(存储节点卸载)减少存储层与数据库层之间的传输数据量。
3.对于要求吞吐量批处理业务操作来说,通过Offload(如cellSmartfilecreation、SmartScan、StorageIndex等技术)方式减少无用数据的交互,通过Compression使数据存储空间更小,通过DirectPathRead 数据直接放到PGA中,而不占用SGA。
4.对于要求响应速度的单笔并发查询业务来说,通过FlashCache提供更大的IOPS。
FlashCache同时也为大查询提供更高的带宽。
5.通过Infiniband使数据传输带宽更高,也降低RAC间争用。
6.通过ASM打散数据,避免热点IO。
7.再通过ResourceManager协调管理各个业务系统可使用的资源。
8.再加上Database11gR2的分区、并行、并发、ResultCache等增加系统处理性能和能力。
二 Exadata特性1SmartScan(智能扫描)1.1SmartScan带来什么1.感性认识1.2SmartScan介绍1.SmartScan是什么1)其设计思路区别以往系统,将处理能力从DB层下移到Storage层2)SmartScan在Storage层由软件实现2.SmartScan作用1)过滤无用数据,减少提交到数据库服务器的数据量2)即减少对网络及DB服务器压力减小,利用了存储的CPU资源3.SmartScan原理1)字段过滤:selectcolumn2)谓词过滤:wherecolumn\joincolumn4.SQL启用SmartScan必要条件(非充分条件)1)必须是全扫描(1)FullTableScan(2)IndexFastFullScan(3)BitmapScan2)必须直接路径读取(DirectPathRead到PGA,普通方式读取到SGA不可以)3)对象必须存储在ExadataStorage上(其他普通存储不可以)5.ORACLE提供参数禁用或启用SmartScan(默认启用)1.3SmartScan特点1.自动和透明,随时可以使用,不需要特殊处理1)SQL第一次执行就可以使用2)不像StorageIndex那样需要ORACLE先建立才能使用3)不像FlashCache那样需要ORACLE先缓存4)Where子句也不是必须的2.使用特点1)只适用于Query,不适用于DML2)按普通索引查询则无法使用SmartScan3)没有类似BufferCache共享的目的,非常适合每次查询都是不重复的数据。
4)只返回符合条件的row和column,多余数据不返回5)数据按照集合(非ORACLE块)返回到PGA中,不放入SGA6)如果所有字段都查,并且没有where子句,那么SmartScan就无作用了1.4SmartScan应用SQL>set autot onSQL>select/*+no_index(t)*/count(1)from ac42t where aac001=;COUNT(1)----------28已用时间:00:00:09.80执行计划----------------------------------------------------------Planhashvalue:-----------------------------------------------------------------------------------|Id|Operation|Name|Rows|Bytes|Cost(%CPU)|Time|-----------------------------------------------------------------------------------|0|SELECTSTATEMENT||1|7|1558K(1)|05:11:37||1|SORTAGGREGATE||1|7||||*2|TABLEACCESSSTORAGEFULL|AC42|17|119|1558K(1)|05:11:37|-----------------------------------------------------------------------------------PredicateInformation(identifiedby operation id):---------------------------------------------------2-storage("AAC001"=)filter("AAC001"=)Note------automatic DOP:skippedbecause of IOcalibrate statistics aremissing统计信息----------------------------------------------------------1recursivecalls0db block gets6122224consistent gets6122176physicalreads0redo size347bytessentvia SQL*Net to client360bytesreceivedvia SQL*Net from client2SQL*Netroundtrips to/from client0sorts(memory)0sorts(disk)1rows processedSQL>set autot offSQL>select*from v_flash;NAMEVALUE--------------------------------------------------------------------------cellflash cacheread hits292cell num smartIO sessionsusing passthru mode due to cellsrv0cell num smartIO sessionsusing passthru mode due touser0cell physical IObyteseligible for predicateoffload5.0153E+10cell physical IObytessaved bystorageindex0cell physical IOinterconnectbytesreturned by smart scan7285736db block gets185db block gets direct0db block gets fromcache185db block gets fromcache(fastpath)8physicalread IOrequests288282physicalread requestsoptimized292已选择12行。
已用时间:00:00:00.061.5SmartScan总结1.SmartScan性能1)性能很快,一般在秒级/10、秒级、分钟级2)比普通全表扫描快很多3)没有中等性能的传统Index快,没有中等性能的StorageIndex快,和不好的Index/StorageIndex差不多4)结合StorageIndex使用,性能更好2.根据其机制和测试结果,个人感觉:1)为DW而设计,更适用于类似DW系统等大数据量应用。
2)不太适用于要求响应时间和并发量的OLTP单笔业务系统中。
3.SmartScan适用场景1)适用于后台手工大数据查询(1)如现场后台手工分析、统计一些数据2)报表统计(1)各类大报表的统计3)前台各类大查询(1)大数据量的查询4)前台大业务模块的待处理数据的查询(1)批量核定业务的未核定单位(个人)数据查询(2)批量征集业务的待征集数据查询(3)批量实收业务的到帐未实收数据查询5)Where条件选择性非常不好的各种查询(1)(日期、类别、状态、人数、金额。
)6)非常不常用、不重要的OLTP单笔业务4.SmartScan不适用场景1)后台批量业务的循环大SQL单次查询(1)不能在forloop中的SQL使用SmartScan2)前台并发大的小业务(1)对于前台并发操作多,但很小的业务,如停续保、基本信息修改等5.SmartScan给系统设计开发带来的好处1)对OLTP小业务无影响(不必考虑此特性,按原先方式设计开发)2)减少大SQL过度优化3)对于复杂大SQL直接用SmartScan,不用非要走各种索引4)减少选择性非常不好的传统索引的建立2StorageIndex(存储索引)2.1StorageIndex带来什么1.感性认识2.2StorageIndex介绍1.StorageIndex是什么1)不同于传统Index,非find需要的数据,而是filter不要的数据2)在Storage层实现,非Server层3)StorageIndex保存在cell节点内存中4)StorageIndex为每个存储单元(1m)数据块建立最大值和最小值2.StorageIndex作用1)消除不必要的磁盘I/O3.StorageIndex原理1)比较where条件与cell内存中的StorageIndex,不符合匹配条件的存储区间直接被跳过,由于被跳过部分数据不产生IO,因此大大减少磁盘I/O2)类似Partition,不过是更小范围的分区4.StorageIndex如何管理1)StorageIndex由ORACLE内部来自动维护(包括建立、更新、清除等)(1)第一次智能扫描(2)Ctas(3)InsertAppend(4)Update2)不需要也不能人工干预(内部机制不是特别清楚)3)经常使用的列会有建立StorageIndex5.SQL启用StorageIndex启用必要条件(非充分条件)1)必须是SmartScan方式2)必须有where子句3)并行查询6.ORACLE提供参数禁用或启用StorageIndex(默认启用)2.3StorageIndex特点1.特点1)在内存中,速度快,也意味着重启即丢失2)不同于传统Index,非find数据,而是filter不要的数据3)自动和透明,返回的数据是完全一致的和事务级的4)与普通索引机制不一样,不针对表建立,针对数据块建立,每1m数据块建立最大最小值,空间小5)最多8列6)根据其过滤方式,表字段数据越有序,则存储索引效果越好2.原则1)只适合Query,不适合DML2)按普通索引查询则无法使用StorageIndex3)一般第二次查询可用上StorageIndex(首次查询用不上,因为StorageIndex还没有建立),查询后会重建StorageIndex4)数据修改,ORACLE会维护存储索引(机制不清),有时可能会失效(不会导致错误)5)字段值(非字段类型)为数字的可以使用存储索引,字段值存在字符型不使用2.4StorageIndex应用SQL>set autot onSQL>select/*+no_index(t)*/count(1)from ac42t where aac001=;COUNT(1)----------28已用时间:00:00:09.43执行计划----------------------------------------------------------Planhashvalue:-----------------------------------------------------------------------------------|Id|Operation|Name|Rows|Bytes|Cost(%CPU)|Time|-----------------------------------------------------------------------------------|0|SELECTSTATEMENT||1|7|1558K(1)|05:11:37||1|SORTAGGREGATE||1|7||||*2|TABLEACCESSSTORAGEFULL|AC42|17|119|1558K(1)|05:11:37|-----------------------------------------------------------------------------------PredicateInformation(identifiedby operation id):---------------------------------------------------2-storage("AAC001"=)filter("AAC001"=)Note------automatic DOP:skippedbecause of IOcalibrate statistics aremissing统计信息----------------------------------------------------------143recursivecalls0db block gets6122354consistent gets6122225physicalreads2088redo size347bytessentvia SQL*Net to client360bytesreceivedvia SQL*Net from client2SQL*Netroundtrips to/from client6sorts(memory)0sorts(disk)1rows processedSQL>set autot offSQL>select*from v_flash;NAMEVALUE--------------------------------------------------------------------------cellflash cacheread hits80cell num smartIO sessionsusing passthru mode due to cellsrv0cell num smartIO sessionsusing passthru mode due touser0cell physical IObyteseligible for predicateoffload5.0153E+10cell physical IObytessaved bystorageindexcell physical IOinterconnectbytesreturned by smart scan7277832db block gets66db block gets direct0db block gets fromcache66db block gets fromcache(fastpath)0physicalread IOrequests48240physicalread requestsoptimized132已选择12行。