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.