Yo no lo he probado con 30,000 registros pero tal vez sirva, hay que probarlo
En el Evento OnKeyPress de un TEdit
//supongamos que los ordenas por el campo
nombre
Código:
Tabla1.Locate('Nombre',Edit1.Text,[IoPartialKey]);
Eso te va llevando cada vez que oprimes una tecla al primero que mas se le paresca