CursosEmpresasBlogLiveConfPrecios

Estructurar sentence para carga de datos de S3 a Redshift

Clase 16 de 25 • Curso de Fundamentos de ETL con Python y Pentaho

Contenido del curso

Introducción a ETL

  • 1
    ¿Qué es un ETL en ingeniería de datos?

    ¿Qué es un ETL en ingeniería de datos?

    06:52 min
  • 2
    Conceptos base de ETL

    Conceptos base de ETL

    07:20 min
  • 3
    Consideraciones de ETL

    Consideraciones de ETL

    04:20 min
  • 4
    Servicios y herramientas para ETL

    Servicios y herramientas para ETL

    05:25 min

Extracción de datos

  • 5
    Sources

    Sources

    03:29 min
  • 6
    Configuración de base de datos source y entorno para ETL en Python

    Configuración de base de datos source y entorno para ETL en Python

    06:13 min
  • 7
    Extracción de datos con Python y Pandas

    Extracción de datos con Python y Pandas

    09:11 min

Transformación de datos

  • 8
    Transformación

    Transformación

    02:50 min
  • 9
    Transformación de datos con Python y Pandas

    Transformación de datos con Python y Pandas

    11:40 min
  • 10
    Transformación de datos de países

    Transformación de datos de países

    07:53 min
  • 11
    Transformación de datos de transacciones

    Transformación de datos de transacciones

    12:07 min

Carga de datos

  • 12
    Carga

    Carga

    03:31 min
  • 13
    Configuración de clúster en AWS Redshift

    Configuración de clúster en AWS Redshift

    04:59 min
  • 14
    Crear tablas en AWS Redshift

    Crear tablas en AWS Redshift

    02:45 min
  • 15
    Carga de datos con Python

    Carga de datos con Python

    14:03 min
  • 16
    Estructurar sentence para carga de datos de S3 a Redshift

    Estructurar sentence para carga de datos de S3 a Redshift

    Viendo ahora
  • 17
    Carga de datos: subida de archivos a AWS Redshift

    Carga de datos: subida de archivos a AWS Redshift

    08:07 min

ETL con Pentaho

  • 18
    Instalación de Pentaho

    Instalación de Pentaho

    02:39 min
  • 19
    Extracción de datos con Pentaho

    Extracción de datos con Pentaho

    06:47 min
  • 20
    Transformación de datos con Pentaho

    Transformación de datos con Pentaho

    13:28 min
  • 21
    Transformación de datos con Pentaho: parte 2

    Transformación de datos con Pentaho: parte 2

    10:44 min
  • 22
    Transformación de datos con Pentaho: parte 3

    Transformación de datos con Pentaho: parte 3

    10:35 min
  • 23
    Carga de datos con Pentaho

    Carga de datos con Pentaho

    03:54 min

Conclusión

  • 24
    Siguientes pasos

    Siguientes pasos

    03:21 min
  • 25
    Comparte tu proyecto de ETL y obtén tu certificado

    Comparte tu proyecto de ETL y obtén tu certificado

Tomar examen

Escuelas

  • Desarrollo Web
    • Fundamentos del Desarrollo Web Profesional
    • Diseño y Desarrollo Frontend
    • Desarrollo Frontend con JavaScript
    • Desarrollo Frontend con Vue.js
    • Desarrollo Frontend con Angular
    • Desarrollo Frontend con React.js
    • Desarrollo Backend con Node.js
    • Desarrollo Backend con Python
    • Desarrollo Backend con Java
    • Desarrollo Backend con PHP
    • Desarrollo Backend con Ruby
    • Bases de Datos para Web
    • Seguridad Web & API
    • Testing Automatizado y QA para Web
    • Arquitecturas Web Modernas y Escalabilidad
    • DevOps y Cloud para Desarrolladores Web
  • English Academy
    • Inglés Básico A1
    • Inglés Básico A2
    • Inglés Intermedio B1
    • Inglés Intermedio Alto B2
    • Inglés Avanzado C1
    • Inglés para Propósitos Específicos
    • Inglés de Negocios
  • Marketing Digital
    • Fundamentos de Marketing Digital
    • Marketing de Contenidos y Redacción Persuasiva
    • SEO y Posicionamiento Web
    • Social Media Marketing y Community Management
    • Publicidad Digital y Paid Media
    • Analítica Digital y Optimización (CRO)
    • Estrategia de Marketing y Growth
    • Marketing de Marca y Comunicación Estratégica
    • Marketing para E-commerce
    • Marketing B2B
    • Inteligencia Artificial Aplicada al Marketing
    • Automatización del Marketing
    • Marca Personal y Marketing Freelance
    • Ventas y Experiencia del Cliente
    • Creación de Contenido para Redes Sociales
  • Inteligencia Artificial y Data Science
    • Fundamentos de Data Science y AI
    • Análisis y Visualización de Datos
    • Machine Learning y Deep Learning
    • Data Engineer
    • Inteligencia Artificial para la Productividad
    • Desarrollo de Aplicaciones con IA
    • AI Software Engineer
  • Ciberseguridad
    • Fundamentos de Ciberseguridad
    • Hacking Ético y Pentesting (Red Team)
    • Análisis de Malware e Ingeniería Forense
    • Seguridad Defensiva y Cumplimiento (Blue Team)
    • Ciberseguridad Estratégica
  • Liderazgo y Habilidades Blandas
    • Fundamentos de Habilidades Profesionales
    • Liderazgo y Gestión de Equipos
    • Comunicación Avanzada y Oratoria
    • Negociación y Resolución de Conflictos
    • Inteligencia Emocional y Autogestión
    • Productividad y Herramientas Digitales
    • Gestión de Proyectos y Metodologías Ágiles
    • Desarrollo de Carrera y Marca Personal
    • Diversidad, Inclusión y Entorno Laboral Saludable
    • Filosofía y Estrategia para Líderes
  • Diseño de Producto y UX
    • Fundamentos de Diseño UX/UI
    • Investigación de Usuarios (UX Research)
    • Arquitectura de Información y Usabilidad
    • Diseño de Interfaces y Prototipado (UI Design)
    • Sistemas de Diseño y DesignOps
    • Redacción UX (UX Writing)
    • Creatividad e Innovación en Diseño
    • Diseño Accesible e Inclusivo
    • Diseño Asistido por Inteligencia Artificial
    • Gestión de Producto y Liderazgo en Diseño
    • Diseño de Interacciones Emergentes (VUI/VR)
    • Desarrollo Web para Diseñadores
    • Diseño y Prototipado No-Code
  • Contenido Audiovisual
    • Fundamentos de Producción Audiovisual
    • Producción de Video para Plataformas Digitales
    • Producción de Audio y Podcast
    • Fotografía y Diseño Gráfico para Contenido Digital
    • Motion Graphics y Animación
    • Contenido Interactivo y Realidad Aumentada
    • Estrategia, Marketing y Monetización de Contenidos
  • Desarrollo Móvil
    • Fundamentos de Desarrollo Móvil
    • Desarrollo Nativo Android con Kotlin
    • Desarrollo Nativo iOS con Swift
    • Desarrollo Multiplataforma con React Native
    • Desarrollo Multiplataforma con Flutter
    • Arquitectura y Patrones de Diseño Móvil
    • Integración de APIs y Persistencia Móvil
    • Testing y Despliegue en Móvil
    • Diseño UX/UI para Móviles
  • Diseño Gráfico y Arte Digital
    • Fundamentos del Diseño Gráfico y Digital
    • Diseño de Identidad Visual y Branding
    • Ilustración Digital y Arte Conceptual
    • Diseño Editorial y de Empaques
    • Motion Graphics y Animación 3D
    • Diseño Gráfico Asistido por Inteligencia Artificial
    • Creatividad e Innovación en Diseño
  • Programación
    • Fundamentos de Programación e Ingeniería de Software
    • Herramientas de IA para el trabajo
    • Matemáticas para Programación
    • Programación con Python
    • Programación con JavaScript
    • Programación con TypeScript
    • Programación Orientada a Objetos con Java
    • Desarrollo con C# y .NET
    • Programación con PHP
    • Programación con Go y Rust
    • Programación Móvil con Swift y Kotlin
    • Programación con C y C++
    • Administración Básica de Servidores Linux
  • Negocios
    • Fundamentos de Negocios y Emprendimiento
    • Estrategia y Crecimiento Empresarial
    • Finanzas Personales y Corporativas
    • Inversión en Mercados Financieros
    • Ventas, CRM y Experiencia del Cliente
    • Operaciones, Logística y E-commerce
    • Gestión de Proyectos y Metodologías Ágiles
    • Aspectos Legales y Cumplimiento
    • Habilidades Directivas y Crecimiento Profesional
    • Diversidad e Inclusión en el Entorno Laboral
    • Herramientas Digitales y Automatización para Negocios
  • Blockchain y Web3
    • Fundamentos de Blockchain y Web3
    • Desarrollo de Smart Contracts y dApps
    • Finanzas Descentralizadas (DeFi)
    • NFTs y Economía de Creadores
    • Seguridad Blockchain
    • Ecosistemas Blockchain Alternativos (No-EVM)
    • Producto, Marketing y Legal en Web3
  • Recursos Humanos
    • Fundamentos y Cultura Organizacional en RRHH
    • Atracción y Selección de Talento
    • Cultura y Employee Experience
    • Gestión y Desarrollo de Talento
    • Desarrollo y Evaluación de Liderazgo
    • Diversidad, Equidad e Inclusión
    • AI y Automatización en Recursos Humanos
    • Tecnología y Automatización en RRHH
  • Finanzas e Inversiones
    • Fundamentos de Finanzas Personales y Corporativas
    • Análisis y Valoración Financiera
    • Inversión y Mercados de Capitales
    • Finanzas Descentralizadas (DeFi) y Criptoactivos
    • Finanzas y Estrategia para Startups
    • Inteligencia Artificial Aplicada a Finanzas
    • Domina Excel
    • Financial Analyst
    • Conseguir trabajo en Finanzas e Inversiones
  • Startups
    • Fundamentos y Validación de Ideas
    • Estrategia de Negocio y Product-Market Fit
    • Desarrollo de Producto y Operaciones Lean
    • Finanzas, Legal y Fundraising
    • Marketing, Ventas y Growth para Startups
    • Cultura, Talento y Liderazgo
    • Finanzas y Operaciones en Ecommerce
    • Startups Web3 y Blockchain
    • Startups con Impacto Social
    • Expansión y Ecosistema Startup
  • Cloud Computing y DevOps
    • Fundamentos de Cloud y DevOps
    • Administración de Servidores Linux
    • Contenerización y Orquestación
    • Infraestructura como Código (IaC) y CI/CD
    • Amazon Web Services
    • Microsoft Azure
    • Serverless y Observabilidad
    • Certificaciones Cloud (Preparación)
    • Plataforma Cloud GCP

Platzi y comunidad

  • Platzi Business
  • Live Classes
  • Lanzamientos
  • Executive Program
  • Trabaja con nosotros
  • Podcast

Recursos

  • Manual de Marca

Soporte

  • Preguntas Frecuentes
  • Contáctanos

Legal

  • Términos y Condiciones
  • Privacidad
  • Tyc promociones
Reconocimientos
Reconocimientos
Logo reconocimientoTop 40 Mejores EdTech del mundo · 2024
Logo reconocimientoPrimera Startup Latina admitida en YC · 2014
Logo reconocimientoPrimera Startup EdTech · 2018
Logo reconocimientoCEO Ganador Medalla por la Educación T4 & HP · 2024
Logo reconocimientoCEO Mejor Emprendedor del año · 2024
De LATAM conpara el mundo
YoutubeInstagramLinkedInTikTokFacebookX (Twitter)Threads

      ¡Hola! En la clase anterior definimos esta función de carga de archivos en nuestra notebook de Python:

      sentence.png

      💡Dentro de esta función esta la variable sentence, que es una secuencia de texto con una instrucción para copiar los registros de los archivos CSV, que están dentro del bucket de S3, hacia la base de datos dev que está en un schema.

      Esta sentencia debe configurarse específicamente para el schema de tu base de datos y la dirección de tu bucket en S3.

      Revisitemos tres componentes principales dentro de la sentencia:

      sentence_partes.png
      • Schema en DB en Redshift: es el schema de nuestra base de datos donde están las tablas a donde se copiarán los registros de los archivos CSV. Este debe ser remplazado por ese schema, que en tu caso debería ser public en lugar de etl_test

      • Nombre de bucket de S3: dirección del bucket donde se guardan temporalmente los archivos CSV. En tu caso debe remplazarse 's3://platzi-etl/course_etl_target/{}' por el nombre único de tu bucket. Si tu bucket se llamara nombre-unico-bucket-curso-platzi en la sentencia debería estar 's3://nombre-unico-bucket-curso-platzi{}'

      • Región elegida de AWS: es esa región donde creaste el clúster de Redshift. En caso de que no lo hayas hecho en la región us-west-2 escribe el código de la región que elegiste.

      Tu sentence debería verse de forma similar a la siguiente, pero recuerda que no será idéntica porque el nombre de tu bucket es único en el mundo:

      sentence = '''copy public.{} from 's3://nombre-unico-bucket-curso-platzi/{}' credentials 'aws_access_key_id={};aws_secret_access_key={}' csv delimiter '|' region 'us-west-2' ignoreheader 1'''.format(table_name, file_name, os.environ.get('AWS_ACCESS_KEY_ID'), os.environ.get('AWS_SECRET_ACCESS_KEY'))

      ¡Listo! Aplica estos ajustes a tu sentence y úsalos durante la próxima clase donde usaremos la función load_file() para cargar los registros en Redshift. ⚙️👏🏽

      Comentarios

        Gabriel Maxemin Ramirez

        Gabriel Maxemin Ramirez

        student•
        hace un año

        esto es justo lo que tenia duda y dure mucho tiempo configurando y viendo que era que seria bueno que el profesor lo dijera...