Minicurso

Python+MySQL: manipulação e disponibilização de dados

RESUMO

No contexto de inteligência orientada a dados - Data Driven, é muito comum que o uso estratégico dos dados só seja possível quando informações contidas em diferentes ferramentas (ou ambientes) estabelecem comunicação entre si. Em geral essa comunicação acontece seguindo protocolos adequados que atendam quem vai fornecer e quem vai receber a informação. E uma das formas mais adotadas para esse fim é a disponibilização de dados é por meio de uma interface de programação de aplicativos; ou, uma API. Nesse minicurso será abordada uma estratégia para disponibilização de dados presentes em um banco MySQL por meio de uma API construída à partir do uso de bibliotecas da linguagem de programação Python. A construção do modelo será contextualizada em um problema de leitura de dados elementar. E serão apresentados, também, alguns conceitos fundamentais da linguagem Python, das bibliotecas utilizadas e do banco de dados MySQL.

REQUISITOS

Noções de lógica de programação, bancos de dados e REST API's são bem vindas. Entretanto, não são exigidos conhecimentos avançados para o minicurso, uma vez que todas as execuções serão detalhadas à medida em que forem realizadas. É importante ressaltar que grande parte dos comandos são específicos das bibliotecas, podendo, muitas vezes, serem novos mesmo para programadores mais experientes.

O projeto será totalmente desenvolvido em sistema operacional Linux (Ubuntu 18.04) e questões relativas à instalação das ferramentas adotadas não serão abordadas. Por essa razão, pode-se verificar tutoriais de instalação em ambientes Linux e Windows.

EMENTA

  • Apresentação do minicurso

  • Contextualização do problema

  • Introdução ao banco de dados MySQL

  • Populando o banco de dados e testando queries

  • Introdução ao Python

  • O Sublime Text3

  • A biblioteca mysql.connector

  • Conectando-se ao MySQL pelo Python3

  • Restfull API's

  • Introdução à biblioteca flask

  • Verbos HTTP e códigos de status

  • Construção da aplicação

  • Testando os dados disponibilizados

  • Discussão final

SOBRE O AUTOR

Alesson é doutorando em Ciências Computacionais pelo CComp-UERJ com ênfase em Redes Neurais, Deep Learning e Ciência de Dados. Foi analista de software na Indeva by VTEX e tem experiência em desenvolvimento web, gestão de bancos de dados, Restfull API's e modelagem computacional.