sql >> Base de Datos >  >> RDS >> Sqlserver

¿De qué depende la consulta de la base de datos y la velocidad de inserción?

Para tener una comparación aproximada:el registro de referencia TPC-C para SQL Server está en alrededor de 1,2 millones de transacciones por minuto, y ha sido así durante los últimos 4 años más o menos (limitado por el límite de 64 CPU OS). Eso es algo en el balpark de ~16k transacciones por segundo . Esto se encuentra en máquinas de muy alta gama, 64 CPU, mucha RAM, clientes afines por nodo NUMA y un sistema de E/S despojado corto de servidor (solo se usa aproximadamente el 1-2% de cada eje). Tenga en cuenta que son transacciones TPC-C, por lo que consisten en varias operaciones (creo que son 4-5 lecturas y 1-2 escrituras cada una en promedio).

Ahora debe reducir este hardware de primera línea a su implementación real y obtendrá el estadio de béisbol donde establecer sus expectativas para el procesamiento de transacciones OLTP general. .

Para obtener datos, cargue el récord mundial actual. 1TB en 30 minutos (si sigue vigente...). Varias decenas de miles de inserciones por segundo es bastante ambicioso, pero alcanzable, cuando se hace correctamente en hardware serio. El artículo en el enlace contiene consejos y trucos para el alto rendimiento de ETL (p. ej., use múltiples flujos de carga y afinícelos con los nodos NUMA).

Para su situación le aconsejaría ante todo medir para que descubra los cuellos de botella y luego pregunte específico preguntas sobre cómo resolver cuellos de botella específicos. Un buen punto de partida es Documento técnico sobre esperas y colas .