Linha 103: Linha 103:
* 01) Qual a diferença entre Dado, Informação, Conhecimento e Sabedoria?
* 01) Qual a diferença entre Dado, Informação, Conhecimento e Sabedoria?
** Pode-se entender como um dado, uma partícula de um todo, fragmentos que podem ser identificados individualmente.  
** Pode-se entender como um dado, uma partícula de um todo, fragmentos que podem ser identificados individualmente.  
Informação é a união de vários dados, a coleta de tudo que define um determinado assunto, a experiência passada de um para o outro, características sobre pessoas, objetos, lugares, e se tratando de TI,  pode ser dados pessoais, contas bancárias, histórico de uma empresa dentre outros.
Informação é a união de vários dados, a coleta de tudo que define um determinado assunto, a experiência passada de um para o outro, características sobre pessoas, objetos, lugares, e se tratando de TI,  pode ser dados pessoais, contas bancárias, histórico de uma empresa dentre outros. Conhecimento se baseia na experiência adquirida com o contato diário no ambiente de trabalho, é a maneira pela qual se manipula todas as informações, como aplica-las, e como de fato resolver problemas, e gerar novas soluções. Sabedoria é a capacidade de tomada de decisão, devido há um grande volume de conhecimento informações, experiências isso proporciona habilidades, agilidade, e segurança para que se tome determinadas atitudes que podem gerar vários resultados positivos e negativos.
 
Conhecimento se baseia na experiência adquirida com o contato diário no ambiente de trabalho, é a maneira pela qual se manipula todas as informações, como aplica-las, e como de fato resolver problemas, e gerar novas soluções.
 
Sabedoria é a capacidade de tomada de decisão, devido há um grande volume de conhecimento informações, experiências isso proporciona habilidades, agilidade, e segurança para que se tome determinadas atitudes que podem gerar vários resultados positivos e negativos.


<br>
<br>

Edição das 17h42min de 13 de maio de 2018

Descrevendo o DBA


  • O administrador de Banco de Dados – mais conhecido como DBA (Database Administrator) – é o profissional responsável por lidar com o armazenamento de dados da forma mais eficaz e segura possível, permitindo através da mineração de dados a extração de informações valiosas para a empresa a qual trabalha. Essa profissão é muito importante, pois tem uma posição de grande impacto na eficiência de um produto/serviço que lida com acesso a informação.
  • Antigamente os arquivos eram guardados em grandes armários dentro de pastas previamente organizadas com todos os tipos de documentos – alguns muito importantes – de uma empresa. Dependendo do porte dessa empresa, era reservada uma ou mais salas com vários armários cheios de grandes gavetas onde essas pastas de arquivos eram organizadas. Mas armazenar dados desta forma os deixavam vulneráveis a acidentes, perda do arquivo por desgaste do material (ilegibilidade), dificuldade na localização de algum arquivo, entre várias outras desvantagens. Com o avanço tecnológico, tornou-se possível digitalizar e armazenar os dados de forma estruturada que permitiria um fácil acesso ao dado armazenado, garantiria também a segurança de que esse dado não seria perdido – se tomada as precauções necessárias – e principalmente aumentaria a utilidade desses dados para a empresa.
  • Foi a partir da década de 60 que surgiu a preocupação sobre a forma como os dados de uma empresa estavam sendo guardados, dando início aos primeiros estudos sobre a armazenagem eficaz de dados. Esses estudos foram uns dos principais responsáveis pela evolução de muitos serviços que temos atualmente. Na década de 70 foi desenvolvido um modelo de banco de dados – modelo relacional criado por Edgar Frank Codd –, juntamente com a linguagem de consulta estruturada (SQL – Strutured Query Language em 1974) que permitiu o desencadear do desenvolvimento dos bancos de dados que conhecemos hoje. Um banco de dados é o conjunto de arquivos relacionados entre si e armazenados de forma estruturada, isso possibilita o fácil acesso de uma aplicação a dados previamente armazenados. O DBA é, geralmente, quem implementa, manipula e gerencia esse banco. É através da análise que o DBA faz sobre o banco de dados que são encontradas novas oportunidades de desenvolvimento não só do banco de dados, mas também da própria empresa.
  • Para se tornar um Administrador de Banco de Dados, o profissional precisa conhecer algumas ferramentas de manipulação de dados. Alguns cursos – geralmente voltados para a área da informação/computação como Sistemas de Informação, Ciência da Computação, Gestão da Informação, etc. – oferecem em sua grade a base necessária para que o profissional se torne um bom DBA, mas para que o profissional se torne um especialista no assunto ele precisa se aprofundar em SQL (Strutured Query Language), linguagem padrão adotada, e suas modificações para cada Sistema Gerenciador de Banco de Dados (SGBD).
  • Hoje existem muitas metodologias e ferramentas que possibilitam não só a armazenagem segura de dados, mas também permitem que qualquer dado seja útil para a empresa. Inicialmente, todo administrador de banco de dados precisa ter conhecimentos sobre Sistemas Gerenciadores de Banco de Dados (SGBDs) – ou Data Base Management System (DBMS) –, pois esses são os programas responsáveis pelo gerenciamento do banco de dados. Os SGBDs oferecem uma interface que permite a inclusão, “alteração” ou a consulta de dados, mas também restringe a manipulação do banco de dados apenas ao DBA responsável.
  • Sabe-se que o administrador de banco de dados administra o banco de dados – como o próprio nome já diz –, mas o que seria administrar um banco de dados? Quando uma empresa contrata um administrador de banco de dados, sua função já começa pela implementação da ferramenta que melhor atenderá a necessidade daquele negócio. Então o DBA é o responsável pela implementação, desde o SGBD à criação do formato do banco de dados. Sempre que houver a necessidade de moldar o banco de dados, o DBA quem acompanhará esse desenvolvimento. Se a empresa precisar acessar o banco de dados através de alguma outra ferramenta, seja para estratégia interna ou em função de um serviço para os clientes externos, é o DBA quem analisará a melhor forma de permitir o acesso, mantendo a segurança e a escalabilidade do banco de dados. Ainda nesse tópico de acesso ao banco de dados, a autorização de acesso e manipulação dos dados pelos funcionários da empresa em questão também é definido pelo DBA, ou seja, ele definirá quem pode acessar e, às vezes, manipular o banco de dados quando necessário.
  • Uma das funções mais importantes do DBA envolve a segurança do banco de dados e sua escalabilidade. O DBA deve criar rotinas de backup do banco de dados permitindo a sua restauração quando necessário, mantendo a segurança dos dados. Pode acontecer de um servidor onde o banco de dados se encontra instalado parar de funcionar, então o DBA precisa ter levado isso em consideração no momento da implementação e feito cópias do banco de dados em vários outros servidores para que as aplicações que funcionam em função desse banco não percam a sua funcionalidade caso um dos servidores venha a cair. Quando o banco de dados é acessado por muitas pessoas, sejam internamente em uma empresa ou externamente por clientes, pode acarretar numa sobrecarga de acesso e isso comprometer o tempo de resposta do banco de dados. Pensando nisso, o DBA deve criar estratégias para manter não só o tempo de resposta ao acesso ao banco de dados, mas em casos de bancos que recebem muitas informações a sua escalabilidade (possibilidade de crescer sem comprometer seu tempo de resposta).
  • Pensando em conseguir gerir todas essas tarefas, e algumas outras que surgem no dia a dia, há várias ferramentas que auxiliam o DBA a garantir a segurança e utilidade do banco de dados. Quando um profissional assume o cargo de DBA, geralmente ele é – ou se torna – especialista nessa ferramenta (SGBD) ou metodologia (modelo relacional ou não relacional) adotada pela empresa para administrar o banco de dados. Como o mercado de TI está sempre mudando, o ideal é que o DBA esteja sempre atualizado quanto as ferramentas mais utilizadas e, se possível, se especialize. Os sistemas de gerenciamento de banco de dados mais utilizados atualmente são: Oracle, Microsoft SQL Server, MySQL (também é da Oracle, porém é Open Source), entre outras. Há opções pagas – as empresas precisam adquirir licenças de utilização, e o DBA quem analisa a quantidade de licenças necessárias – e há opções gratuitas como o MySQL (utilização gratuita, porém a sua distribuição junto a aplicações pagas geralmente requerem o pagamento de algum valor e este fica discriminado nos termos de uso da ferramenta).
  • Foi citado que o banco de dados como conhecemos surgiu a partir do modelo relacional criado na década de 70, e brevemente foi citado que o DBA se torna especialista em alguma ferramenta de manipulação de banco de dados, seja essa ferramenta no modelo relacional (utiliza-se o SQL, exemplo: Oracle, SQL Server, MySQL, PostgreSQL etc.) ou modelo não-relacional (NoSQL – do inglês Not Only SQL –, exemplo: MongoD, Redis, Cassandra). Mas qual a melhor ferramenta? Qual o melhor modelo a ser utilizado? É responsabilidade do DBA analisar qual a melhor solução (ferramenta) a ser utilizada. Bancos de dados do tipo relacional geralmente são desenvolvidos para criar, alterar, excluir e consultar informações em padrões regulares, já do tipo não-relacional são para soluções baseadas em nuvem e dados não tabulados – obs: como estamos entrando cada vez mais em computação voltada para nuvem, quem deseja se tornar um DBA deve se atentar a esse tipo de banco de dados.
  • Uma empresa de pequeno porte costuma contratar um ou dois DBAs para administrar o banco de dados da empresa. Mas uma empresa de grande porte precisa de um número significativamente maior e, geralmente, cada DBA recebe uma função em específico para se dedicar, tornado todo o processo mais simples e harmonioso. Em alguns casos, um DBA pode tomar a posição como Full DBA, geralmente um especialista que “faz tudo”. DBA de sistema, ficando responsável por cuidar da administração do SGBD (instalação, configuração, manutenção). Arquiteto de banco de dados, responsável por projetar o modelo lógico do banco de dados. Analista de banco de dados, geralmente quem começa a trabalhar com o banco de dados toma essa posição enquanto está em processo de adaptação. Modelador de banco de dados, DBA responsável por criar as tabelas que receberá os dados. DBA em nível de aplicação, especialista em SQL que auxilia na implementação do SGBD e auxilia no ajuste de desempenho. DBA orientado a tarefas, fica responsável em tarefas importantes como backups, escalabilidade, ajustes, recuperação, segurança dos dados, entre outros. Analista de desempenho, responsável em analisar e apontar melhorias para o banco de dados. Conforme a tecnologia avança, novas segmentações podem surgir, por isso os DBAs devem sempre ficar atentos as mudanças das tecnologias de banco de dados existentes e as novas tecnologias que surgem.
  • Para se tornar um DBA o profissional precisa basicamente ter conhecimentos sobre SQL (em alguns casos PL/SQL, extensão da linguagem SQL e desejar trabalhar com banco de dados no modelo não-relacional, também precisa conhecer NoSQL). Ter conhecimentos em estrutura de banco de dados e análise de algoritmo. Entender de arquitetura de computadores e funcionamento de sistemas operacionais. Dominar as ferramentas que irá trabalhar como: Microsoft SQL Server, PostgreSQL, MySQL, Oracle database, etc. Algumas empresas também exigem certificação em algum SGBDs (exemplo: MCITP). Durante a carreira, ele pode ingressar na área como Analista de dados/Designer de banco de dados, DBA júnior, DBA MidLevel (Intermediário), DBA Sênior, Consultor em banco de dados, Gerente/Diretor da administração de banco de dados, professor de administração de banco de dados, entre outros.
  • Considerando que nos tempos atuais informação é poder, a responsabilidade de um DBA aumenta mais ainda. Como ele será responsável pelo SGBD, ele administrará o nível de acesso de cada funcionário e aplicação sobre o banco de dados. Tudo isso implicará no código de ética e segurança da informação da empresa, formalmente padronizadas na ISO 9001 (sugerimos a pesquisa). O DBA, mais do que qualquer outro funcionário, precisará seguir as normas de ética e segurança da informação da empresa uma vez que ele contém em mãos informações valiosas sobre a empresa (dados estratégicos, dados de clientes, etc.).
  • Assim como muitas outras profissões em TI, o administrador de banco de dados é uma das mais requisitadas atualmente devido a sua demanda e, claro, o salário. Geralmente quem opta por essa profissão tem uma ótima rotina lógica e organizacional – se não tem, acaba adquirindo com o tempo de experiência. Como toda profissão em TI, não basta apenas saber SQL, mas, como mencionado anteriormente, ter também conhecimentos em análise de algoritmos, lógica, estrutura de dados, obviamente SQL, entre outros pré-requisitos. Contudo, o que se aprende como DBA também pode ser utilizado em outras profissões e vice-versa. Portanto, é uma ótima escolha para quem deseja ingressar no mercado de trabalho na área de TI.


  • Abaixo há uma rápida pesquisa sobre a base salarial de um DBA em função ao nível de experiência, mas sem levar em consideração as suas formações/especializações que podem potencializar o salário:

1 – DBA Estagiário

• Empresa de Pequeno Porte: 2,3 mil

• Empresa de Médio Porte: 3 mil

• Empresa de Grande Porte: 4 mil


2 – DBA Júnior

• Empresa de Pequeno Porte: 2,9 mil

• Empresa de Médio Porte: 3,8 mil

• Empresa de Grande Porte: 4,9 mil


3 – DBA Pleno

• Empresa de Pequeno Porte: 3,7 mil

• Empresa de Médio Porte: 4,7 mil

• Empresa de Grande Porte: 6,2 mil


4 – DBA Sênior

• Empresa de Pequeno Porte: 4,6 mil

• Empresa de Médio Porte: 5,9 mil

• Empresa de Grande Porte: 7,7 mil


5 – DBA Especialista (Master)

• Empresa de Pequeno Porte: 5,7 mil

• Empresa de Médio Porte: 7,4 mil

• Empresa de Grande Porte: 9,6 mil


  • Fontes:

https://dicasdeprogramacao.com.br/a-historia-dos-bancos-de-dados/

https://www.infojobs.com.br/artigos/Administrador_de_Banco_de_Dados__2655.aspx

https://www.significados.com.br/iso-9001/

http://aprendaplsql.com/dba/quanto-ganha-um-dba/

https://pt.wikipedia.org/wiki/Administrador_de_banco_de_dados#Certifica%C3%A7%C3%A3o

http://www.impacta.com.br/blog/2017/08/07/conheca-alguns-diferentes-tipos-de-bancos-de-dados/

https://pt.wikipedia.org/wiki/SQL

https://pt.wikipedia.org/wiki/Sistema_de_gerenciamento_de_banco_de_dados#Exemplos_de_SGBDs

Upload da apresentação

Disponibilizar, aqui, a apresentação do profissional após sua palestra, presencial ou vídeo.


Dúvidas


  • 01) Qual a diferença entre Dado, Informação, Conhecimento e Sabedoria?
    • Pode-se entender como um dado, uma partícula de um todo, fragmentos que podem ser identificados individualmente.

Informação é a união de vários dados, a coleta de tudo que define um determinado assunto, a experiência passada de um para o outro, características sobre pessoas, objetos, lugares, e se tratando de TI, pode ser dados pessoais, contas bancárias, histórico de uma empresa dentre outros. Conhecimento se baseia na experiência adquirida com o contato diário no ambiente de trabalho, é a maneira pela qual se manipula todas as informações, como aplica-las, e como de fato resolver problemas, e gerar novas soluções. Sabedoria é a capacidade de tomada de decisão, devido há um grande volume de conhecimento informações, experiências isso proporciona habilidades, agilidade, e segurança para que se tome determinadas atitudes que podem gerar vários resultados positivos e negativos.


  • 02) Cite duas desvantagens no uso de Banco de Dados.
    • O uso do sistema de gestão de dados tem como desvantagens o alto custo na infraestrutura de softwares e hardwares, outro problema pode ser a mau uso dos sistemas de forma a causar danos podem afetar os outros programas vinculados ao banco de dados.


  • 03) Qual a diferença entre DBA e DA?
    • Administração de base de dados, visa manter atualizada todas as implementações físicas e lógicas, garantindo um bom funcionamento do sistema de forma tal a cumprir os objetivos da corporação. Utiliza-se de plataformas, hardwares softwares com a capacidade adequada para os diversos campos do trabalho. Administração de dados está voltada para a o cumprimento das normas, com a utilização das plataformas e da base de dados para que tudo ocorra de forma harmoniosa, ela se preocupa com a gestão de todo o sistema de informação, dando suporte na área de negócios levando seu objetivo principal na gestão de dados.


  • 04) O que é SQL Injection? Dê um exemplo nocivo desta tecnologia.
    • SQL Injection, é uma tentativa de invasão, de obtenção de informações em uma base de dados. Com uma invasão bem-sucedida é possível se perder dados importantíssimos, podem ser apagados ou copiados alguns dados do banco, deletar todo o trabalho construído, pode ocorrer a perda de senhas cadastradas.


  • 05) Pensando em Estruturas de Dados, como é relação entre índices e árvores?
    • Sobre estrutura de dados existe uma relação entre índices e arvores que os une, tornando o acesso às informações mais precisas e rápidas. Os índices, possibilitam uma navegação mais rápida na procura de dados indexados, pois ele se comporta como arquivo ou tabela, através de ponteiros que indicam as posições dos arquivos. A arvore armazena os dados de forma hierárquica para que ao acessar seus ramos, seja possível chegar ao objetivo final assim utilizando os índices para acelerar o processo de procura. Nas árvores os dados estão dispostos na parte superior ou inferior de todo o sistema, facilitando o acesso a cada parte específica.


  • 06) Que tecnologias existem além do modelo relacional para BD?
    • Além do modelo relacional, existe o Banco de Dados no modelo não relacional proposto como solução para situações em que o modelo relacional não atende de forma satisfatória. Serve como ambiente para dados mistos – como imagens, mapas e tabela – que não seriam facilmente tabulados em linhas e colunas no Banco de Dados no modelo relacional. Sendo assim, os bancos do tipo não relacional ficam conhecidos como NoSQL (Not Only SQL), dando suporte a grandes demandas e Cloud Computing. Exemplos de banco de dados NoSQL: MongoD, Redis e Cassandra.


  • 07) O que são regras de negócio? Onde elas interferem no desenvolvimento de uma aplicação. Dê exemplos.
    • Regras de negócio são as formas de fazer o negócio acontecer baseadas nas políticas internas do grupo, no processo definido para executar o serviço e/ou as regras de conduta da companhia. Uma regra de negócio determinará como será o comportamento do sistema/serviço construído pela empresa, e visando seu impacto ela é definida durante a criação do modelo do projeto. Definindo a regra de negócio, os desenvolvedores terão os parâmetros de como fazer a solução, sempre visando o comportamento do sistema para com cada requisito. Exemplos clássicos de regras de negócio são as restrições, validações, condições e exceções do processo, parametrizando o comportamento que determinada solução/serviço ou até se tornando uma funcionalidade do mesmo. “O software deverá interromper a execução quando não for possível acessar o banco de dados” é um bom exemplo de regra de negócio, que dita o comportamento da ferramenta em determinada situação.


  • 08) O que é procedure? Descreva um exemplo simples de procedure.
    • É uma biblioteca de comandos em SQL (mais especificamente T-SQL, uma sub-rotina do SQL) capaz de armazenar tarefas repetitivas e aceita parâmetros de entrada para que a tarefa seja efetuada de acordo com a necessidade individual. Uma procedure é comumente utilizada por DBAs e desenvolvedores por dar a possibilidade de reduzir o tráfego dos dados na rede e melhorar a performance do banco de dados, criar tarefas agendadas, diminuir riscos, criar rotinas de processamento, etc. Exemplo simples de procedure são os procedimentos locais, criados a partir de um banco de dados do próprio usuário.


  • 09) O que é trigger? Descreva um exemplo simples.
    • Também conhecido como gatilho, é sempre executado quando há a tentativa de modificar algum dado na tabela do banco de dados que é protegida por essa função. Um exemplo simples é, alguém cria o trigger para proteger a planilha e quando se faz alguma alteração o gatilho é “disparado” e grava os dados anteriores em uma tabela de histórico de alteração com o usuário que alterou, data e hora da alteração.


  • 10) O que Tuning em Banco de Dados.
    • Este processo serve para otimizar, facilitar o acesso aos dados, melhor o desempenho das aplicações, é necessário compreender bem sobre o sistema operacional e sobre os códigos que estão rodando as aplicações para que a otimização gere resultados esperados, dai surge o nome Tuning em Banco de dados.