dbTalk Databases Forums  

sequential disk read speed

comp.databases.theory comp.databases.theory


Discuss sequential disk read speed in the comp.databases.theory forum.



Reply
 
Thread Tools Display Modes
  #41  
Old   
David BL
 
Posts: n/a

Default Re: sequential disk read speed - 08-23-2008 , 01:04 AM






On Aug 22, 10:13 pm, -CELKO- <jcelko... (AT) earthlink (DOT) net> wrote:
Quote:
Why can a disk only read 64KB at a time? Is this a valid assumption? Is this a disk limitation or a file system limitation?

The author has to provide some numbers to show how to calculate an
estimation for disk access. Frankly, 64KB seems a little small for a
modern computer other than a desktop machine.
Also on a desktop, 64k is too small. A desktop HD has higher seek
+rotational delay and lower transfer rate giving about the same
product as for an enterprise HD.

Quote:
What you might consider is the rise of solid state storage, which will
start replacing moving disk hardware in the next few years. This with
multi-core processors will change database design radically. We work
in a trade where everything you know is wrong in five years
I wonder whether it will be less radical than might at first be
imagined. CPU caches lead to significant variation in memory access
times.

I few years ago I wrote a transient B+Tree and compared the
performance to the STL map (a red black tree) that ships with MS
Visual C++. I ran tests involving inserting a million randomly
generated keys on a map keyed by 32 bit integers. The B+Tree was
twice as fast at insertions and deletions, 35% faster at look up, and
10 times faster at iteration through the elements.


Reply With Quote
  #42  
Old   
David BL
 
Posts: n/a

Default Re: sequential disk read speed - 08-23-2008 , 01:04 AM






On Aug 22, 10:13 pm, -CELKO- <jcelko... (AT) earthlink (DOT) net> wrote:
Quote:
Why can a disk only read 64KB at a time? Is this a valid assumption? Is this a disk limitation or a file system limitation?

The author has to provide some numbers to show how to calculate an
estimation for disk access. Frankly, 64KB seems a little small for a
modern computer other than a desktop machine.
Also on a desktop, 64k is too small. A desktop HD has higher seek
+rotational delay and lower transfer rate giving about the same
product as for an enterprise HD.

Quote:
What you might consider is the rise of solid state storage, which will
start replacing moving disk hardware in the next few years. This with
multi-core processors will change database design radically. We work
in a trade where everything you know is wrong in five years
I wonder whether it will be less radical than might at first be
imagined. CPU caches lead to significant variation in memory access
times.

I few years ago I wrote a transient B+Tree and compared the
performance to the STL map (a red black tree) that ships with MS
Visual C++. I ran tests involving inserting a million randomly
generated keys on a map keyed by 32 bit integers. The B+Tree was
twice as fast at insertions and deletions, 35% faster at look up, and
10 times faster at iteration through the elements.


Reply With Quote
  #43  
Old   
David BL
 
Posts: n/a

Default Re: sequential disk read speed - 08-23-2008 , 01:04 AM



On Aug 22, 10:13 pm, -CELKO- <jcelko... (AT) earthlink (DOT) net> wrote:
Quote:
Why can a disk only read 64KB at a time? Is this a valid assumption? Is this a disk limitation or a file system limitation?

The author has to provide some numbers to show how to calculate an
estimation for disk access. Frankly, 64KB seems a little small for a
modern computer other than a desktop machine.
Also on a desktop, 64k is too small. A desktop HD has higher seek
+rotational delay and lower transfer rate giving about the same
product as for an enterprise HD.

Quote:
What you might consider is the rise of solid state storage, which will
start replacing moving disk hardware in the next few years. This with
multi-core processors will change database design radically. We work
in a trade where everything you know is wrong in five years
I wonder whether it will be less radical than might at first be
imagined. CPU caches lead to significant variation in memory access
times.

I few years ago I wrote a transient B+Tree and compared the
performance to the STL map (a red black tree) that ships with MS
Visual C++. I ran tests involving inserting a million randomly
generated keys on a map keyed by 32 bit integers. The B+Tree was
twice as fast at insertions and deletions, 35% faster at look up, and
10 times faster at iteration through the elements.


Reply With Quote
  #44  
Old   
David BL
 
Posts: n/a

Default Re: sequential disk read speed - 08-23-2008 , 01:04 AM



On Aug 22, 10:13 pm, -CELKO- <jcelko... (AT) earthlink (DOT) net> wrote:
Quote:
Why can a disk only read 64KB at a time? Is this a valid assumption? Is this a disk limitation or a file system limitation?

The author has to provide some numbers to show how to calculate an
estimation for disk access. Frankly, 64KB seems a little small for a
modern computer other than a desktop machine.
Also on a desktop, 64k is too small. A desktop HD has higher seek
+rotational delay and lower transfer rate giving about the same
product as for an enterprise HD.

Quote:
What you might consider is the rise of solid state storage, which will
start replacing moving disk hardware in the next few years. This with
multi-core processors will change database design radically. We work
in a trade where everything you know is wrong in five years
I wonder whether it will be less radical than might at first be
imagined. CPU caches lead to significant variation in memory access
times.

I few years ago I wrote a transient B+Tree and compared the
performance to the STL map (a red black tree) that ships with MS
Visual C++. I ran tests involving inserting a million randomly
generated keys on a map keyed by 32 bit integers. The B+Tree was
twice as fast at insertions and deletions, 35% faster at look up, and
10 times faster at iteration through the elements.


Reply With Quote
  #45  
Old   
David BL
 
Posts: n/a

Default Re: sequential disk read speed - 08-23-2008 , 01:04 AM



On Aug 22, 10:13 pm, -CELKO- <jcelko... (AT) earthlink (DOT) net> wrote:
Quote:
Why can a disk only read 64KB at a time? Is this a valid assumption? Is this a disk limitation or a file system limitation?

The author has to provide some numbers to show how to calculate an
estimation for disk access. Frankly, 64KB seems a little small for a
modern computer other than a desktop machine.
Also on a desktop, 64k is too small. A desktop HD has higher seek
+rotational delay and lower transfer rate giving about the same
product as for an enterprise HD.

Quote:
What you might consider is the rise of solid state storage, which will
start replacing moving disk hardware in the next few years. This with
multi-core processors will change database design radically. We work
in a trade where everything you know is wrong in five years
I wonder whether it will be less radical than might at first be
imagined. CPU caches lead to significant variation in memory access
times.

I few years ago I wrote a transient B+Tree and compared the
performance to the STL map (a red black tree) that ships with MS
Visual C++. I ran tests involving inserting a million randomly
generated keys on a map keyed by 32 bit integers. The B+Tree was
twice as fast at insertions and deletions, 35% faster at look up, and
10 times faster at iteration through the elements.


Reply With Quote
  #46  
Old   
David BL
 
Posts: n/a

Default Re: sequential disk read speed - 08-23-2008 , 01:04 AM



On Aug 22, 10:13 pm, -CELKO- <jcelko... (AT) earthlink (DOT) net> wrote:
Quote:
Why can a disk only read 64KB at a time? Is this a valid assumption? Is this a disk limitation or a file system limitation?

The author has to provide some numbers to show how to calculate an
estimation for disk access. Frankly, 64KB seems a little small for a
modern computer other than a desktop machine.
Also on a desktop, 64k is too small. A desktop HD has higher seek
+rotational delay and lower transfer rate giving about the same
product as for an enterprise HD.

Quote:
What you might consider is the rise of solid state storage, which will
start replacing moving disk hardware in the next few years. This with
multi-core processors will change database design radically. We work
in a trade where everything you know is wrong in five years
I wonder whether it will be less radical than might at first be
imagined. CPU caches lead to significant variation in memory access
times.

I few years ago I wrote a transient B+Tree and compared the
performance to the STL map (a red black tree) that ships with MS
Visual C++. I ran tests involving inserting a million randomly
generated keys on a map keyed by 32 bit integers. The B+Tree was
twice as fast at insertions and deletions, 35% faster at look up, and
10 times faster at iteration through the elements.


Reply With Quote
  #47  
Old   
Darren
 
Posts: n/a

Default Re: sequential disk read speed - 08-23-2008 , 12:26 PM



On Aug 21, 12:08*am, David BL <davi... (AT) iinet (DOT) net.au> wrote:
Quote:
On Aug 21, 8:36 am, Darren <anon5... (AT) yahoo (DOT) com> wrote:





I am learning about database systems, and I am reading a book called
"Physical Database Design".

It gets to a bit about a large sequential access (e.g. for a full
table scan), and does the following:

It says "Since most disk systems use prefetch buffers to speed up
table scans, we
assume a 64 KB prefetch block"

So to calculate the time for a full table scan, it multiples the
number of 64KB blocks by the time it takes to seek and read (2.02ms).
In other words, it is seeking each 64KB block.

Why can a disk only read 64KB at a time? Is this a valid assumption?
Is this a disk limitation or a file system limitation?

A high end modern HD with 4ms average seek will on average take about
7ms to access and an additional 0.5ms to read a randomly located 64k
buffer. * This mismatch shows that 64k blocks are too small for
optimal read performance. * 512k or 1Mb blocks would be more suitable.-Hide quoted text -

- Show quoted text -
But what dictates the block size? Is this defined by the physical
disk, the file system, or the database code?


Reply With Quote
  #48  
Old   
Darren
 
Posts: n/a

Default Re: sequential disk read speed - 08-23-2008 , 12:26 PM



On Aug 21, 12:08*am, David BL <davi... (AT) iinet (DOT) net.au> wrote:
Quote:
On Aug 21, 8:36 am, Darren <anon5... (AT) yahoo (DOT) com> wrote:





I am learning about database systems, and I am reading a book called
"Physical Database Design".

It gets to a bit about a large sequential access (e.g. for a full
table scan), and does the following:

It says "Since most disk systems use prefetch buffers to speed up
table scans, we
assume a 64 KB prefetch block"

So to calculate the time for a full table scan, it multiples the
number of 64KB blocks by the time it takes to seek and read (2.02ms).
In other words, it is seeking each 64KB block.

Why can a disk only read 64KB at a time? Is this a valid assumption?
Is this a disk limitation or a file system limitation?

A high end modern HD with 4ms average seek will on average take about
7ms to access and an additional 0.5ms to read a randomly located 64k
buffer. * This mismatch shows that 64k blocks are too small for
optimal read performance. * 512k or 1Mb blocks would be more suitable.-Hide quoted text -

- Show quoted text -
But what dictates the block size? Is this defined by the physical
disk, the file system, or the database code?


Reply With Quote
  #49  
Old   
Darren
 
Posts: n/a

Default Re: sequential disk read speed - 08-23-2008 , 12:26 PM



On Aug 21, 12:08*am, David BL <davi... (AT) iinet (DOT) net.au> wrote:
Quote:
On Aug 21, 8:36 am, Darren <anon5... (AT) yahoo (DOT) com> wrote:





I am learning about database systems, and I am reading a book called
"Physical Database Design".

It gets to a bit about a large sequential access (e.g. for a full
table scan), and does the following:

It says "Since most disk systems use prefetch buffers to speed up
table scans, we
assume a 64 KB prefetch block"

So to calculate the time for a full table scan, it multiples the
number of 64KB blocks by the time it takes to seek and read (2.02ms).
In other words, it is seeking each 64KB block.

Why can a disk only read 64KB at a time? Is this a valid assumption?
Is this a disk limitation or a file system limitation?

A high end modern HD with 4ms average seek will on average take about
7ms to access and an additional 0.5ms to read a randomly located 64k
buffer. * This mismatch shows that 64k blocks are too small for
optimal read performance. * 512k or 1Mb blocks would be more suitable.-Hide quoted text -

- Show quoted text -
But what dictates the block size? Is this defined by the physical
disk, the file system, or the database code?


Reply With Quote
  #50  
Old   
Darren
 
Posts: n/a

Default Re: sequential disk read speed - 08-23-2008 , 12:26 PM



On Aug 21, 12:08*am, David BL <davi... (AT) iinet (DOT) net.au> wrote:
Quote:
On Aug 21, 8:36 am, Darren <anon5... (AT) yahoo (DOT) com> wrote:





I am learning about database systems, and I am reading a book called
"Physical Database Design".

It gets to a bit about a large sequential access (e.g. for a full
table scan), and does the following:

It says "Since most disk systems use prefetch buffers to speed up
table scans, we
assume a 64 KB prefetch block"

So to calculate the time for a full table scan, it multiples the
number of 64KB blocks by the time it takes to seek and read (2.02ms).
In other words, it is seeking each 64KB block.

Why can a disk only read 64KB at a time? Is this a valid assumption?
Is this a disk limitation or a file system limitation?

A high end modern HD with 4ms average seek will on average take about
7ms to access and an additional 0.5ms to read a randomly located 64k
buffer. * This mismatch shows that 64k blocks are too small for
optimal read performance. * 512k or 1Mb blocks would be more suitable.-Hide quoted text -

- Show quoted text -
But what dictates the block size? Is this defined by the physical
disk, the file system, or the database code?


Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.