.NET, Banco de Dados, Certificação, Dica de leitura, Mova-se, Técnicas, Visual Studio

Certificações Microsoft – Por onde começo?

Olá pessoal, o objetivo desse post é esclarecer um pouco mais sobre a nova linha de certificações Microsoft, e também ajudar a direcionar aquele profissional que pretende obter uma certificação mas não sabe por onde começar.

A Microsoft criou uma linha de certificações chamada MTA – Microsoft Technology Associate. Essas provas são a “base da pirâmide” para uma carreira nas tecnologias Microsoft. O objetivo dessas provas são fornecer um conhecimento sólido dos fundamentos na tecnologia em que você pretende se especializar. Fazendo uma prova MTA, você já é um MTA Certification e já possui os conhecimentos fundamentais para seguir em frente.

Dentro do nível MTA, o profissional deve escolher qual área pretende seguir carreira, podendo optar por uma das três áreas conforme figura 1.

Áreas Microsoft

Figura 1 – Áreas na plataforma Microsoft

Mais detalhes: http://www.microsoft.com/learning/en-us/mta-certification.aspx

Como já sabemos o nível MTA visa garantir o conhecimento necessário para as outras provas (MCSD e MCSA ou quem sabe um dia MCM), então essa prova é obrigatória? Não, você não precisa se tornar um MTA para fazer as outras provas. Se você já é um profissional que tem experiência na sua tecnologia, então você pode pular esse nível. Porém se você está começando agora, certamente esse é o seu ponto de partida na carreira.

Em resumo, agora temos o nível MTA (de cada área) para iniciar, e a partir desse nível, cada um escolhe a carreira que pretende seguir. Para compreender melhor como ficou o RoadMap das provas vamos ver a figura 2.

Provas Microsoft

Clique para Download em PDF.

Figura 2 – RoadMap das provas

Existem dois centros de testes que você pode agendar a sua prova, Certiport para quem é estudante e Prometric para quem não possui nenhum vínculo acadêmico. Para o caso dos estudantes, é necessário verificar se a sua instituição está registrada no Certiport, verifique com seu professor ou chefe do departamento.

Um caminho para aprender e ajudar na preparação para as provas no nível MTA é através do Microsoft Virtual Academy que oferece diversos treinamentos gratuitos para desenvolvedores, profissionais de infra e banco de dados.

Lembrando que o mercado está carente de profissionais qualificados, enquanto sobram ideias, planos de marketing, investimentos dos mais variados, profissionais com uma boa qualificação ainda são uma pequena parcela do mercado, portanto uma certificação será muito bem vinda!

 Abraços!

Padrão
.NET, Banco de Dados, Boas Práticas

LocalDb – Uma alternativa simples e rápida

Performance é um item crucial no dia a dia dos programadores. Queremos agilidade em todas as tarefas do dia a dia. Mas muitas vezes precisamos usar ferramentas que não seriam necessárias se tivéssemos alguma alternativa melhor. Na grande maioria dos casos podemos dizer que “matamos mosquito com bazuca”, ou seja temos uma ferramenta cheia de recursos e acabamnos por utilizar uma funcionalidade bem específica (e usamos sempre a mesma funcionalidade) da ferramenta.

O SQL Server é um banco de dados poderoso que vem acompanhado de uma enorme variedade de recursos para um bom gerenciamento dos dados. Na grande maioria das vezes instalamos o SQL Server apenas para ler e gravar dados, ou seja um simples repositório de dados. Só que isso tem um preço, estamos desperdiçando ciclos de CPU e memória com ferramentas que jamais usaremos.

Como uma alternativa a esse cenário a Microsoft disponibilizou uma feature do SQL Server Chamada LocalDb.

Mas o que é o LocalDb?

O Local Db é uma versão simplificada (nem por isso desprovida dos recursos principais) do Sql Server Express, voltada para os desenvolvedores afim de evitar a instalação desnecessária  de uma edição completa do SQL Server.

Vantagens:

  • Instalação rápida e simples. Versão 32 bits tem 28 MB e a versão 64 bits 33 MB;
  • Não necessita configuração e administração;
  • Suporta procedures, triggers, tipos geométricos e geográficos, e o memso suporte a T-SQL Language;
  • Reduz o consumo de memória e CPU, pois só é iniciado quando necessário e também é desligado automaticamente se deixar de ser utilizado por um tempo;
  • Não precisa de instância adicional (como o Express);
  • Instalação única para todos os usuários do computador;
  • Suporta XML,BLOB, LINQ;
  • Sem limite de conexões.

Requisitos:

  • Privilégios Administrativos para instalação;
  • 140 MB de espaço disponível;
  • .Net 4.0 (para atualizar para 4.02).

Limitações:

  • Não roda em Windows XP, Server 2003 e 2000;
  • Uma instalação de 32 bits não roda em Windows 64 bits;
  • Visual Studio 2010 RTM não suporta LocalDb;
  • Não roda em dispositivos móveis;
  • Limite do tamanho do banco em 10 GB;
  • Utiliza apenas uma CPU;

 

Bom, temos então uma opção ao desperdício de recursos quando usamos o SQL Server da maneira mais básica. Eu particularmente prefiro essa versão instalada no meu note, do que deixar diversos serviços rodando de maneira desenecessária e deixando mais tudo mais lento.

O LocalDb pode ser baixado nesse link.

Links e Referências:

http://msdn.microsoft.com/pt-br/library/hh510202.aspx

http://www.sqlcoffee.com/SQLServer2012_0004.htm

http://blogs.msdn.com/b/jerrynixon/archive/2012/02/26/sql-express-v-localdb-v-sql-compact-edition.aspx

http://blog.lambda3.com.br/2013/03/restore-com-localdb/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+Lambda3Blog+%28Blog+Lambda3%29

Abraço!

Padrão
Banco de Dados, Eventos

Primeiro post do evento 1º DevDay Curitiba! “Business Intelligence usando informações Geoespaciais” – Thiago Zavaschi

Olá pessoal,

Conforme prometido, segue o primeiro post do evento DevDay Curitiba que aconteceu no último dia 25/09 na Faculdade de Tecnologia OPET. Os posts seguirão a ordem das palestras. A primeira palestra do dia foi com Thiago Zavaschi, falando sobre Business Intelligence usando informações Geoespaciais. Outra coisa, esses posts serão uma síntese de cada palestra.

Os exemplos desse post foram feitos com a edição Developer do SQL Server 2008, mas com qualquer edição funciona.

Bom, vamos ao que importa!

A parte inicial da palestra foi uma introdução sobre dados geoespaciais no SQL Server 2008.

Em primeiro lugar vamos aprender o que são dados geoespaciais, já sabemos que o SQLServer 2008 implementa nativamente o recurso de dados espaciais. Mas o que são esses tipos de dados?

O SQLServer 2008 possui dois tipos de dados que permitem armazenar, pontos, linhas, polígonos, mapas enfim, permite trabalhar com geoprocessamento. etc. Existem dois tipos de dados espaciais, são eles Geometry e Geography. Mas qual a diferença? O tipo de dados Geometry é utilizado para armazenar dados como pontos, linhas, mapas planificados, e polígonos. Já o tipo Geography permite armazenar dados de latitude e longitude, posicionamento no globo terrestre, como os dados usados em um GPS por exemplo. Esses tipos são padronizados pelo Open Geospatial Consortium (OGC).

Os dados espaciais são armazenados no banco como qualquer outro tipo de dado, e podem ser recuperados em uma query. Agora vejamos o seguinte, quando você executa uma query no SQL Server 2008 e traz um desses tipos, automaticamente é incluída uma guia de resultados chamada “Resultados Espaciais”.

Vamos executar o seguinte comando utilizando o tipo geography:

select (geography::STGeomFromText(‘POLYGON((-122.358 47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653))’, 4326)) from SpatialTable

Note que temos como resultado uma sequencia hexadecimal (conforme imagem acima) que de imediato não diz muita coisa, você deve estar pensando “hum que interessante!”. Mas agora começamos a tornar as coisas mais interessantes, ao clicar na guia Resultados espaciais podemos ver uma figura como a imagem abaixo:

Note no comando SQL que o primeiro parâmetro e o último são iguais “((-122.358 47.653” isso é necessário para fecharmos o nosso polígono, outro detalhe é que estou usando o tipo geography, e sendo esse utilizado em mapas elipsoidais, posso escolher a projeção que melhor me atende.

Com os tipos de dados geometry, além de criar linhas, polígonos, desenhar mapas também podemos fazer muitos cálculos como áreas de uma figura, verificar se um ponto pertente a uma reta, intersecção de formas, calcular distancias entre as figuras etc.

select geometry::STPolyFromText(‘POLYGON((3 1,1 1, 2 2, 2 3, 1 1,3 1))’, 0)

Ao desenhar uma imagem, caso os pontos finais e iniciais não coincidam, você receberá uma mensagem de erro como essa abaixo:

Msg 6522, Level 16, State 1, Line 1

Erro do .NET Framework durante a execução de rotina definida pelo usuário ou agregação “geometry”:

System.FormatException: 24306: The Polygon input is not valid because the start and end points of the ring are not the same. Each ring of a polygon must have the same start and end points.

System.FormatException:

at Microsoft.SqlServer.Types.Validator.Execute(Transition transition)

at Microsoft.SqlServer.Types.Validator.EndFigure()

at Microsoft.SqlServer.Types.ForwardingGeoDataSink.EndFigure()

at Microsoft.SqlServer.Types.OpenGisWktReader.ParseLineStringText()

at Microsoft.SqlServer.Types.OpenGisWktReader.ParsePolygonText()

at Microsoft.SqlServer.Types.OpenGisWktReader.ParseTaggedText(OpenGisType type)

at Microsoft.SqlServer.Types.OpenGisWktReader.Read(OpenGisType type, Int32 srid)

at Microsoft.SqlServer.Types.SqlGeometry.GeometryFromText(OpenGisType type, SqlChars text, Int32 srid)

at Microsoft.SqlServer.Types.SqlGeometry.STPolyFromText(SqlChars polygonTaggedText, Int32 srid)

Hierarquia dos dados espaciais

Temos 11 tipos de instância de dados espaciais, no entanto é permitido que instaciemos 7 tipos para trabalhar.

São eles:

  • Point
  • MultiPoint
  • LineString
  • MultiLineString
  • Polygon
  • MultiPolygon
  • GeometryCollection

Na imagem abaixo (destacados em azul), podemos ver a hierarquia dos tipos de instâncias (Geometry e Geography).

A primeira parte da palestra finaliza com essa introdução sobre os tipos geoespaciais. Partimos agora para aplicações desses tipos de dados.

Como o foco da palestra era B.I usando dados geoespaciais, Zavaschi iniciou essa parte explicando que um B.I precisa ter duas características principais:

1-    Deve ser rápido;

2-    Deve ser preciso.

As duas características acima são fundamentais para esse tipo de sistema.

Ele até criou uma situação pra exemplificar bem essas características:

“Um cidadão pergunta a hora para outra pessoa, então a pessoa aguarda, aguarda, aguarda e aguarda mais ainda, 2 minutos depois ela responde.”

Dessa situação, concluímos que:

1-    A resposta não foi rápida;

2-    A resposta não foi precisa;

Quando a pessoa recebeu a resposta, a hora já não era mais precisa, nem tampouco servia para ela tomar uma decisão, se houvesse uma oportunidade, ele já havia perdido.

Sabemos que hoje as empresas têm cada vez mais necessidades de incorporar informações visuais nas suas análises e tomadas de decisões, a frequência com que as pessoas consomem esses dados aumenta exponencialmente a cada dia.O SQLServer 2008 fornece esse mecanismo nativo para que as empresas tirem o melhor proveito para seus negócios com o máximo de performance. O SQL Server 2008, incorpora o suporte a índices espaciais, mecanismo que otimiza a busca das informações .

Veremos agora alguns cenários onde a inclusão de dados geoespaciais podem melhorar a eficiência de um negócio e torna-lo mais competitivo:

  • Os dados geoespaciais permitem uma melhor compreensão dos cenários pela análise visual.
  • É possível visualizar as regiões onde as vendas se concentram e onde estão fracas;
  • Criar mapas temáticos específicos por produtos ou serviços oferecidos;
  • Para o segmento de transporte rodoviário, por exemplo, é possível calcular distâncias e definir rotas para chegar ao destino;
  • Monitoramento com informações visuais;

Por enquanto é isso.

Até o próximo!

Abraços!

 

Padrão
Banco de Dados

Por que o SQL Server é melhor que muitos outros RDBMS?

Olá pessoal, recentemente entrei em um blog (http://blog.sqlauthority.com/) sobre SQL Server onde haveria o sorteio de um Visual Studio 2010 Ultimate com MSDN,  para quem respondesse a pergunta “Por que o SQL Server é melhor que muitos outros RDBMS?” Então fiz uma relação de alguns itens diferenciais bem como resolvi compartilhar no meu blog com vocês. Segue:

Em primeiro lugar, o SQL Server é altamente recomendado para situações onde o volume de dados cresce rapidamente, gastando preciosos recursos, sem um gerenciamento padronizado desses dados.

*O alto desempenho da nova versão permite que empresas escalonem de maneira segura e disponível desde um projeto pequeno até altos volumes de dados e transações.

* Mesclagem e padronização de dados heterogêneos com o Integration Services. Através do Integration Services é possível obter, padronizar e “limpar” dados  originados de diferentes fontes como provedores .NET, ODBC, OLE DB e arquivos simples com Excel e xml.

*Através dos recursos do StreamInsight, temos a disposição tomadas rápidas de decisões com base em informações de várias fontes de dados, tudo isso em memória, se necessário, pode ser persistido no banco.

*Disponibilidade dos dados na nuvem com o SQL Azure Database sem se preocupar com backup e administração

*capacidade de adicionar dinamicamente CPUs e memória a um sistema em execução;

*Trabalhar com até 64 GB de memória em sistemas de 32 bits através do AWE (Address Windowing Extensions), mesmo estes sendo limitados a 4 GB.

BI de alta performance, e de acesso fácil a usuários comuns através do  Power Pivot (Excel 2010 e SharePoint 2010).

*Representação geográfica e geométrica com Spatial Datas, para visualização de mapas, rotas e formas customizadas.

Abraços!

Padrão