Continuando sobre bootcamp da IBM para profissionais Oracle na Unisul Ponte do Imaruim quero falar agora sobre Desenvolvimento. Lembrando que todos os meus comentários são em cima da apresentação, sendo assim, nada foi testado.
O IBM DB2 versão 9.7 já possui um compilador próprio para PL/SQL, sendo assim não precisa ficar ‘executando um de – para’ em toda a análise, já faz a compilação e grava da forma como o interpretador precisa. Para o TSQL (SQL Server e Sybase) que é bem parecido com SQL PL do DB2 existe esse de – para, passando pelo mesmo compilador gravando da forma que o interpretador precisa.
O interpretador nesse caso será o mesmo para as duas saídas, a figura abaixo mostra isso:
Para que esse interpretador funcione, essa opção precisa ser configurada DB2_COMPATIBILITY_VECTOR, abaixo quais as features que podem ser habilitadas, as com * precisam fazer o procedimento de parar e iniciar a instância. Para habilitar todas de uma vez utilizar palavra ORA:
Criando um database com todas as features habilitadas:
Obs.: O database tem que ser criado depois que é habilitada a compatibilidade ou não serão utilizadas, pois ficará um database nativo DB2.
Alguns tipos de dados e onde eram os maiores problemas nas migrações em versões anteriores, que agora podem não ser tão problemáticas:
Uma outra coisa que achei interessante (ou não, a prática daria essa resposta) é que pode ‘misturar’ o PL/SQL, TSQL e SQL PL no desenvolvimento dos mesmos objetos (function or procedures), poderia rolar pegar o que cada uma tem de melhor e fazer acontecer, agora, isso como mencionei somente o desenvolvimento do dia a dia daria a resposta, mas seria interessante avaliar.
Itens que no PL/SQL estão funcionais são alguns que utilizo diariamente e acabei listando abaixo sem ter certeza como era/é no DB2 (precisaria testar tudo para dar um veredito final e ai sim ter certeza):
– Os cursores, para retornos em procedures;
– Utilização normal de de Packages.Procedures e Packages.Funcitions;
– Os privilegios para outras roles (usuários) executar, normal;
– Utilização do %type para tabela.campo e %rowtype para tabela na declaração de variáveis;
E segundo o expertise do instrutor, hoje o compilador do DB2 está 90% a 95% igual do Oracle, portanto, muita coisa está funcional.
Obs.: Imagens retiradas do material oficial do curso dado pela equipe IBM DB2 Brasil.
Nota: Quero ver ser faço um post em breve sobre alguns testes de PL/SQL direto no DB2, aguardem!
Att,
capin
Excelente artigo! Estou estudando também DB2, mas o que eu acho ruim, é que tem muito pouco material disponível! Pelo que li, e estou vendo se consigo, é uma parceria com eles, pois me parece que através da parceria, a IBM disponibiliza todo o material dos produtos da IBM.
Fabiano,
Ali no post Part 1, tem uns comentários do instrutor, tenta enviar um email para ele.
Outra coisa que você pode fazer é buscar fazer o bootcamp, pois se passar nas provas consegue um cadastro no site que tem acesso a muita coisa, bem legal.
Boa sorte e obrigado pelo comentário.
Att,
capin
Fabiano, voce pode procurar todos os materiais de db2 no site do http://www.developerworks.com. Va em Technical Topics e voce encontra material nao somente de DB2 mas como de outros produtos IBM. Qualquer coisa me avisa que tenho alguns materiais e posso te enviar.
Opa, se puder me enviar, fico grato!
Meu e-mail é [email protected].
Obrigado!
Fernando, sobre o T-SQL, o DB2 possui o que chamamos de SQL SKIN. O mesmo esta em fase de aprimoramento e ajustes para disponibilizar como uma “engine” do T-SQL
Otavio,
certo, obrigado pelo apoio.
att,
capin
Olá Capin!
A IBM é esperta, esta tentando pegar os desenvolvedores PL/SQL e TSQL, e puxar para o time dela, aumentando a popularidade do DB2, mas isso pode também ser um tiro no pé, deixando de lado o SQL PL.
Essa compatibilidade eu desconhecia.
Att,
Sakamoto
MyTraceLog – Registro de um DBA
http://mytracelog.blogspot.com
Sakamoto, é esperta sim, mas creio que o foco principal seja para migrações no momento, depois o dev faz nas 2 linguagens, podendo pegar o melhor de cada uma, não vejo como tiro no pé, agora temos que testar essa compatibilidade toda.
Abraços
Pessoal, estou adorando o DB2! Comecei a estudar, por curiosidade, pois sempre ouvi falar bem do DB2 em Mainframe, junto com cobol!
Agora, com as novidades que vc postou, está show!
Estou estudando e espero que logo possa conseguir alguma certificação do DB2 e quem sabe de outros produtos da IBM! A IBM realmente é experta, mas quem souber aproveitar, irá se beneficiar e muito.
Por curiosidade, quanto um profissional certificado em DB2 ganha?
Cara, ô pergunta difícil…. Um profissional SR gira em torno de 6000,00 à 8000,00, mas depende muito… O mercado é bem restrito (pelo menos aqui no RJ), o que deveria ser um fator para valorizar ainda mais o sálario, mas tem o efeito contrário. As empresas que tem o DB2 como RDBMS principal, normalmente “aderem” a um pacote fornecido pela IBM (hardware + software + prestação de serviços) e as que tem um “banquinho” DB2 colocam o DBA Oracle/Sql Server para administrar.
Espero que com estas novas features do DB2 (PureXML, PureScale, Compilador PL/SQL) as oportunidades comecem a aparecer.
Um bom site pra quem está começando é baixar um e-book do DB2 Express:
http://www.ibm.com/developerworks/wikis/display/db2/free+book-+getting+started+with+db2+express-c
e baixar a versão de “grátis” do DB2:
http://www-01.ibm.com/software/data/db2/express/download.html
abs,
Mais que DBA Oracle, no geral. Todo dinheiro obedece a Lei da oferta e procura. Quantos DBAs SQL Server existem no mercado? E Oracle? E DB2? E Informix?
Por ser um profissional mais raro, o DBA DB2 pode pedir mais que o DBA Oracle (e bem mais que o SQL Server). E este salário pode ser aceito, e existem vagas que pagam para DBAs DB2 mais do que para um DBA Oracle. O profissional inverte o jogo, pois muitas vezes o RH nem tem outro candidato para concorrer com ele.
Também já vi o salário de DBA DB2 Mainframe ser maior que o do DBA DB2 LUW, pelo mesmo motivo: ele é mais raro.
Claro que existem os enrolões que derrubam este salário, e depois tentam se virar no Google.
Por exemplo, uma vez por curiosidade fui ver uma vaga de DBA Sênior Oracle E DB2, e queriam pagar no máximo R$6.000 em CLT Flex (que é ilegal). Se acharam alguém, é um enrolão, não é realmente Sênior nos dois bancos, pois não investiu em sua carreira o suficiente.
O mercado de trabalho para DBAs é um assunto maior: ele está sofrendo um círculo vicioso terrível, onde os enrolões abaixam o salário, e as consultorias alocadoras não ligam se o cara sabe ou não: para ela só interessa se o cara sabe falar bem, se depois acontecer algo é problema entre o cliente e o profissional. As consultorias atravessadoras são necessárias porque as empresas (clientes) não conseguem contratar facilmente em TI, pois é um mercado aquecido, e portanto de alta rotatividade, e caro. A própria IBM precisa recorrer a estas consultorias, mesmo para DBAs DB2!
Então, o profissional que realmente sabe DB2 (e Oracle, e SQL Server) fica acuado, e isto irá piorar, pois está claro que a IBM percebeu que o DB2 não é utilizado porque não há profissional para cuidar deste banco. A concorrência aumentará nos próximos anos.
Minha dica é: aprenda (realmente aprenda) mais que um RDBMS. Banco de dados não é time, você pode se dedicar dois ou três. Desta forma, você estará mais protegido dos movimentos do mercado.
Fala Portilho!
Concordei com a sua explanação, deve-se investir a carreira em mais de uma opção, abrindo desta forma o leque.
Só não acho que a IBM percebeu que o DB2 não é utilizado porque não há profissional no mercado. A IBM tinha (espero que seja passado) uma política de associar hadware + software + serviços, ou seja, vendia um zseries rodando um DB2 mainframe para uma empresa no Canadá e tinha a equipe gerenciando remotamente (podia ser da Índia, Brasil ou qualquer outro local), ou seja o valor deste profissional vai lá pro chão. Eu mesmo participei de uma equipe na IBM de mais de 50 profissionais brasileiros que eram somente DBAs DB2 LUW de Infra que cuidava de databases de grandes empresas do Brasil e do mundo.
Eu sempre achei que o problema do DB2 (zOS ou LUW) era ser “queixo duro” para desenvolvimento e que perdia terreno enorme pra Oracle neste quesito. Esse deve ser o foco da IBM para transformar o DB2 em um RDBMS mais competitivo sem depender somente da combinação software + hardware.
abs,
Entendi, por isso ela está dando treinamentos, software grátis, livros. Para que técnicos não-IBM implantem nas médias empresas, sem que precisem comprar o pacote todo da IBM.
Mas como assim queixo duro, pode explicar mais detalhadamente?
Abraço !
É queixo duro… No sentido do DB2 ter uma liguagem proprietária chamada SQL PL que sempre foi limitada, com menos funções do que a PL/SQL(como packages utl, dbms) e não ter algumas funções de sql que são comum no Oracle (nvl,nvl2).
Não havia truncate e até algum tempo sequence (existia um objeto chamado identity).
Existia também problemas de compatibilidade de drivers disponibilizados para softwares de terceiros (odbc, jdbc…). Por isso acho que a versões 9.5, 9.7 e 9.8 foram um divisor pra a “briga” (ou uma alternativa) com os outros RDBMS.
abs,
Legal, obrigado Alexandre.
Abraço !
Muito bom o comentário de vocês!
Só gostaria de fazer uma observação, sobre o comentário do Portilho, aonde fala dos enrolões. Realmente, em toda área de TI, não importa se é banco de dados, programação, projeto, etc, há os enrolões, o que na minha opinião ajudaria a resolver isso, seria a regulamentação da profissão, aonde a SBC é contra (mas fica para outra discussão). Além disso, existe aqueles profissionais que estão começando em determinada área e é impossível chegar a cobrar o valor que profissionais mais experientes cobram. Um exemplo disso, sou eu mesmo, eu estou estudando para certificação de banco de dados, para depois pegar serviços na área. No começo, não tem como começar a cobrar o mesmo valor que vocês, mais experientes cobram. Está certo, que também, não vou me desvalorizar, quando chegar a oportunidade.
Uma observação, quando falo em começar, não quer dizer que não sai nada de banco de dados, quero dizer que não tenho experiência em administração de banco de dados Oracle e DB2, como vocês tem.
Sobre a falta de profissionais, um exemplo: ontem um amigo me chamou no skype, e me perguntou se é difícil migrar de DB2 para Oracle. Perguntei o motivo, e ele disse que o DBA atual não está trabalhando satisfatoriamente, e ele não consegue encontrar nenhum outro, com a vaga aberta a 25 dias.
Sobre a regulamentação, não acho que ela irá resolver o problema dos enrolões, pois faculdade não faz DBA. A maioria dos enrolões que encontrei são pós graduados.
Ah sim, existe realmente os enrolões que são pós-graduados, mas existem muitos que se aventuram na informática e mal sabe a diferença entre partição e hd, ou se duvidar, acham que o drive de DVD é porta café.
Tudo bem, eu exagerei, mas acho que a regulamentação é uma alternativa e irá diminuir muito os enrolões, mas não acabar!
Os enrolões que sobrar, o mercado retira eles! Não estou afirmando que o meu ponto de vista é o único e mais correto, mas é o meu ponto de vista.
Sobre a formação de profissionais pela faculdade, realmente, a faculdade não forma profissionais em áreas específicas, mas dão uma grande base, posso dizer, alicerce, para que a pessoa possa então decidir realmente qual profissional de TI seguir, pelo menos, quando olho para o curso de graduação da FATEC-TQ que eu fiz, ela dava uma base excelente.
A formação de um profissional, vai além das “fronteiras” de um curso de graduação ou pós-graduação, vai do esforço do profissional em se dedicar ao estudo de uma nova tecnologia e se arriscar muitas vezes para por em prática. Eu estou na fase de estudo ainda, sobre DBA, mas pretendo em breve me arriscar.
Pergunto novamente aos nobres e experientes colegas, quanto um profissional DBA em Oracle, DB2, SQL Server, MySQL ou outro banco que vocês conheçam ganham? Tanto em CLT, quanto se fosse cobrar por projeto ou por hora.
Pena Portilho o seu amigo está tendo esta dificuldade. Aqui no RJ temos os 2 aspectos: falta de profissionais e falta de empresas que utilizam o DB2.
Migrado para o Certificação BD em 08/05/2012 por Capin!