Cuál es la práctica más eficiente / mejor para Upsert 5000+ filas sin combinar en SQL Server?

Tengo una aplicación web que recibe alrededor de 50 visitas por segundo, y en cada visita estoy colocando alrededor de 10 registros en una base de datos central de SQL Server. Aproximadamente una vez cada 3 segundos estoy agregando más de 5000 filas para una única conexión entrante.

Actualmente tengo un procedimiento almacenado que toma XML como parámetro. Hago un INSERT en mi tabla principal desde mi XML donde un campo de fila no coincide, luego actualizo toda la tabla con valores de mi XML.

La operación no es lenta de ninguna manera, pero realmente me gustaría saber la mejor manera de hacerlo. Estoy ejecutando SQL Server 2005, así que no tengo la operación MERGE.

Respuestas a la pregunta(1)

Su respuesta a la pregunta