<p>Large datasets, millions of records, need special programming to maintain speed in DBGrids. </p>

<p>I want to know if there are any ready-made components for Delphi (DBGrids) that do this automatically?</p>

<p>EDIT For Example: Some databases have features such as fetch 1st X records (eg 100 records). When I reach the bottom with scrolling, I want to auto fetch the next 100. Conversely when I reach the beginning, I want to fetch the previous 100. I know I can program this, but it sure is possible to propagate that feature to a DBGrid control where the DBGrid does the buffering. It will save quite a bit of programming - you simply have to set the "buffer size" so to speak.</p>

NextGrid is light, fast and nice looking grid for Delphi
http://www.bergsoft.net/component/next-grid/features.htm
HANDLING LARGE AMOUNT OF CELLS WITHOUT LOOSING SPEED
NextGrid can handle very large amount
  of cells without losing speed. Speed
  of adding, modifying and deleting data
  doesn't depend of the amount of cells.
  In NextGrid demo you can see how fast
  NextGrid work with 100,000 rows and 10
  columns = 1,000,000 cells