Several key technologies in Informix Dynamic server

Source: Internet
Author: User
Tags informix thread

The core architecture of Informix dynamic servers is designed to provide built-in multiple threads and parallel processing capabilities.

Multiple clues

In the database server, the Informix dynamic server uses an adjustable database server process pool called a ' virtual processor ', which is used to plan and manage the user's request. User requests are expressed through a lightweight mechanism called ' clues ', a single, coherent flow of control that expresses an independent task in the database server process.

When a thread is waiting for a resource, the virtual processor can handle other clues, providing the flexibility to manage a large number of users with minimal operating system processes, because each virtual processor can respond to requests from multiple users.

Parallel processing

To ensure the most efficient use of system resources, Informix Dynamic servers decompose large tasks into subtasks so that they can be executed in parallel across multiple CPUs and disks. By dividing tasks into subtasks and performing these tasks in parallel, Informix dynamic servers can significantly reduce the execution time of complex operations.

Virtual Processor Class

In order to perform efficiently and regulate in many ways, virtual processors are grouped by class, and each class is optimized according to special functional requirements. The thread is transparently assigned to the virtual processor of the related class. Among the many virtual processor classes, the most important one is the CPU class, which can increase or decrease as CPU processing demands.

Dynamic shared Memory

All the memory used by the Informix dynamic server is shared by the virtual processor pool. With this approach, the Informix dynamic server can be configured to automatically add more storage space to the shared memory pool.

The Informix Dynamic server also allocates a zone called a thread stack in the virtual part of the shared memory to store the unshared data required for the execution of the thread.

asynchronous I/O

I/O is usually the slowest part of database processing. The Informix Dynamic server uses its asynchronous I/O to speed the processing of I/O. Because the virtual processor of an Informix dynamic server responds asynchronously to a user's I/O request, a virtual processor never waits for the end of the I/O operation until it starts processing the next service request.

Read ahead

For sequential table scans or index scans, Informix dynamic servers can asynchronously read multiple pages from disk while processing the current collection of pages in shared memory. With this capability, throughput can be maintained because the time it uses to wait for disk access to end is reduced.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.