2009-11-02 13 views
6

NOTA: No estoy buscando la respuesta en MSDN.¿Cómo se determina el tamaño de lote de ADO.NET recomendado en el mundo real?

¿Cómo se ha empeñado en determinar el valor de tamaño de lote de ADO.NET adecuado para su base de datos/aplicación determinada? ¿Qué factores llevaron a su decisión y qué experiencia puede compartir?

Usando Fluido NHibernate, actualmente estoy usando algo como:

var sessionFactory = Fluently.Configure().Database(
      MsSqlConfiguration.MsSql2005.ConnectionString(c => c.FromConnectionStringWithKey("connString")) 
      .AdoNetBatchSize(50) 
      ) 
      .Mappings(m => m.FluentMappings.AddFromAssemblyOf<Foo>()).BuildSessionFactory(); 

Desde mi entender esto va a reunir hasta 50 declaraciones en un momento antes de enviarlos a través del objeto de conexión al servidor para su procesamiento.

Respuesta

0

No necesita establecer este valor. Deje que se ejecute con el valor predeterminado. Realmente solo importa si sus consultas están devolviendo cantidades masivas de datos, p. BLOBS, en cuyo caso elegiría un tamaño de lote bajo ~ 10-20. Para usos normales, simplemente omítalo. Nunca tuve que configurarlo y todas mis aplicaciones se ejecutan súper rápido.

+0

lol super-rápido? :) ¿qué tan rápido? – IamStalker

Cuestiones relacionadas