cancel
Showing results for 
Search instead for 
Did you mean: 

Question about Buffer Access Time

Former Member
0 Kudos

Following sentences is description of Buffer Access Time of Dialog response time in ST03.

Buffer Access Time

Certainly, buffer access requires some time in the u03BCs/ms range, depending on the amount of requested data and the type of access. This time is not reported separately. Effectively, buffer access time is knocked down to processing time. In extreme cases, buffer accesses can even take seconds! Why is that? Data is buffered with a structure according to its primary index; the buffer does never contain indexes. Thus, accessing the buffered data other than by primary index may result in high buffer access time.

My questions are:

1. How to understand "Data is buffered with a structure according to its primary index"? When a table is fully buffered, all records are buffered. What else will be buffered?

2. If a table has a large data volume and it's fully buffered into memory, when application wants to query from the buffered table, what's the execution plan, only full table scan in memory?

Please advise. Thanks

James

Accepted Solutions (0)

Answers (1)

Answers (1)

JPReyes
Active Contributor
0 Kudos

1. How to understand "Data is buffered with a structure according to its primary index"? When a table is fully buffered, all records are buffered. What else will be buffered?

Nothing else.... just data

2. If a table has a large data volume and it's fully buffered into memory, when application wants to query from the buffered table, what's the execution plan, only full table scan in memory?

No... it looks at the index and the index send them to the buffered data.

Regards

Juan

Former Member
0 Kudos

1. How to understand "Data is buffered with a structure according to its primary index"? When a table is fully buffered, all records are buffered. What else will be buffered? Nothing else.... just data

2. If a table has a large data volume and it's fully buffered into memory, when application wants to query from the buffered table, what's the execution plan, only full table scan in memory? No... it looks at the index and the index send them to the buffered data.

When access to a table is requested, the database access agent embedded in each work process first reads the Short nametab buffer for information about the table. If the information is insufficient (for example, the SELECT statement uses a non-primary key) it accesses the Table definitions buffer and then the Field descriptions buffer. By reading the Repository buffers, the database access agent knows whether the table is buffered or not. Using this information, it accesses the table buffers (partial buffer or generic buffer) or the database.

So if a table is fully buffered into memory, the database access agent will only query from memory. If only data is buffered into memory, how to look at index? what's the execution plan, only full table scan in memory? Please advise. Thanks.

James

Former Member
0 Kudos

1. How to understand "Data is buffered with a structure according to its primary index"? When a table is fully buffered, all records are buffered. What else will be buffered?

Nothing else.... just data

2. If a table has a large data volume and it's fully buffered into memory, when application wants to query from the buffered table, what's the execution plan, only full table scan in memory?

No... it looks at the index and the index send them to the buffered data.

When access to a table is requested, the database access agent embedded in each work process first reads the Short nametab buffer for information about the table. If the information is insufficient (for example, the SELECT statement uses a non-primary key) it accesses the Table definitions buffer and then the Field descriptions buffer. By reading the Repository buffers, the database access agent knows whether the table is buffered or not. Using this information, it accesses the table buffers (partial buffer or generic buffer) or the database.

So if a table is fully buffered into memory, the database access agent will only query from memory.

My question is how the agent look at index if only data is buffered into memory? what's the execution plan, only full table scan in memory? Please advise. Thanks.

James

Former Member
0 Kudos

Anyone advise? Thanks.