Understand the architecture of Oracle12.2: file system and multi-tenancy
- RVWR: Recovery Writer Process. When the database sets up a flashback area, the process regularly writes the flashback data in the memory, specifically the flashback buffer in the shared pool, to flashback. logs.
- Result cache –> RCBG:result cache is used to store the results of the original data operation during the execution of the SQL statement or plsql function. When the database performs the same operation on the same object again Operations can directly obtain results, avoiding waste of computing resources.
- ASH buffer–>MMNL: ASH buffer is used to store statistical information of active sessions, including SQL execution status, application connection status, waiting events, etc. When the ASH buffer is full, the MMNL process is responsible for writing the data in the buffer to disk.
- In memory undo (IMU): Open an area in the shared pool to store temporary undo. If multiple pieces of data are modified in a transaction, the undo data block in the buffer Cache will not be modified, but It is to add IMU nodes for recording. Mainly to reduce the Redo generated by undo.
- Private Redo log buffers: Mainly used to manage the temporary Redo generated by the IMU, store the Redo information of the transaction in the shared pool, and reduce the consumption of Redo log buffer.
- Flash Cache: The full name is Database smart flash Cache, which is an optimization technology for flash memory developed from 11.2. It aims to store some data by using flash memory instead of traditional slow disk devices. To achieve the purpose of reducing the overall delay of the database, improving the IOPS of the database, and improving the performance of the database.
Flash Cache works as follows:
The content stored in Flash Cache is controlled in two ways:
1. Flash Cache’s intelligent selection algorithm: determine by evaluating the frequency of access of data blocks and index blocks.
2. Modify the cell_flash_cache attribute of the database object.
Flash Cache storage content basic standards
Mainly small IO operations, as well as data blocks, index blocks, file headers, control files, etc. will be cached;
For RMAN backup IO operations, data pump IO operations, ASM mirroring operations, table space formatting, etc. will not be cached;
The cache priority of IO operations for full table scans is relatively low.
When data is stored in the flash Cache, it is mainly to improve the query speed. In other words, it is equivalent to adding a part of the buffer Cache area in addition to the memory, but the performance is better and the speed is better. Then, just like the buffer Cache, when the data in the flash Cache is full or written to a certain extent, the data needs to be written to the disk to leave space for new operation data.
Writing data in the cache to disk is called flushing. You can configure the Starting and stopping cache flushing levels value, which represents the percentage of the entire cache size occupied. When the data in the cache that has not been written to the disk reaches the starting flushing value, the controller starts flushing (written from the cache to the disk). When the amount of unwritten disk data in the cache is lower than the stop flush value, the flushing process stops.
If the start flushing level is set higher, more unwritten data can be cached in the memory. This helps improve the performance of write operations, but at the expense of data protection. If you want to get data protection, you can use lower start and stop values. Testing shows that the performance is better when using close start and stop flushing levels. If the stop level value is much lower than the start value, disk congestion will occur during flushing
Smart Flash LoggingFor a long time, the IO bottleneck of Redo log has been a major problem that has plagued the OLTP system, because the write delay of Redo directly drags down the response speed of the entire system and even the entire cluster.
In the traditional database architecture, some DBAs will separately allocate small block storage with low read and write latency to Redo. Starting from 11204, Oracle has proposed a new solution to specifically provide Redo in the flash memory area. Create an area to store temporary redo.
Place column storage in Flash Cache to improve write IO for frequently operated column storage objects
- Change Tracking File:Detect block changes in incremental backup and record them to the file. The recording unit is block.
- wallet: Oracle Wallet is a container used to store keys. To put it simply, it is a password box. Through this password box, you can use it without entering a password in situations that originally required entering a password, thereby protecting sensitive information such as account passwords, improving security, and making it more convenient to use.
Application Container is a new component proposed in 12.2. It divides the database system under the same application into a sub-container to achieve relative business isolation and data security while ensuring the same management of multi-tenants.
PDB has its own undo table spaceStarting from 12.2, each PDB has its own undo tablespace. This eliminates contention between multiple PDBs. If you want to perform flashback or timestamp-based recovery, you only need to search in your own undo data to improve efficiency.
Flexible creation method of PDB1. Create from PDB$seed (or application root): by copying files
2. The existing PDB is created through hot clone
Note: In 12.1, when creating a new PDB based on a PDB, the original library needs to be opened in read only mode.
In 12.2, the original library can continue to perform DML operations without being affected.
After the cloning is completed, the data will continue to be refreshed to the new database.
3. Migration from PDBs in other CDBs: Relocate
The front-end executes a command such as create pluggable database from relocate, and the background will automatically execute remote hot clone and perform remote file copy and synchronization.
4. Generate a new PDB through shadow copy of ASM disk files.
PDB memory resource management
In a multi-tenant environment, multiple PDBs share memory resources. When a PDB needs to address buffer cache, it needs to search from the entire shared resources, which is very inconvenient. In 12.2, Oracle implemented PDB-based domain division for some resources.
The hash list of memory resources in 12.1 is as follows:
This is what happens in 12.2:
More new features of PDB
1. Character set: In 12.2, if the CDB character set is a superset, that is, AL32UTF8, then PDBs with different character sets are supported. At the same time, through Proxy PDB, PDBs with different character sets can be queried. Proxy will identify and make the character sets of both parties compatible without garbled characters.
Multi-tenant technology has been widely used by users, and Yunhe Enmo, as a leader in the data service industry, has helped users realize the cloud transformation of systems in the Internet era through the combination of zData solutions and Oracle multi-tenant.
For more detailed explanations of new features of multi-tenancy, please refer to
YH9:Oracle Multitenant Knowledge Base
Multi-tenant technology has been widely used by users. As a leader in the data service industry, Yunhe Enmo has helped users realize the cloud transformation of systems in the Internet era through the combination of zData solutions and Oracle multi-tenant.
Article from WeChat public account: Data and Cloud
The above is the detailed content of Understand the architecture of Oracle12.2: file system and multi-tenancy. For more information, please follow other related articles on the PHP Chinese website!

The Internet does not rely on a single operating system, but Linux plays an important role in it. Linux is widely used in servers and network devices and is popular for its stability, security and scalability.

The core of the Linux operating system is its command line interface, which can perform various operations through the command line. 1. File and directory operations use ls, cd, mkdir, rm and other commands to manage files and directories. 2. User and permission management ensures system security and resource allocation through useradd, passwd, chmod and other commands. 3. Process management uses ps, kill and other commands to monitor and control system processes. 4. Network operations include ping, ifconfig, ssh and other commands to configure and manage network connections. 5. System monitoring and maintenance use commands such as top, df, du to understand the system's operating status and resource usage.

Introduction Linux is a powerful operating system favored by developers, system administrators, and power users due to its flexibility and efficiency. However, frequently using long and complex commands can be tedious and er

Linux is suitable for servers, development environments, and embedded systems. 1. As a server operating system, Linux is stable and efficient, and is often used to deploy high-concurrency applications. 2. As a development environment, Linux provides efficient command line tools and package management systems to improve development efficiency. 3. In embedded systems, Linux is lightweight and customizable, suitable for environments with limited resources.

Introduction: Securing the Digital Frontier with Linux-Based Ethical Hacking In our increasingly interconnected world, cybersecurity is paramount. Ethical hacking and penetration testing are vital for proactively identifying and mitigating vulnerabi

The methods for basic Linux learning from scratch include: 1. Understand the file system and command line interface, 2. Master basic commands such as ls, cd, mkdir, 3. Learn file operations, such as creating and editing files, 4. Explore advanced usage such as pipelines and grep commands, 5. Master debugging skills and performance optimization, 6. Continuously improve skills through practice and exploration.

Linux is widely used in servers, embedded systems and desktop environments. 1) In the server field, Linux has become an ideal choice for hosting websites, databases and applications due to its stability and security. 2) In embedded systems, Linux is popular for its high customization and efficiency. 3) In the desktop environment, Linux provides a variety of desktop environments to meet the needs of different users.

The disadvantages of Linux include user experience, software compatibility, hardware support, and learning curve. 1. The user experience is not as friendly as Windows or macOS, and it relies on the command line interface. 2. The software compatibility is not as good as other systems and lacks native versions of many commercial software. 3. Hardware support is not as comprehensive as Windows, and drivers may be compiled manually. 4. The learning curve is steep, and mastering command line operations requires time and patience.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

WebStorm Mac version
Useful JavaScript development tools

Notepad++7.3.1
Easy-to-use and free code editor

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.