Consejos y trucos de SQL para el análisis de datos

ADurante mucho tiempo con R y Python, SQL es uno de los pilares de la programación de análisis de datos. Para obtener los datos más significativos, los analistas deben aprender las formas más eficientes de usar SQL.

Todo, desde el rendimiento de las consultas hasta la agrupación de datos, se puede mejorar siguiendo unos sencillos consejos.

1. Utilice nombres descriptivos

Utilice nombres simples y fáciles de entender para columnas y tablas.

Si una tabla se llama “usuarios”, no etiquete sus columnas como “nombre_usuario”, “cumpleaños_usuario”, etc. Etiquetarlos como “nombre” y “cumpleaños” es más descriptivo.


Recomendado: ¿Qué es el Big data?.


Si se encuentra combinando datos para recuperar columnas con regularidad, considere agregar una nueva columna al esquema con estos datos. Sus consultas serán simples y no necesitarán ninguna manipulación de datos.

2. Formatee su código

El formato es una característica visual de su código y no afecta los resultados. Sin embargo, hace que su código sea más fácil de depurar y analizar en caso de que encuentre errores. Eche un vistazo a las siguientes líneas de código y pregúntese qué instancia es más fácil de leer:

SELECCIONAR * DE países DONDE nombre = “PH”;


Recomendado: Todos los términos del Big data.


versus

SELECCIONE

*

DE

países

DÓNDE

nombre = “PH”;

Todos tienen un estilo de formato preferido. Algunos pueden encontrar el segundo ejemplo sobre formateado. Cualquiera que sea su elección, asegúrese de ser coherente y de utilizar saltos de línea antes de las cláusulas principales como mínimo.

3. Utilice mayúsculas y minúsculas

Las cláusulas SQL no distinguen entre mayúsculas y minúsculas, pero la práctica generalmente aceptada es escribirlas en mayúsculas.

Cuando se combina con el formato adecuado, facilita la lectura de sus consultas. Las minúsculas se utilizan para tablas, columnas y valores de campo, excepto cuando los nombres de estos elementos incluyen letras mayúsculas.

4. Siga la orden de ejecución

El orden de ejecución de SQL se refiere a la forma en que se enumeran las cláusulas de programación. Los analistas a menudo se crean problemas al cambiar el orden ideal de ejecución. Al igual que hornear un pastel, su consulta debe seguir los pasos correctos para lograr el mejor resultado.

Aquí está el orden correcto:

  1. de: defina de qué tablas obtendrá los datos
  2. donde: aplique filtros a sus datos base
  3. agrupar por: agregue sus datos
  4. tener: filtrar los datos agregados
  5. seleccionar: muestra los datos finales
  6. ordenar por: ordena los datos para una fácil visualización
  7. límite: restringe el número de resultados

Siga el orden de ejecución y sus consultas se ejecutarán sin problemas sin necesidad de muchos trucos para mejorar el rendimiento.

5. Evite la normalización excesiva

Evite organizar su base de datos en tablas que contengan muchas tablas de una o dos columnas. Por ejemplo, los datos como fechas y códigos postales no necesitan sus propias tablas con claves externas.

Reducirá la cantidad de SQL duplicado y sobrecargará la base de datos en menor grado.

6. Vaya alto, no ancho, con mesas

No desea normalizar en exceso sus datos, pero tampoco debería crear tablas grandes y anchas.

Si sus tablas tienen más de una docena de columnas y contienen datos secuenciales, como “pregunta1 ′”, “pregunta2”, etc., sus consultas sobrecargarán enormemente la base de datos. Almacene estos datos en una tabla diferente. Esto facilita la recuperación de datos y la ejecución de análisis en ellos.

Las columnas JSON son excelentes para la producción, pero no son las mejores para los entornos de análisis. Transforme estos datos en tipos más simples y su análisis será mucho más fluido.

7. Sea coherente con las claves

Hay muchas formas de nombrar claves primarias y externas. Lo más fácil es etiquetar la clave principal con un nombre (por ejemplo, “id”) y etiquetar la clave externa como “tablename.id”. Un método popular para nombrar claves primarias y externas es etiquetar las claves externas con el mismo nombre que la clave primaria. Si sigue este patrón, deberá evitar las abreviaturas.

Sea coherente con sus patrones de nomenclatura y nombre claramente las columnas que son claves externas a otras tablas. Por ejemplo, si la columna “owner_id” es la clave externa de una tabla llamada “usuarios”, asígnele el nombre “user_owner_id” o algo que haga obvio que es una clave externa para una tabla designada.

8. Master “Agrupar por”

La cláusula “agrupar por” es una de las más utilizadas en SQL. Puede usarlo para agregar datos, y hay muchas formas de hacer que funcione de manera poderosa para usted.

Por ejemplo, si se encuentra escribiendo cláusulas extensas de “agrupar por”, considere agrupar los datos por el número de columna en lugar del nombre. Esta práctica se llama notación ordinal y su uso es debatido ya que reduce la legibilidad para algunos usuarios. Sin embargo, facilita la agregación de grandes conjuntos de datos.

La notación ordinal también es útil si elige alias que coincidan con los nombres de las columnas. Puede usar la notación ordinal para el trabajo de desarrollo y reservar usando nombres de columna para la producción.

9. Garantice la coherencia de los datos

Asegúrese de que sus datos tengan una fuente de verdad. Etiquete las vistas y los resúmenes en consecuencia para que quede claro que los datos de origen existen en otro lugar.

Descarte columnas y tablas heredadas para evitar confusiones durante las verificaciones de mantenimiento de datos.

10. Almacene las fechas y horas correctamente

Algunos equipos almacenan cadenas de Unix como fechas. En su lugar, conviértalos a fechas y horas. No almacene días, meses y años en columnas diferentes. Las funciones de fecha de SQL son lo suficientemente difíciles de codificar, así que no se lo ponga aún más difícil al tener que concatenar estos datos.

Almacene todo en la zona horaria UTC y evitará problemas de análisis de series temporales.

Conclusión

Estos son solo algunos de los muchos consejos que puede aplicar para aprovechar al máximo su almacén de datos y sus consultas. SQL no es una herramienta perfecta para el análisis de datos, pero de todos modos es poderosa.

Asegúrese de que sus esquemas sigan estas mejores prácticas y cree su infraestructura de tal manera que respalde sus esfuerzos de análisis.

Puede consultar la guía de estilo SQL para obtener más sugerencias y aclaraciones útiles.