quinta-feira, 7 de abril de 2016

SGBD's Mais usados do mercado ..

Fala pessoal recentemente alguém deu um retweeter de um raking mensal que compartilha a popularidade dos SGBDs existentes no mercado.
Mercado este que se mantem estável e podemos considerar cada posicionamento ja bem definidos a um bom tempo. Uma grande surpresa foi notar o banco MySQL como segundo colocado e o DB2 aparecer somente em sexto colocado. Firebird e Azure SQL Database apesar de apresentar grande especulações no mercado nem posicionam as Dez primeiras posições do ranking, surgem lá em vigésimo sétimo (27), e vigésimo oitavo(28) respectivamente. 

atualizado de Abril de 2016:

RankDBMSDatabase ModelScore
Apr
2016
Mar
2016
Apr
2015
Apr
2016
Mar
2016
Apr
2015
1.1.1.Oracle            Relational DBMS1467.53-4.48+21.40
2.2.2.MySQL            Relational DBMS1370.11+22.39+85.53
3.3.3.SQL Server      Relational DBMS1135.05-1.45-14.07
4.4.4.MongoDB        Document store 312.44+7.11+33.85
5.5.5.PostgreSQL      Relational DBMS303.73+4.10+35.41
6.6.6.DB2               Relational DBMS184.08-3.85-13.56
7.7.7.Microsoft AccesRelational DBMS131.97-3.06-10.22
8.8.8.Cassandra       Wide column      129.67-0.66+24.78
9.9. 10.Redis              Key-value store  111.24+5.02+16.69
10.10. 9.SQLite            Relational DBMS 107.96+2.19+5.67

27.27. 26.Firebird                  Relational 20.10-0.78-1.24
28. 30.28.Microsoft Azure SQL Relational 19.24-0.23+3.54

Link para o site oficial: DB-ENGINES
método do cálculo se baseia em:
  • Número de menções em WebSites (exemplo nosso blog!).
  • Buscas no Google e Bing.
  • Discussões técnicas sobre o SGBD em sites e Fórums.
  • Número de vagas oferecidas onde o SGBD é mencionado.
  • Número de profissionais que mencionam o SGBD em seus profiles.

achamos interessante compartilhar essas noções do mercado com vocês $$
Grande abraços sucesso.

segunda-feira, 4 de abril de 2016

SQL SERVER on Linux

Excelente é isso mesmo SQL SERVER rodando em plataforma Linux.

Um assunto que pegou até os MVPs de Data Plataform desprevenidos, pois muitos não tinham ideia de que isso poderia acontecer. E mesmo com inúmera incógnitas, não podemos deixar passar em branco o assunto especulado a anos por ambos os lados da comunidade Linux x Windows.



   Microsoft parece animada com a multiplataforma do produtoporém alguns itens ainda não sabemos como funcionaram;

  • Quais serão as funcionalidades suportas pelo produto. Será todo o core da engine relacional? Integration Services?
  • Hekaton, Columnstore, e outras funcionalidades que estão brilhando, estarão incluídas?
  • Teremos Enterprise, Standard e todas as outras edições?
  • Os releases serão sincronizados ou podemos esperar uma defasagem de funcionalidade entre SQL Server do Windows e Linux?
  • Como será o SQL Server Agent? Controlaremos nossos jobs pela cron?
  • Quais serão as distribuições de Linux suportadas? Suse?
  • Suportaremos quais file systems? Ext3, ext4, reiserFS, XFS?
  • Quais serão as ferramentas? Vamos ter o SSMS on Linux? Visual Code será suficiente? Vamos usar IDEs como Eclipse?
  • Haverá interoperabilidade entre plataformas? Isto é, um backup de um banco no Linux pode ser restaurado em um SQL Server rodando no Windows?
  • Teremos 100% de compatibilidade no T-SQL?
  • Como fica integração com o CLR?
  • Diferente do Windows, onde o SQL Server não alterada nada no kernel do SO, será que teremos compilações de kernel específicas para o SQL Server?
  • Vão abrir o código fonte do SQL Server? (Aqui eu aposto contra…)

O que nós sabemos:



   Ficou claro que a listagem de dúvidas é muito maior que a de certezas, o que não deixa o assunto menos interessante. O que é mais legal e me deixa motivado, é que teremos a possibilidade de acompanhar o SQL Server em uma nova jornada, podendo analisar e aprender com os acertos e erros da Microsoft e seus desenvolvedores. Então elucubro sobre alguns pontos…

  1. Fica evidente mesmo para os mais míopes, o que já sabemos: “Data is the core asset now.” Mr. Nadella said. (tradução: Os dados são o principal ativo agora.)

  2. Linux é um grande sistema operacional e com um market share significativo. Estar presente nele representa uma oportunidade para a Microsoft e, claro, para todos os DBAs SQL Server. O que não significa que o SQL Server irá se comportar melhor.

  3. As empresas poderão optar por ter um excelente banco de dados (veja prosa abaixo) mesmo que esteja com seus servidores rodando Linux. O poder de escolha é importante para o negócio, e caso a Microsoft garanta compatibilidade do T-SQL e boa integração entre plataformas, a migração Windows -> Linux pode ser facilitada.

  4. Será possível fazer comparações efetivas de desempenho entre o SQL Server e outras engines rodando com mesmo sistema operacional e hardware. Só isso já vale o ingresso, a comparação efetiva de engines ou funcionalidades específicas, sem ficar com discursinho de que se fosse no Linux o resultado seria outro.

  5. Muitos DBAs SQL Server vão ter que aprender Linux e isso fará com que eles estudem e comparem as plataformas. Saber as diferenças e como explorar os pontos fortes de cada sistema operacional vai te deixar um melhor profissional. O que não significa que será melhor ou mais fácil… Por exemplo: deixe de agendar seus jobs com o SQL Server Agent e passe a usar a cron. Ou melhor, tente criar no Linux um monitor de desempenho como faz no Perfmon, cruzando dados de sistema operacional (memória, processos, processadores, I/O, rede), com contadores do SQL Server (access methods, buffer manager, SQL Statistics).

  6. Poderemos observar a qualidade do código produzido pela Microsoft para suportar diferentes sistemas operacionais. Será que ela fará melhor ou vou encontrar listas gigantescas de correções como eu vejo no DB2 LUW?

   Hoje temos o DB2 e Oracle com mais funcionalidades que o SQL Server, algumas sensacionais que eu gostaria de ver no SQL Server, além da possibilidade de fazer ajustes finos em diversas configurações (mesmo que quase ninguém o faça). Já no SQL Server eu vejo uma engine mais concisa e muito eficiente, e um produto que está se adaptando mais rápido às inovações/pesquisas de banco de dados (talvez por não ter que manter diferentes SOs), o que pode ser um diferencial nos próximos anos.

  Vejo na nova direção da Microsoft, abraçando o Linux e open source, a possibilidade de muitos de nós sair de um casulo dentro de uma plataforma e até de abraçarmos modelos diferentes. Quem sabe no futuro veremos menos gastos com uma cadeia gigantesca de vendedores, minimizando o custo do licenciamento, melhorando o serviço de suporte e focando no que realmente importa: a qualidade dos produtos e resolver os problemas dos clientes.

   Por fim, espero sinceramente que o maior benefício seja produzirmos comparações de qualidade, discussões inteligentes e que isso traga maior maturidade para TODOS os profissionais que trabalham com banco de dados. A aproximação da Microsoft com o Linux deve fazer com que DBAs SQL Server se aproximem de outras engines e também trazer DBAs Oracle/DB2/PostgreSQL para explorar um pouco do SQL Server, quebrando mitos e preconceitos.

  Quero poder discutir e testar se o completely fair scheduler (wikipedia.org/Completely) é realmente ruim para máquinas com banco de dados que não adotam um modelo cooperativo de escalonamento (como eu acredito ser). Quero poder falar sobre configurações do SO (ex.: swapiness, huge pages), ou se a implementação do Vectored I/O (wikipedia.org/Vectored) no Linux realmente não é a ideal (como eu já soube), tudo isso sem esbarrar na barreira de minha versus sua plataforma de banco de dados ou sistema operacional.  

  Estamos vivendo tempos excitantes no mundo dos bancos de dados e essa mudança dentro da Microsoft e com o SQL Server eu quero assistir de camarote. Pode ser que ninguém adote o "novo" produto, pode ser que o desenvolvimento falhe espetacularmente e venha com muitos bugs ou péssimo desempenho, ou que as ferramentas não sejam tão interessantes como as que temos hoje. Ou pode ser que o SQLOS ofereça uma abstração fantástica e o produto se adapte muito bem em um novo SO, deixando muita gente de queixo caído. Seja qual for o resultado desse movimento, com certeza ele trará muito aprendizado.

Quer acompanhar de perto também? 
Se cadastre no preview e acompanhe o evento Data Driven onde provavelmente vão falar sobre o assunto.


Seria legal também ouvir comentários de profissionais Oracle, DB2, Postgres…

E aí, acham que isso vai vingar?
Tem curiosidade com o que está por vir ou não vai fazer a menor diferença no mercado?


SQL Server Developer Edition - for free

Excelente notícia! SQL Server Developer Edition agora é grátis.

Na integra o anúncio oficial da Microsoft: blogs.technet.microsoft.com/dataplatforminsider/2016/03/31/microsoft-sql-server-developer-edition

Ele vem junto com um conjunto de ferramentas disponíveis no Visual Studio Dev Essentials.
Que tem até um crédito para brincar com o Azure (nada demais, mas é legal para quem ainda não conhece).


Além disso tem muita novidade rolando no Build 2016. Se quiser acompanhar o que anda acontecendo por lá, não deixe de dar uma olhada no Channel9: channel9.msdn.com/Events/Build/2016.

sexta-feira, 1 de abril de 2016

Microsoft SQL SERVER 2016 – Novidades Parte I

        Para manter a os ânimos nada como informações relevantes, gostaria de compartilhar um pouco sobre as principais novidades que a Microsoft esta anunciando para a nova versão do Microsoft SQL Server, isso mesmo a nova versão, se você nos últimos 2 ou 3 meses não se antenou, já estamos se deparando e caminhando para a versão 2016 do Microsoft SQL SERVER.
       Dentre as diversas novidades que aparecem na presentes na nova versão, gostaria de destacar algumas que realmente não existem nas atuais, dentre elas:
  • Live Query Statistics;
  • Query Store;
  • Temporal Tables;
  • Backup to Azure;
  • Managed Backup;
  • Multiple TempDB Files;
  • FOR JSON;
  • Always Encrypted;
  • Polybase;
  • Stretch Database;
  • Row-Level Security;
  • Dynamic Data Masking.
Outras funcionalidades também estão passando por mudanças e podem ser consideradas como possíveis novidades, é o caso:
  • AlwaysOn;
  • Columnstore Indexes; e
  • In-Memory OLTP.
Por outro lado, outras funcionalidades devem começar a fazer parte da lista de recursos e funcionalidades que descontinuadas ou futuramente descontinuadas, até o presente momento a Microsoft não disponiblizou nenhum lista oficial contendo este itens.
Mas voltando a destacar as novas funcionalidades, nem sempre todas estes itens considerados novos são realmente utilizados, em muito casos existe sempre uma insegurança, medo, relutância e até mesmo desconhecimento sobre como uma ou outra novidade pode ajudar, isso é muito comum de se deparar, as mudanças geram incertezas e inseguranças.
Para tentar ajudar você que esta lendo este post a saber um pouco mais sobre este recursos e de maneira eles podem fazer parte do seu projeto, vou fazer uma breve descrição de alguns deles, e conforme novas informações, exemplos e cenários forem sendo disponibilizados, com certeza, vou procurar compartilhar com você isso.
Vamos lá, vou começar por algo que eu gosto muito no SQL Server, estou falando de estatísticas e na versão 2016, temos a:
  • Live Query Statistics – Uma das funcionalidades que pode surpreender a vida dos DBAs e desenvolvedores, a Live Query Statistisc permite que você possaexibir as estatísticas de consulta ao vivo de uma consulta ativa, proporcionandoinsights em tempo real, isso é surpreende, saber ao vivo e a cores o que uma consulta que esta ativa, em funcionamento no SQL Server poderá nos propor de decisão.

  • Query Store – Outra fantástica funcionalidade que vai ajudar em muito os DBAs na sua longa jornada de análise de planos de execução, a Query Store vai possibilidade fazer a análise de uma plano de execução que possa estar apresentando problemas de desempenho através de uma “indicação” ou “orientação” por parte do SQL Server, poder escolher um plano de execução para processar uma query, olha algo revolucionário.

  • Temporal Tables – O nome desta funcionalidade realmente é um pouco estranho, pelo menos na sua leitural, mas com certeza a sua finalidade é bastante interessante e vejo como um grande diferencial. A temporal tables, consiste basicamente em uma tabela que fornece uma exibição de dados em um determinado momento de tempo, isso mesmo, você vai conseguir obter informações sobre os dados de uma tabela, através de uma visão histórica, como se você estivesse voltando ao passado, voltando no tempo a posição de dados daquela tabela.

  • Backup to Azure – O Backup para Azure recurso é projetado para permitir quevocê tire um backup do seu banco de dados no local diretamente para oarmazenamento de Azure blog, algo que hoje pode ser feito através de recursos e ferramentas de terceiros, mas estará totalmente integrado e funcionando de forma nativa no versão 2016.

  • Managed Backup – O recurso relacionado com o Microsoft Azure e conhecido como “Backup gerenciado” foi projetado com a finalidade de automatizarbackups para o armazenamento de Blob do Azure, muito legal esta funcionalidade, o seu grande diferencial esta justamente na forma que vamos poder gerenciar e administrar os backups de nossos bancos de dados armazenados na estrutura do Azure.
Muito legal estas novas funcionalidades, realmente a Microsoft esta trabalhando forte no SQL Server, na sua capacidade de integração e interoperabilidade. Na próxima semana eu retorno com a Parte II desta lista de novidades, destacando como por exemplo: Polybase e Strech Database, ambas inovações presentes na versão 2016 que terão um papel fundamente para o  SQL Server na sua capacidade intregação e interoperabilidade com ferramentas de Bigdata e Hadoop.
       Se ainda quiser saber mais, e se aprofundar  sobre este preview, recomendo acessar os seguintes links:

Microsoft SQL SERVER 2016 – Novidades Parte II

Estamos retornando com a segunda parte da Lista de Novidades do Microsoft SQL Server 2016, nova versão do SQL Server que neste momento apresenta muitas especulações, comentários e informações nas Internet, principalmente nas redes sociais.
Por este motivo também não poderia ficar de fora, como já realizado na semana passada com a primeira parte desta lista de novidades, caso você não tenha acessado este é o link:
http://scriptsemsql.blogspot.com.br/2016/04/microsoft-sql-server-2016-lista-de_1.html
Nesta segunda parte, vou destacar mais algumas das principais novidades que a Microsoft esta divulgado em seus Blogs e parceiros, hoje darei destaque para:
  • Multiple TempDB Files;
  • For JSON;
  • Always Encripted; e
  • Polybase.
A seguir destaco estas novidades, através de uma breve descrição:
  • Multiple TempDB Files – Funcionalidade muito aguardada a anos pelos profissionais da área de banco de dados, mais especificamente aqueles que trabalham com o SQL Server, onde a partir da versão 2016, teremos a possibilidade de durante a instalação do SQL Server configurar e definir a quantidade arquivos de dados que devem formar a estrutura do banco de sistema TempDB, onde o número de arquivos é definido com base no seunúmero de processadores que a instância 2016 estará sendo executada. Para saber mais sobre esta nova feature acesse:http://www.sqlservergeeks.com/tempdb-configuration-sql-server-2016-setup/

  • FOR JSON – Uma novidade bastante interessante que mostra o quanto a Microsoft esta se dedicando a acompnhar a evolução das tecnologias de Computação em Nuvem e BigData. A FOR JSON, consiste em uma claúsula da linguagem Transact-SQL criada para ajudar o SQL Server a possibilitar a apresentação e saída de dados no formata JSON de forma nativa, algo que vai muito além de apresentar os dados, mas sim ter a capacidade de formatar estes dados interpretados pelo JSON no formato desejado pelo usuário. Para saber mais sobre esta nova feature acesse: https://msdn.microsoft.com/en-us/library/bb510411%28v=sql.130%29.aspx#ForJson

  • Always Encrypted – Este é um recurso bastante interessante na minha opinião e algo que pode complementar o TDE(Transparent Data Encryption) recurso introduzido no Microsoft SQL Server 2008, com a finalidade de permitir criptografia nativa no nível de banco de dados. O Always Encrypted garantir ainda mais que seus dados estão armazenados de forma segura através deste recurso de criptografia, como também, durante os processos de manipulação dos mesmo. Sua principal característica é permitir que a possibilidade de criptografar dados dentro das aplicações que estão fazendo acesso ao SQL Server, tendo a capacidade de utilizar chaves de criptografia nunca reveladas dentro do processo que realização da criptografia do dado. Como resultado, o Always Encrypted fornece uma separação entre aqueles que possuem os dados(e pode visualizálo) e aqueles que gerenciar os dados (mas deve não têmacesso). Para saber mais sobre esta nova funcionalidade, acesse:https://msdn.microsoft.com/en-us/library/mt163865(v=sql.130).aspx ehttps://channel9.msdn.com/Shows/Data-Exposed/SQL-Server-2016-Always-Encrypted

  • Polybase – Na minha opinião uma baita novidade, sinceramente algo que vai muito além de uma novo recurso, mas sim um novo horizonte para os profissionais, desenvolvedores e administradores de banco de dados, funcionalidade que vai permitir um avanço enorme no que se diz respeito a Interoperabilidade do SQL Server com outras tecnologias Non-SQL, como também, tecnologias de acesso e armazenamento de dados dentre elas o Hadoop. O PolyBase é uma nova tecnologia que integra o produto o MicrosoftSQL Server Parallel Data Warehouse (PDW), com Hadoop. Ele é projetado parapermitir consultas através de dados relacionais armazenados no PDW e dadosnão-relacionais armazenados no Hadoop de forma distribuída através do sistema arquivos Hadoop (HDFS), ignorando MapReducedistribuído, reconhecido como motor do Hadoop que normalmente é usadopara ler dados do HDFS. Você pode criar uma tabela externa em PDW quereferencia o Hadoop dados (como um servidor vinculado) e você pode consultarisso com SQL, em essênciaadicionando estrutura para dados não-estruturados.
Para maiores informações sobre o Polybase e alguns cenários de uso, acesse: Books Online – PolybasePolybase ExplainedSQL Server 2016 and PolybaseUsing Polybase in SQL Server 2016Polybase in SQL Server 2016 CTP2
Muito bem pessoal, chegamos ao final desta segunda parte da lista de novidades do Microsoft SQL Server 2016, espero que você tenha gostado, na próxima semana chegaremos ao final desta lista, destacando as últimas novidades que Microsoft esta introduzindo no novo SQL Server 2016, dentre as quais chamo sua atenção para: Strech Database e Row-Level Security.
Mais uma vez obrigado por sua visita, fique a vontade para postar suas dúvidas, sugestões, críticas e comentários, sobre este ou qualquer outro post.