Impressões da prova 70-776

Olá pessoal,

Realizei hoje a tarde a prova 70-776 que ainda está em versão beta. Esta prova exige que o candidato possua conhecimentos técnicos nas ferramentas de big data no Azure.

As seguintes áreas de conhecimento são cobradas:

  • Azure Data Lake Store
  • Azure Data Lake Analytics
  • Azure Data Warehouse
  • Azure Data Factory
  • Azure Stream Analytics

Posso dizer que a prova caiu questões de igual proporção as áreas de conhecimento. Foram um total de 70 questões para respondê-las no prazo máximo de 02:30:00: em minha opinião, tempo mais que suficiente para conclusão da prova.

O que caiu na prova?

1 – Azure data Lake Store (ADLS)

As questões exigiam que o candidato tivesse conhecimento de como movimentar dados para o ADLS, através de N ferramentas de ETL. A diferença entre ADLS e Blob Storage . O que é mais barato para armazenar os dados. O que efetivamente consigo integrar com ADLS.

2 – Azure Data Lake Analytics (ADLA)

Cairam muitas questões relacionadas a U-SQL. Algumas questões de quais bibliotecas são utilizadas para processar imagens utilizando U-SQL. Caíram questões relativas a U-SQL Package, o que é e pra que serve. Estrutura de query e a melhor forma de processar dados no ADLA, obtendo a melhor performance.

3 – Azure Data Warehouse (ADW)

Se você pensou que neste tópico iria cair questões relativas a T-SQL, está totalmente enganado. As perguntas eram muito direcionadas a gestão da plataforma. Quais são os requisitos para movimentar dados on-premises para o ADW. Caiu um monte de questões de DMV´s específicas para o ADW. Como escalar/pausar o ADW através de T-SQL. Estude bastante Polybase e as etapas para se conectar a uma fonte externa sem ter a necessidade de importer os dados para o ADW.

4 – Azure Data Factory (ADF)

Caiu nem sequer uma questão de Wizard de movimentação dos dados (eu já imaginava..rsrsrs). As questões eram relativas a estrutura de JSON nativas do ADF. Cenários onde você precisa determinar o que é nativo ou customizado. Questões sobre análise de log em caso de falhas na movimentação dos dados. Para esta plataforma, eu sugiro criar uma movimentação de dados qualquer, abrir o JSON que o Wizard gera e estudar bastante as sequências, propriedades e etc.

5 – Azure Stream Analytics (ASA)

Pra mim foi a parte mais complexa da prova. Algumas questões sobre querys específicas para transformação do dado para o output do ASA. Questões relativas a Janelas temporais (Tumbling, Hopping e Sliding) cairam bastante. Quais os tipos de data source utilizado pelo ASA. Cenários de topologia com erros e você tinha que descobrir em qual etapa da topologia estava o erro. Como utilizar “Reference Data” no input para fazer joins nas querys e como é feito os joins.

Além disso, como disse, a prova quer saber se você é realmente um “Engenheiro de dados da nuvem”. Então caiu aquelas famosas questões de qual plataforma tem o menor custo, baseado em um cenário proposto.

Indicações de material de estudo:

https://openedx.microsoft.com/courses/course-v1:Microsoft+DAT220x+2017_T3/about

https://openedx.microsoft.com/courses/course-v1:Microsoft+DAT223.3x+2017_T3/about

https://openedx.microsoft.com/courses/course-v1:Microsoft+DAT223.2x+2017_T3/about

https://openedx.microsoft.com/courses/course-v1:Microsoft+DAT223.1x+2017_T3/about

Eu acho que é isso pessoal. Bons estudos!

Anúncios

Erro ao abrir SSRS “This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms”

Olá pessoal,

Passei a alguns dias atrás por um problema no momento em que ia acessar o Report Manager do Reporting Services. O mesmo não abria, reportando um erro interno.

Neste momento fui investigar qual o detalhamento do erro nos logs do Reporting services que fica no seguinte caminho “C:\Program Files\Microsoft SQL Server\MSRS11.MSSQLSERVER\Reporting Services\LogFiles”

Encontrei no último arquivo de log a seguinte mensagem: “ui!ReportManager_0-1!20a4!10/02/2014-17:30:49:: e ERROR: System.InvalidOperationException: This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms.”.

A causa deste problema é que alguma atualização do Windows Server instalou um algorítimo de encriptação chamado RijndaelManaged AES, que não é certificada pelo Instituto Nacional de Padrões e Tecnologia (NIST), que por sua vez não é compatível com o Federal Information Processing Standard (FIPS). Devido a isso, o algoritmo AES não faz parte do Windows Platform FIPS. O FIPS é possui todos os algoritmos criptográficos validados.

Para solucionar este problema é necessário incluir uma tag nos dois arquivos web.config no reporting services que se encontram nos seguintes caminhos:

C:\Program Files\Microsoft SQL Server\MSRS11.MSSQLSERVER\Reporting Services\ReportManager\Web.config

C:\Program Files\Microsoft SQL Server\MSRS11.MSSQLSERVER\Reporting Services\ReportServer\web.config

Incluindo a seguinte tag:

 <machineKey validationKey=”AutoGenerate,IsolateApps” decryptionKey=”AutoGenerate,IsolateApps” validation=”3DES” decryption=”3DES”/>

Na sessão <system.web>

E depois reiniciar o serviço do Reporting Services.

Até a próxima!

Fonte:

http://blogs.technet.com/b/dpm/archive/2012/10/11/dpm-support-tip-reporting-fails-with-quot-implementation-is-not-part-of-fips-validated-cryptographic-algorithms-quot.aspx

http://support2.microsoft.com/kb/911722

MDX – Como trabalhar com membros dinâmicos

Olá pessoALL,

Estou aqui para dar uma dica rápida, mas que pode ser de grande valia quando precisamos trabalhar com dados dinâmicos no MDX. Sim, é possível no próximo Management Studio, desenvolver query´s MDX com valores dinâmicos.

Neste exemplo temos o seguinte cenário:

Preciso filtrar o faturamento de um determinado cubo, somente de um período estipulado. Na teoria seria super simples: utilizaria no WHERE do select  o [Data].[Data].&[data início] : [Data].[Data].&[data fim] e os meus problemas se resolveriam. A query seria executada com sucesso!

Mas vamos complicar mais um pouquinho! Imagine que eu tenho que selecionar um período de 1 mês à 6 meses atrás da data atual. Ahhhhh… mas em T-SQL é muito simples é só fazer um DATEADD, mas infelizmente o desafio aqui é MDX! Não posso utilizar os OLTP, somente os dados OLAP!

Então vamos lá:

Utilizaremos aqui uma técnica que criaremos o membro em tempo de execução, utilizando as funções de NOW e DATEADD. Sim, em MDX também temos o DATEADD!

WITH
MEMBER [STARTOFMONTH] AS
‘[Data].[Data].&[‘ + FORMAT(DATEADD(‘M’,-6,CDATE(NOW())),’yyyy-MM-d’) + ‘T00:00:00]’

MEMBER [ENDOFMONTH] AS
‘[Data].[Data].&[‘ + FORMAT(DATEADD(‘M’,-5,CDATE(NOW())),’yyyy-MM-d’) + ‘T00:00:00]’

Neste momento, atribuímos ao membro STARTOFMONTH e ENDOFMONTH a string definida após o AS.

Partindo que hoje é 21/07/2014, no membro STARTOFMONTH teria o valor [Data].[Data].&[2014-01-21T00:00:00] e o ENDOFMONTH teria o valor [Data].[Data].&[2014-02-21T00:00:00].

Após criarmos os membros com os respectivos valores, agora é só aplicar os dois membros através uma função chamada SRTTOMEMBER. Ele vai converter a string em formato de membro e desta forma, filtrará os dados necessários.

A query ficará desta forma:

SELECT NON EMPTY
{[Measures].[Faturamento]}
ON COLUMNS
FROM
[Cubo]
WHERE
STRTOMEMBER([STARTOFMONTH]) : STRTOMEMBER([ENDOFMONTH])

Bom… é isso pessoal. Espero ter ajudado alguém que precisou realizar filtros dinâmicos em sintaxe MDX.

Até a próxima.

 

 

Impressões da prova 70-461 Querying Microsoft SQL Server 2012

Ontem (10/04/2014) finalmente fiz a prova 70-461 (Querying Microsoft SQL Server 2012) e como fui fortemente auxiliado por pessoas da comunidade SQL, gostaria também de contribuir com a minha parte, compartilhando as minhas impressões.

Para saber mais detalhes entre na página oficial da Microsoft:

http://www.microsoft.com/learning/pt-br/exam-70-461.aspx

Felizmente passei na prova, mas posso dizer que a prova é difícil. A impressão é que a Microsoft quer realmente explorar o conhecimento especialista para quem deseja se tornar um MCSA (Microsoft Certified Solution Associate).

Achei esta prova mais fácil que a antiga 70-433, pois o grande foco agora é testar os conhecimentos puramente em Querying no ponto de vista de negócios (procedures, functions, trigger´s). Na minha opinião a 70-433 testava os conhecimentos de querying mais voltado a administração dos dados.

Na minha prova tiveram 44 questões, a maioria de múltiplas respostas. Teve algumas questões abertas que você precisava montar a ordem certa para criação de uma função ou procedure, por isso estudem bastante a sintaxe de procedures, funções e triggers. Se você trabalha com T-SQL no seu dia-a-dia fica mais, fácil. Aproveitei esta facilidade e de um mês pra cá desenvolvia minhas proc´s e funções na “unha”, ou seja, sem o auxílio de modelos e sem usufruir das facilidades do SSMS.

O que estudar:

1 – Criação, modificação de tabelas, campos computados, índices caiu se não me engano 1 questão

2 – Teve várias questões onde existia um resultado em XML e precisava escolher qual select resultou aquele XML, mas não caiu nada de Xquery

3 – Update, insert, delete com as opções OUTPUT

4- Estude fortemente criação e alteração de procedures, funções e triggers e suas variações. Por exemplo a opção ” with Check Option” para criação de views, tem um posicionamento diferente das outras variações. Fique atento a isto!

5- Níveis de isolamento cai muito. Estude todas as possibilidade, pois não existem perguntas do tipo “Qual a diferença do nível de isolamento READ UNCOMMITED E READ COMMITED ?”. Existem situações onde você precisará analisar que nível de isolamento que você irá utilizar.

6- Estude os hint´s

7- As novas features do SQL 2012 tiveram um certo peso na prova. Estude todas as novas features

8 – Agrupamentos, groupping sets, cube, rollup

Para estudar utilizei como base o Trainning Kit da Microsoft, mas o livro tem um conteúdo muito extenso e possui alguns temas que pelo menos pra mim, não cairam na prova, como por exemplo Fulltext.

Pesquisando nos blog´s falando sobre a experiência de outros colegas em relação a esta prova, vi muita coisa em relação a escrever código na prova. Sendo assim, montei um tutorial que me ajudou muito e gostaria de compartilhar com vocês.

Neste tutorial existe uma série de procedimentos, a serem feitos no SQL, mas o legal é realizar todos os procedimentos via T-SQL. Sem auxílio das facilidades do SSMS. O Desafio é chegar no fim do tutorial escrevendo todos os códigos sem o auxílio do google. É claro, nas primeiras vezes não tem jeito, sempre surgi alguma dúvida, mas a idéia é repetir o exercício várias vezes para que os comandos T-SQL firmem na mente.

Segue o link para download: http://1drv.ms/1oTrB4X

Gostaria de agradecer o Marcos Vinícius (@mvfontes)  pelas dicas. Valeu parceiro!

Até mais.

Novos desafios, novos horizontes

Boa tarde pessoal.

Existem momentos em nossa vida que é necessário aceitar novos desafios para poder crescer profissionalmente. Geralmente esta decisão envolve riscos que nem sempre agradam a “gregos e troianos”.

Sim pois é! nesta última semana foi a minha vez de tomar esta decisão. Depois de quase 2 meses de negociação estou indo para um novo desafio. Estarei me juntando a equipe de Business Intelligence da BoaVista Serviços onde terei oportunidade de trabalhar com a plataforma de BI Microsoft e também terei a incrível e talvez única oportunidade de conhecer a plataforma BI da IBM. Sim, Cognos é uma ferramenta que sempre tive vontade de aprender e me especializar.

A maior parte da minha carreira profissional foi dentro de consultorias, onde o modelo de trabalho é totalmente diferente de uma empresa de grande porte. Este é um grande momento da minha vida em entrar neste novo contexto e estou muito feliz por ter esta nova oportunidade.

Gostaria de agradecer primeiro a Deus que derrama bênçãos em nossas vidas mesmo não sendo merecedores. A minha esposa que não me ajudou muito em cada passo desta longa negociação nestes quase 2 meses. Ela realmente foi o meu porto seguro!

E por último gostaria de agradecer a empresa da qual estou me desligando: a Iteris, onde tive a oportunidade de trabalhar com companheiros de alto nível técnico. Inclusive recomendo e sempre recomendarei a Iteris por ser uma consultoria com excelência em Sharepoint e soluções em BI. Gostei demais de trabalhar nesta consultoria.

Pra você que percebe estar estagnado em seu ambiente de trabalho, vai uma dica: saia da zona de conforto, estude, se especialize, aceite novos desafios, sinta com frequência aquele “Frio na barriga”! Você perceberá que isto te ajudará em todas as áreas de sua vida.

Até mais!

MVP Virtual Conference – BI

Olá pessoal,

Gostaria de compartilhar com vocês um pouco do que vi no MVP Virtual Conference que aconteceu nos dias 26,27 e 28 de março. Foram 3 dias de palestras com os melhores MVP´s do Brasil sobre temas muito interessantes, tais como desenvolvimento, infra-estrutura e claro o que mais me interessa que é banco de dados. Infelizmente só consegui acompanhar a última sessão no dia 28 que foi palestrada por Felipe Ferreira (MVP SQL Server).

Foram discutidos pontos sobre o novo modelo de BI Microsoft, implementado  de forma mais sólida no SQL 2012. Na versão do SQL 2008R2 já havia sido introduzidos ferramentas de Self-Service BI como o power Pivot, mas realmente na versão 2012 isto está muito mais consolidado.

O plano da Microsoft realmente é tirar a carga de trabalho do pessoal de TI e tornar as coisas realmente mais fáceis para o pessoal de negócio, que está interessado diretamente em extrair dados para transformá-las em informação. Este novo modelo BI foram divididos em 3 contextos de BI:

– BI Pessoal –Self-Service BI como excel, Power Pivot,Visio e integração com as demais ferramentas office

– BI por Equipe – Sharepoint, Power View

– BI Corporativo – Sharepoint, PerfomancePoint(Score Cards), DashBoards em reporting Services

Nestes contextos existem níveis de conhecimento técnicos diferentes e desta forma é possível focar de uma forma muito mais eficaz o resultado final para tomada de decisão dentro de uma corporação.

O Power Pivot, permite agora que usuário trabalhe com volume de milhões de registros dentro do Excel. Esquece aquele modelo onde o excel suportava no máximo 1M de linhas. Agora, graças ao powerPivot o usuário final (BI Pessoal) pode trabalhar com um volume muito maior de dados e de forma muito rápida. Mas talvez você esteja se perguntando: “Como obter perfomance trabalhando com milhões de registros na minha estação de trabalho?”. O SQL PowerPivot permite trabalhar com este volume em memória, além do algorítimo de compressão de dados , aumentando assim consideravalmente o cruzamento dos dados dentro do excel.

 Uma nova linguagem para manipulação dos dados no excel foi criada. DAX (Data Analysis Expressions) é uma nova linguagem de fórmula, que amplia os recursos de manipulação de dados do Excel para permitir mais sofisticação e complexidade em agrupamentos, cálculos e análises. A sintaxe das fórmulas DAX é muito semelhante às fórmulas do Excel.

O Power View, mostrado também na apresentação é uma excelente ferramenta de visualização dos dados. Ela pode rodar dentro do Excel (BI Pessoal) ou no sharepoint (BI por Equipe/Corporativo). A grande sacada do Power Pivot são gráficos interativos e animados. Isto torna a apresentação final muito mais rica e de fácil manipulação por um executivo por exemplo.

Foi abordado na nova feature do SQL server 2012 chamada Business Intelligence Semantic Model (BISM). Com esta feature é possível criar modelos de dados dentro do Visual Studio, que pode ser uma origem OLTP ou OLAP sempre no modelo tabular. Enfatizando que agora na versão 2012 é possível trabalhar com o analysis services no modelo tabular. Baseado no projeto criado no Visual Studio, é possível utilizar este “Modelo de dados” em qualquer solução BI em sua estrutura.

http://www.sql-server-performance.com/2012/bism-sql-server-2012/

A grande novidade da apresentação foi o Data Explorer. Trata-se de um plug-in do excel que traz o conceito de Self-Service ETL, ou seja, agora o usuário final também poderá, com toda a segurança realizar suas cargas pontuais. Inclusive é possível se conectar a uma origem estruturada na web. Pode ser um XML ou um HTML e manter-se conectado a esta fonte de dados. Se o mantenedor do site ou página fizer alguma alteração, com um simples “refresh” este dado será atualizado em seu projeto de ETL.

Esta ferramenta ainda está na versão pré-release, mas acredito que agregará em muito ao novo conceito  BI que a Microsoft traz às empresas.

Abaixo um vídeo que está no blog do Felipe Ferreira demonstrando a utilização do Data Explorer dentro do excel

http://www.templar.com.br/blogs/felipe/2013/03/21/microsoft-excel-data-explorer/

Resumindo, uma apresentação excelente, mas com pouco tempo (1hora e 30 minutos) para abordar tantos assuntos e ferramentas importantes.

Acredito que quando as empresas começarem a “plantar” esta cultura Self-Service BI, este produto atenderá tranquilamente suas necessidades.

Por favor, enviem seus comentários do que pensam sobre este modelo e o que podemos fazer para melhorar a vida de nossos clientes.

Grande abraço.

Utilizando DateDiff em uma Derived Column Task

Recentemente um amigo me perguntou sobre como calcular a diferença entre duas data no SQL. A resposta foi muito rápida: Utilizar o comando Datediff do qual é muito simples de utilizar. Pois bem: montei comando T-SQL e encaminhei a ele. Um exemplo bem simples de como calcular a diferença entre datas. Mas pra minha surpresa ele não queria calcular esta diferença em T-SQL, ele gostaria de criar uma coluna calculada dentro de uma pacote integration services para tal cálculo de datas. Ele já possuia um uma “Derived Column Task” com outros campos calculados, seria muito egoísmo de minha parte pedir para que ele fizesse este cálculo em uma outra task, pois poderia onerar a perfomance de processamento.

Na imagem a seguir está solução.

Após isto é só criar uma conexão destino que receberá esta coluna calculada pelo “Derived Column”. Nesta função estou calculando a diferença em dias de uma data armazenada numa coluna chamada “data1” até o dia de hoje.

Até mais pessoal!