Overview

Figure 1. Classic Architecture

Figure 2 illustrates how P6 Compression Server fits into the Primavera P6 Professional architecture.

Figure 2. With P6 Compression Server

In the current architecture (Figure 1), clients 1 to N interact with the database server over a WAN. With P6 Compression Server, the clients still get and send data over the WAN. Data goes through P6 Compression Server either way (Figure 2). Data from the database server is first compressed on P6 Compression Server and then sent across the WAN to clients.

Figure 3. Request Data Flow

A typical scenario for the flow of data can be described as follows (see Figure 3):

The user logs into the application or opens a project. This generates a sequence of SQL queries. (Although P6 Professional can compress data before sending it to P6 Compression Server, we do not compress most SQL statements unless the size of SQL text and parameters exceeds 880 bytes). The data is sent using HTTP. P6 Compression Server receives these SQL queries. P6 Compression Server behaves as a proxy for P6 Professional, and runs the SQL statement on behalf of the client. It receives the result set from the database. If the result set is over a configurable threshold, it compresses the response data (see Figure 4).

The compressed data is wrapped in HTTP and sent across the WAN back to the client. The client decodes and decompresses the data as required. The server does not wait until the entire result set is obtained from the database. Rather, the data is compressed into blocks of a preset size and sent to the client, even as P6 Compression Server is fetching additional rows of the same result set. This keeps the memory footprint on P6 Compression Server to a minimum, since it does not have to compile the entire result set into a huge block of compressed data, and also prevents the client from starving while P6 Compression Server compiles a large result set.

Figure 4. Response Data Flow



Legal Notices
Copyright © 2005, 2016, Oracle and/or its affiliates. All rights reserved.

Last Published Thursday, September 22, 2016