We have a large dataset that we want to view (think excel) that is constantly been updated. It is large to the extent that we want some form of ‘focus’ so far points are not all drawn. Just wondering whats the most efficient way to do this in OpenGL, not just the GL side but the data structure to use as well. thanks

Depends on what “viewing” means here.

General idea: Varying data asks for vertex arrays and its modern extensions. No display lists.
Data which is outside the view should not be sent to the OpenGL, so gross “view” frustum culling needs to be done (bounding rectangles or boxes, quadtree, octree etc.)
If data is arranged in cells you could also pre-cook an optimally stripified mesh and adjust the variable data visualization (height, color, texture coordinates,…) with a vertex program at transform time.
There are some realtime terrain and water effects in the NVIDIA SDK using this this.

as Relic said, you’ll have to resort to some kind of view frustum culling.
there are a lot’s of ways of doing this but the main ideia is to divide your geometry into portions of space creating an hierarquie, this can be done with an BSP, quadtree or octree(depending on the geometry type), wich are the most common aproaches for the problem because they give you the possibility of using display lists and allow you to cull the geometry as you need resulting in a speedup of your program.