Este artículo presentará un problema práctico que los administradores suelen enfrentar durante el proceso de inicialización de la base de datos: cómo importar grandes volúmenes de datos al sistema de la base de datos. Durante el proceso de inicialización de la base de datos, un problema práctico que los administradores deben enfrentar es cómo importar grandes volúmenes de datos al sistema de la base de datos. Algunas herramientas de importación y exportación de datos de gran capacidad se proporcionan en la base de datos de SQL Server para que las utilicen los administradores de bases de datos. Por ejemplo, los administradores pueden utilizar la herramienta de utilidad bcp para exportar datos en grandes volúmenes e importar datos en grandes volúmenes y generar archivos formateados. Por ejemplo, las declaraciones de inserción masiva se pueden utilizar para importar datos de gran capacidad directamente desde archivos de datos a tablas de bases de datos o vistas sin particiones, etc.
Aunque estas utilidades se proporcionan en la base de datos de SQL Server. Sin embargo, los administradores aún deben tener cuidado con este trabajo en el trabajo real. Específicamente, durante el proceso de importación y exportación de datos de gran capacidad, es necesario prestar atención a los siguientes aspectos.
1. Intente utilizar las herramientas proporcionadas por el sistema para importar y exportar datos de gran capacidad.
Las diversas herramientas prácticas mencionadas por el autor anteriormente tienen una característica común: realizarán ciertas optimizaciones en datos de gran capacidad durante el proceso de importación. Por ejemplo, estandarizará el formato de algunos datos, ahorrará tiempo en la importación y exportación, etc. Sin embargo, cuando se utilizan estas herramientas, existe una diferencia con otras herramientas ordinarias de importación y exportación de datos: las operaciones de importación de gran capacidad no admiten la importación de datos en archivos delimitados por comas, a los que a menudo se hace referencia como archivos de texto. Aunque el administrador también puede utilizar otras herramientas para importar datos de gran capacidad en formato de archivo en este momento, generalmente no lo recomiendo. Porque otras herramientas no admiten la función de optimización durante el proceso de importación. Por esta razón, el autor recomienda utilizar otras herramientas, como ACCESS y otras herramientas intermedias, para convertir primero los datos del archivo de texto en un formato de tabla normal y luego utilizar las herramientas anteriores para importarlos al sistema. Aunque esto aumentará la carga de trabajo, puede garantizar la calidad de los datos de gran capacidad. Por esta razón, en mi trabajo real, si los usuarios encuentran este tipo de problema, les recomiendo encarecidamente que utilicen las herramientas proporcionadas por el sistema para importar y exportar datos de gran capacidad.
Además, utilizar archivos formateados para mejorar la estandarización de datos de gran capacidad también es una buena opción. Varias de las herramientas de importación y exportación de gran capacidad mencionadas anteriormente admiten el uso de archivos de formato especializado para almacenar la información de formato de cada campo en el archivo de datos original. El archivo de formato también puede contener información sobre la tabla de base de datos correspondiente. Los archivos de formato se pueden utilizar para proporcionar toda la información de formato necesaria para exportar e importar datos de forma masiva a una instancia de base de datos. En términos sencillos, un archivo de formato proporciona una manera flexible de interpretar el formato de los datos en un archivo de datos durante la importación y de formatear los datos en un archivo de datos durante la exportación. Esta flexibilidad elimina la necesidad de escribir código especializado para interpretar los datos o reformatearlos para satisfacer las necesidades especiales de la base de datos o la aplicación externa. Si los archivos formateados se utilizan de manera flexible, los usuarios pueden exportar o importar directamente datos de gran capacidad en el formato requerido sin tener que realizar ajustes de formato adicionales posteriormente.
2. Seleccione el modo de operación de registro de base de datos apropiado
Como todo el mundo sabe, cualquier cambio realizado por los usuarios en la base de datos quedará registrado en los registros correspondientes. Importar y exportar grandes volúmenes de datos no es una excepción. Sin embargo, debido a que los datos de gran capacidad son relativamente grandes, ocuparán una función de registro de transacciones relativamente grande. Por esta razón, el autor recomienda que antes de que los usuarios importen datos de gran capacidad, es mejor elegir un modo de operación de registro de base de datos adecuado. El enfoque del autor es que si el usuario necesita importar datos de gran capacidad, es mejor elegir el modo de recuperación de registros de gran capacidad. Espere hasta que se complete el trabajo de importación y luego regrese al modo original.
Esto se debe principalmente a que en el modo de registro de gran capacidad, el soporte para el trabajo de importación de datos de gran capacidad es relativamente bueno. En comparación con otros modelos de recuperación registrados (como el modelo de recuperación completa), el modelo de recuperación registrado en masa solo registra mínimamente las operaciones en masa. Por esta razón, el modelo de recuperación de operaciones de registros de gran capacidad protege operaciones de gran volumen contra fallas de hardware, proporciona un mejor rendimiento y ocupa un espacio de registro mínimo. Por lo tanto, el uso de la recuperación de registros masivos ayuda a evitar que los registros de transacciones se queden sin espacio porque la recuperación de registros masivos no inserta líneas de registro. Este modo de operación de registro masivo es muy adecuado para bases de datos que utilizan el modelo de recuperación completa. El modelo de recuperación de registros masivos es útil cuando se realizan operaciones masivas en tablas sin índice.
Sin embargo, el modo de operación de registros de gran capacidad también presenta ciertos riesgos. Un modelo de recuperación como el registro masivo aumenta el riesgo de pérdida de datos para estas operaciones de copia masiva. Porque el modo operativo de registro masivo evitará que el sistema de base de datos capture los cambios realizados en cada transacción uno por uno. Si una copia de seguridad del registro contiene operaciones de registro masivas, no puede restaurar a un momento determinado en esa copia de seguridad del registro; solo puede restaurar la copia de seguridad completa; Además, en el modelo de recuperación de registros masivos, si la copia de seguridad del registro cubre alguna operación masiva, la copia de seguridad del registro contendrá los registros y las páginas de datos modificados por las operaciones masivas. Esto es fundamental para capturar los resultados de las operaciones de registro masivo. Las áreas de datos fusionadas pueden hacer que las copias de seguridad de registros sean muy grandes. Además, realizar copias de seguridad de los registros requiere acceso a archivos de datos que contienen grandes volúmenes de transacciones de registros. Si alguno de los archivos de la base de datos afectados es inaccesible, no se realizará una copia de seguridad del registro de transacciones y se perderán todas las operaciones confirmadas en este registro. Por lo tanto, el modo de copia de seguridad de registros de gran capacidad no es un modo de registro seguro.
3. Considere si primero necesita eliminar temporalmente el índice de la tabla
El índice es un archivo especial y su función en la base de datos es muy importante. En pocas palabras, si se compara la base de datos con un libro, entonces el índice es como el índice del libro. El índice contiene punteros de referencia a todos los registros de la tabla de datos. No hay duda de que los índices pueden mejorar el rendimiento de la base de datos. Pero la indexación no puede tener un efecto positivo en todas las ocasiones. En algunos casos especiales, reducirá el rendimiento de algunas operaciones, como la importación de datos de gran capacidad.
Un índice puede acelerar las operaciones de recuperación de datos, pero puede hacer que las operaciones de modificación de datos sean más lentas. Porque cada vez que se modifica o inserta un registro de datos, se debe actualizar el índice. En otras palabras, si se insertan un millón de registros, el índice debe actualizarse un millón de veces. Se puede ver que cuando se importan datos de gran capacidad, el índice consumirá muchos recursos de la base de datos, lo que reducirá el rendimiento de la base de datos. Si hay índices en la tabla de destino, no solo afectará la velocidad de importación de grandes volúmenes de datos a la base de datos, sino que también reducirá el rendimiento del acceso normal de otros usuarios a la base de datos.
Por esta razón, la sugerencia del autor es que si no hay muchos datos en la tabla a importar, es mejor eliminar el índice primero para mejorar el rendimiento de la importación de datos de gran capacidad. Vuelva a habilitar la indexación después de la importación. Sin embargo, si ya hay muchos datos en la tabla que deben importarse y los datos que deben importarse pueden ser similares o menores que los datos existentes, entonces no es necesario eliminar el índice. Eliminar el índice en este momento tendrá el efecto contrario. Porque el tiempo que le toma al sistema de base de datos reconstruir los índices puede ser mayor que el tiempo ahorrado durante la operación de importación masiva. En este momento, el administrador perderá más que lo ganado al eliminar el índice de la tabla de destino.
4. Realice una copia de seguridad de la base de datos inmediatamente después de la importación de datos.
Al igual que al establecer objetos de base de datos, después de importar datos de gran capacidad al sistema de base de datos, los administradores deben realizar una copia de seguridad de la base de datos existente de manera oportuna. Debido a la ayuda oportuna de las herramientas de importación de gran capacidad del sistema, este trabajo de importación de datos sigue siendo muy tedioso y requiere mucho tiempo. Por esta razón, después de importar con éxito los datos de gran capacidad al sistema de base de datos, el administrador debe realizar una copia de seguridad de la base de datos de manera oportuna. Lo que el autor quiere recordarles a todos aquí es que los métodos de copia de seguridad suelen ser diferentes en diferentes modos de registro de operaciones.
Después de importar datos de gran capacidad, los administradores deben realizar una copia de seguridad de la base de datos. La sugerencia del autor es que si el administrador adopta un modelo de recuperación de registros simple en ese momento, el administrador debe realizar una copia de seguridad completa o una copia de seguridad diferencial inmediatamente después de que se complete la operación de importación masiva (si el tiempo lo permite, es mejor realizar una copia de seguridad completa). . Y si el administrador de la base de datos adopta el modelo de recuperación de registros de gran capacidad o el modelo de recuperación completa en ese momento, si no hay mucho tiempo o le preocupa que la copia de seguridad completa afecte el acceso del usuario en ese momento, entonces solo realice una copia de seguridad del registro. es suficiente. Si el servidor de la base de datos no se ha convertido en un servidor de producción (es decir, todavía no hay usuarios que lo utilicen), es más seguro realizar una copia de seguridad completa de la base de datos.
5. Errores comunes
Probablemente existan dos errores más comunes durante la importación de datos de gran capacidad.
Primero, el formato del archivo proporcionado es incorrecto. Como se mencionó anteriormente, normalmente la herramienta de importación masiva proporcionada por la base de datos no admite archivos de texto. Los administradores deben realizar conversiones previas para este fin. En segundo lugar, tenga en cuenta que los caracteres ocultos pueden causar problemas. Muchos software y editores de texto muestran caracteres ocultos. Estos caracteres ocultos normalmente se encuentran al final del archivo de datos. Durante las operaciones de importación masiva, los caracteres ocultos en los archivos de datos pueden causar problemas impredecibles, como errores inesperados de caracteres nulos, etc. Este error es fácil de evitar. Siempre que el administrador de la base de datos busque y elimine todos los caracteres ocultos antes de importar los datos. De hecho, este problema se encontrará no solo durante la importación de datos de gran capacidad, sino también durante la importación de pequeñas cantidades de datos.