Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
Деректер базасын есептеуде Oracle Real Application Clusters (RAC) — Oracle Corporation компаниясы жасаған және 2001 жылы Oracle9i нұсқасымен бірге ұсынған Oracle Database бағдарламалық жасақтамасының мүмкіндігі, Oracle деректер базасы орталарында кластерлеу және жоғары сенімділікті қамтамасыз етеді. Oracle Corporation RAC-ты Enterprise Edition нұсқасына қоса береді, егер түйіндер Oracle Clusterware арқылы кластерленген болса.
In database computing, Oracle Real Application Clusters (RAC) — an option for the Oracle Database software produced by Oracle Corporation and introduced in 2001 with Oracle9i — provides software for clustering and high availability in Oracle database environments. Oracle Corporation includes RAC with the Enterprise Edition, provided the nodes are clustered using Oracle Clusterware.
Функционалдылығы
Oracle RAC бірнеше компьютерге Oracle RDBMS бағдарламалық жасақтамасын бір мезгілде орындауға және жалғыз деректер қорына қол жеткізуге мүмкіндік береді, осылайша кластерлеуді қамтамасыз етеді. RAC емес Oracle деректер базасында бір инстанция ғана жалғыз деректер базасына қол жеткізеді. Деректер қоры дискте сақталатын деректер файлдары, басқару файлдары және қайта жазу журналдарынан тұрады. Инстанция – бұл компьютер жүйесінде іске қосылатын Oracle-қа қатысты жад және фонолық процестердің жиынтығы. Oracle RAC ортасында екі немесе одан көп инстанциялар бір мезгілде жалғыз деректер базасына қол жеткізеді. Бұл қолданбаға немесе пайдаланушыға кез келген компьютерге қосылып, біртұтас үйлестірілген деректерге қол жеткізуге мүмкіндік береді. Инстанциялар "Interconnect" арқылы байланысқан, бұл барлық инстанциялардың деректерге қол жеткізуде синхронды жұмыс істеуін қамтамасыз етеді.
Oracle RAC allows multiple computers to run Oracle RDBMS software simultaneously while accessing a single database, thus providing clustering. In a non RAC Oracle database, a single instance accesses a single database. The database consists of a collection of data files, control files, and redo logs located on disk. The instance comprises the collection of Oracle related memory and background processes that run on a computer system. In an Oracle RAC environment, 2 or more instances concurrently access a single database. This allows an application or user to connect to either computer and have access to a single coordinated set of data. The instances are connected with each other through an "Interconnect" which enables all the instances to be in sync in accessing the data.
Мақсаттары
Oracle RAC-тің басты мақсаты – деректердің өнімділігін, кеңейтілу мүмкіндігін, сенімділігін және инстанция деңгейінде жоғары қолжетімділігін қамтамасыз ету үшін кластерленген дерекқорын іске қосу болып табылады.
The main aim of Oracle RAC is to implement a clustered database to provide performance, scalability and resilience & high availability of data at instance level.
Кэштің бірігуі
Oracle 9-дан бұрын желілік кластерленген Oracle дерекқорлары деректерді тасымалдау ортасы ретінде сақтау құрылғысын пайдаланды (яғни, бір түйін деректер блогын дискіге жазады, ал басқа түйін сол дискіден сол деректерді оқиды), бұл өнімділіктің нашар болуына себеп болатын кемшілік еді. Oracle 9i бұл мәселені шешті: RAC кластер ішіндегі байланыс үшін арнайы желілік қосылымды қолданады. RAC-тің барлық компьютерлері/экземпляры бір дерекқорға қол жеткізетіндіктен, жүйе жалпы алғанда әртүрлі компьютерлердегі деректер өзгерістерін үйлестіруге кепілдік беруі керек, сондықтан компьютер деректерді сұрағанда, ол ең соңғы нұсқаны алуы тиіс – тіпті басқа компьютер осы деректерді жақында өзгерткен болса да. Oracle RAC осы мүмкіндікті Cache Fusion деп атайды. Cache Fusion – бұл Oracle RAC-тің әр компьютерде жеке-жеке кэште сақталатын деректерді бірыңғай, жаһандық кэшке "біріктіру" қабілеті.
Prior to Oracle 9, network clustered Oracle databases used a storage device as the data transfer medium (meaning that one node would write a data block to disk and another node would read that data from the same disk), which had the inherent disadvantage of lackluster performance. Oracle 9i addressed this issue: RAC uses a dedicated network connection for communications internal to the cluster. Since all computers/instances in a RAC access the same database, the overall system must guarantee the coordination of data changes on different computers such that whenever a computer queries data, it receives the current version — even if another computer recently modified that data. Oracle RAC refers to this functionality as Cache Fusion. Cache Fusion involves the ability of Oracle RAC to "fuse" the in memory data cached physically separately on each computer into a single, global cache.
Желі құру
Oracle Grid Naming Service (GNS) кластерлік тізілімде атауларды анықтауды қамтамасыз етеді.
The Oracle Grid Naming Service (GNS) handles name resolution in the cluster registry.
The Trace File Analyzer (TFA) aids in collecting RAC diagnostic data.
Нұсқалар
Oracle Real Application Clusters 12c Release 1 Enterprise Edition. Oracle Real Application Clusters One Node (RAC One Node) Oracle Database 11g Release 2 Enterprise Edition нұсқасында жұмыс істейтін бір түйінді орнатуларда RAC технологиясын қолдануға арналған.
Oracle Real Application Clusters 12c Release 1 Enterprise Edition. Oracle Real Application Clusters One Node (RAC One Node) applies RAC to single node installations running Oracle Database 11g Release 2 Enterprise Edition.
Эволюция
Oracle RAC бір даналы Oracle дерекқорына қарағанда қосымша күрделілік қосады. Дерекқорды автоматтандыру бір даналы дерекқорлар үшін мағыналы болғанымен, кластерленген дерекқорлар үшін олардың күрделілігі артуына байланысты одан да қажет болады. Oracle Real Application Clusters (RAC), 2001 жылы Oracle 9i-мен енгізілген, Oracle Parallel Server (OPS) дерекқорының орнын басады. Oracle9i көптеген Unix нұсқалары үшін (Linux және Windows-ты қоспағанда, Oracle Cluster Ready Services немесе CRS деп аталатын тегін кластерлік бағдарламаларды ұсынды) сыртқы кластерлік бағдарламаны (TruCluster Veritas Cluster Server немесе Sun Cluster сияқты кластерлік бағдарламаны) қажет еткен болса, Oracle 10g-ден бастап Oracle кластерлік бағдарламалық жасақтамасы барлық операциялық жүйелер үшін қолжетімді болды. Oracle Database 10g Release 2 (10.2) нұсқасымен Cluster Ready Services Oracle Clusterware деп қайта аталды. Oracle 10g немесе одан жоғары нұсқаларын пайдаланғанда, Oracle Clusterware – Oracle RAC жұмыс істейтін көптеген платформалар үшін қажетті жалғыз кластерлік бағдарлама (Tru кластерін қоспағанда, онда сізге жеткізуші кластерлік бағдарлама қажет). Егер кластерлік бағдарлама Oracle RAC үшін сертификатталған болса, онда сіз басқа өндірушілердің кластерлік бағдарламаларын пайдалана аласыз. RAC-те жазу транзакциясы дерекқорының тиісті аймағына ие болуы керек: әдетте, бұл кластерлік өзара байланыста (жергілікті IP желісі) дерек блогының меншік құқығын басқа түйінден жазуды жасағысы келетін түйінге беру туралы сұрау салуды қамтиды. Бұл жад операцияларын пайдаланатын бірде-бір дерекқор түйінімен салыстырғанда салыстырмалы түрде ұзақ уақыт алады (бірнешеден ондаған миллисекундқа дейін). Көптеген қолданбалар үшін жүйелердегі блоктарға қол жеткізуді үйлестіруге жұмсалатын уақыт жүйедегі көптеген операцияларға қарағанда аз, ал RAC бір жүйеге ұқсас масштабталады. Сонымен қатар, жоғары оқу транзакциялық дерекқорлар (мысалы, деректер қоймасы қолданбалары) RAC-те өте жақсы жұмыс істейді, өйткені меншік құқығын берудің қажеті жоқ. (Oracle 11g осы салада көптеген жақсартулар жасады және тек оқу жүктемелері үшін бұрынғы нұсқаларға қарағанда әлдеқайда жақсы жұмыс істейді.) Ресурсты басқару (немесе меншік құқығын беру) бойынша шығындар үш түйінден аз болса, минималды, өйткені кластердегі кез келген ресурсқа арналған сұрау ең көп дегенде үш секіруде алынуы мүмкін (иесі, бас сұрау салушы). Бұл Oracle RAC-ті көптеген түйіндермен көлденең масштабтауға мүмкіндік береді. Қолданба өндірушілер (мысалы, SAP) өздерінің қолданбаларының масштабталуын көрсету үшін Oracle RAC-ті пайдаланады. OLTP-нің ең ірі өлшемдерінің көпшілігі Oracle RAC-та жүзеге асырылады. Oracle RAC 11g 100 түйінге дейін қолдау көрсетеді. Кейбір қолданбалар үшін RAC-қа өнімділікті арттыру үшін қолданбаны мұқият бөлу қажет болуы мүмкін. SMP машинасының сызықтық масштабталатын қолданбасы RAC-те де сызықтық масштабталуы мүмкін. Алайда, егер қолданба SMP-де сызықтық масштабтауға мүмкіндік бермесе, ол RAC-ке көшірілген кезде масштабталмайды. Қысқасы, қолданбаның масштабталуы бір данада қолданбаның қаншалықты масштабталатынына байланысты.
Relative to the single instance Oracle database, Oracle RAC adds additional complexity. While database automation makes sense for single instance databases, it becomes even more necessary for clustered databases because of their increased complexity. Oracle Real Application Clusters (RAC), introduced with Oracle 9i in 2001, supersedes the Oracle Parallel Server (OPS) database option. Whereas Oracle9i required an external clusterware (known as vendor clusterware like TruCluster Veritas Cluster Server or Sun Cluster) for most of the Unix flavors (except for Linux and Windows where Oracle provided free clusterware called Cluster Ready Services or CRS), as of Oracle 10g, Oracle's clusterware product was available for all operating systems. With the release of Oracle Database 10g Release 2 (10.2), Cluster Ready Services was renamed to Oracle Clusterware. When using Oracle 10g or higher, Oracle Clusterware is the only clusterware that you need for most platforms on which Oracle RAC operates (except for Tru cluster, in which case you need vendor clusterware). You can still use clusterware from other vendors, if the clusterware is certified for Oracle RAC. In RAC, the write transaction must take ownership of the relevant area of the database: typically, this involves a request across the cluster interconnection (local IP network) to transfer the data block ownership from another node to the one wishing to do the write. This takes a relatively long time (from a few to tens of milliseconds) compared to single database node using in memory operations. For many types of applications, the time spent coordinating block access across systems is low relative to the many operations on the system, and RAC will scale comparably to a single system. Moreover, high read transactional databases (such as data warehousing applications) work very well under RAC, as no need for ownership transfer exists. (Oracle 11g has made many enhancements in this area and performs a lot better than earlier versions for read only workloads.) The overhead on the resource mastering (or ownership transfer) is minimal for fewer than three nodes, as the request for any resource in the cluster can be obtained in a maximum of three hops (owner master requestor). This makes Oracle RAC horizontally scalable with many nodes. Application vendors (such as SAP) use Oracle RAC to demonstrate the scalability of their application. Most of the biggest OLTP benchmarks are on Oracle RAC. Oracle RAC 11g supports up to 100 nodes. For some applications, RAC may require careful application partitioning to enhance performance. An application that scales linearly on an SMP machine may scale linearly under RAC. However, if the application cannot scale linearly on SMP, it will not scale when ported to RAC. In short, the application scalability is based on how well the application scales in a single instance.
Бәсекелестік жағдай
Ортақ ештеңе жоқ және ортақ барлық архитектуралардың әрқайсысының өзгесінен артықшылықтары бар. ДБЖ жеткізушілер мен салалық сарапшылар осы мәселені үнемі талқылайды; мысалы, Microsoft өзінің SQL Server 2005-ті Oracle 10g RAC-пен салыстыруды жариялайды. Oracle корпорациясы IBM SP және SP2-нің 7.x MPP нұсқаларын шығару арқылы Shared Nothing архитектурасымен RDBMS ұсынды, онда виртуалды ортақ дискілер (VSD) Shared Nothing архитектурасында Shared Everything жүзеге асыру үшін қолданылды.
Shared nothing and shared everything architectures each have advantages over the other. DBMS vendors and industry analysts regularly debate the matter; for example, Microsoft touts a comparison of its SQL Server 2005 with Oracle 10g RAC. Oracle Corporation offered a Shared Nothing architecture RDBMS with the advent of the IBM SP and SP2 with the release of 7. x MPP editions, in which virtual shared drives (VSD) were used to create a Shared Everything implementation on a Shared Nothing architecture.
Бәрін ортақтастырамыз
Ортақ архитектуралар кластердегі түйіндер арасында дискідегі және жадтағы деректерді бөліседі. Бұл ешқандай деректі бөліспейтін "ешнәрсемен бөліспейтін" архитектураларға қарама-қарсы. Кейбір коммерциялық деректер базалары "ортақ архитектураны" ұсынады. IBM Db2 for z/OS (IBM мейнфрейм операциялық жүйесі) IBM өз мейнфрейм аппараттық және бағдарламалық жасақтама кластерлік инфрақұрылымын шығарғаннан бері 1990 жылдардың ортасынан бастап жоғары өнімді деректерді бөлісу мүмкіндігін ұсынып келеді. 2009 жылдың соңында IBM DB2 pureScale-ді жариялады, ол AIX-тегі DB2 9.8 үшін ортақ дискілі кластерлеу схемасы болып табылады және Db2 деректерін бөлісудегі мейнфреймдегі параллель sysplex жүзеге асыруын имитациялайды. 2008 жылдың ақпан айында Sybase өзінің Adaptive Server Enterprise, Cluster Edition-ын шығарды. Ол Oracle RAC сияқты, барлық элементтері ортақ дизайнмен жасалған. Техникалық тұрғыдан алғанда толыққанды ортақ болмаса да, Sybase талдау және деректер қоймасы қолданбаларына бағытталған бағандық реляциялық деректер базасын ұсынады, ол Sybase IQ деп аталады және ортақ дискілік режимде жұмыс істеуге конфигурациялануы мүмкін. Amazon Aurora және Alibaba Cloud POLARDB сияқты бұлттық деректер базалары бұлттағы үлестірілген файлдық жүйе негізінде "ортақ архитектурамен" іске асырылған.
Shared everything architectures share both data on disk and data in memory between nodes in the cluster. This is in contrast to "shared nothing" architectures that share none of them. Some commercially available databases offer a "shared everything" architecture. IBM Db2 for z/OS (the IBM mainframe operating system) has provided a high performance data sharing option since the mid 1990s when IBM released its mainframe hardware and software clustering infrastructure. In late 2009, IBM announced DB2 pureScale, a shared disk clustering scheme for DB2 9.8 on AIX that mimics the parallel sysplex implementation behind Db2 data sharing on the mainframe. In February 2008, Sybase released its Adaptive Server Enterprise, Cluster Edition. It resembles Oracle RAC in its shared everything design. Although technically not shared everything, Sybase also provides a column based relational database focused on analytic and datawarehouse applications called Sybase IQ that can be configured to run in a shared disk mode. Cloud Native Databases, such as Amazon Aurora and POLARDB of Alibaba Cloud, are implemented with "shared everything" architecture on top of cloud based distributed file system.