Uma pandemia global – SQLBlog.org


T-SQL terça-feira # 132“Interessante” não o descreve.

“Sem precedentes” não chega nem perto de fazer justiça.

2020 foi o ano mais louco da minha vida, e Taiob Ali nos perguntou como estamos lidando com isso.

À frente, no centro e que tudo consome, é claro, está essa pequena pandemia conhecida como COVID-19. Certas pessoas passaram de ignorá-lo como uma farsa, para professar várias vezes que estamos virando uma esquina, para declarar vitória sobre o vírus, mesmo com novos registros de casos e mortes sendo ativamente estabelecidos. Está longe de terminar e, embora haja uma promessa em uma próxima vacina, todas as nossas vidas mudaram como resultado. read more

Anunciando uma nova aula online ao vivo: fundamentos de TempDB


Anunciando uma nova aula online ao vivo: fundamentos de TempDB 3Você trabalha com o Microsoft SQL Server há alguns anos e sabe um pouco sobre TempDB. Você já ouviu falar que as tabelas temporárias e as variáveis ​​de tabela têm características de desempenho diferentes das tabelas de banco de dados de usuário regulares e ouviu que deveria ter vários arquivos de dados.

Você está se perguntando o que exatamente acontece nos bastidores.

Minha mais nova aula online ao vivo de um dia é para pessoas curiosas que querem aprender:

  • O que usa TempDB e como isso afeta o desempenho: não apenas tabelas temporárias e variáveis ​​de tabela, mas também gatilhos, cursores, índices de classificação, derramamentos de espaço de trabalho, armazenamento de versão e muito mais
  • Como hospedar TempDB dependendo de como você o usa: entender o que está no arquivo de log, os arquivos de dados, por que o número de arquivos de dados é importante e se sua carga de trabalho específica deve estar em SAN, armazenamento local ou efêmero e por quê
  • Como monitorar: depois de entender o que o usa e como hospedá-lo, você precisa manter o controle sobre como seu desempenho muda ao longo do tempo usando DMVs, contadores Perfmon e os scripts do First Responder Kit

Este curso é composto por 90% de demonstrações: os únicos slides são as introduções no início do dia, ilustrações para apoiar alguns tópicos e a recapitulação no final do dia. No resto do tempo, trabalharemos no SQL Server Management Studio. Arregace as mangas e junte-se a mim! read more

Aprenda SQL: injeção de SQL


SQL Injection é uma técnica conhecida usada para atacar aplicativos baseados em SQL. Neste artigo, vamos nos concentrar em exemplos que mostram como você pode explorar vulnerabilidades de banco de dados usando essa técnica, enquanto no próximo artigo falaremos sobre maneiras de como você pode proteger seu aplicativo de tais ataques.

Modelo de dados

Neste artigo, usaremos o mesmo modelo de dados que estamos usando em toda esta série, portanto, não houve mudanças na estrutura ou nos dados das tabelas, desde a última vez. read more

Transforme os dados usando um fluxo de dados de mapeamento no Azure Data Factory


Nos artigos anteriores, Copiar dados entre os armazenamentos de dados do Azure usando o Azure Data Factory e Copiar dados do armazenamento de dados local para um armazenamento de dados do Azure usando o Azure Data Factory, vimos como podemos usar o Azure Data Factory para copiar dados entre diferentes dados lojas localizadas em uma máquina local ou na nuvem.

Neste artigo, mostraremos como podemos usar o Azure Data Factory para transformar um conjunto de dados específico.

Visão geral da transformação de dados

O Azure Data Factory oferece suporte a várias atividades de transformação de dados. Essas atividades incluem: read more

Webcast gratuito: Por que a mesma consulta às vezes é lenta?


Webcast gratuito: Por que a mesma consulta às vezes é lenta? 7

Eu posso cheirar seus parâmetros daqui

Você jura que nada mudou, mas de repente, do nada, as consultas que costumavam ser rápidas tornaram-se lentas. Ainda mais estranho, você pega a consulta lenta do aplicativo, executa no SSMS e é totalmente rápido! O que está acontecendo?

Você reinicia o SQL Server ou atualiza as estatísticas e o problema parece ter desaparecido – mas apenas por alguns dias ou semanas, e então ele volta imediatamente. Você está familiarizado o suficiente com os planos de execução para perceber que está recebendo planos diferentes, mas … por quê? E como você conserta a longo prazo? read more

Explore the Role of Normal Forms in Dimensional Modeling


By: Nai Biao Zhou   |   Updated: 2020-10-06   |   Comments (9)   |   Related: More > Database Design

Problem

The debate over star schemas and snowflake schemas has been around in the dimensional
modeling for a while. Designers with a transactional database design background
cannot resist creating normalized dimension tables even though they agree to use
the star schema. Data redundancy and duplication in dimension tables does not make
them comfortable and they argue that normalized dimension tables require less disk
space and are easier to maintain. To make them use star schemas consistently, we
need to explain what normal forms should be used in the data warehouse design, why
we should use them and how to design a dimensional model. read more

Revelando o alinhamento de vendas da Black Friday 2020


Revelando o alinhamento de vendas da Black Friday 2020 10Eu amo as vendas da Black Friday.

Eu normalmente nunca iria comprar uma TV do nada – a menos que a minha estivesse quebrada ou algo assim – mas conforme a Black Friday se aproxima, eu me vejo examinando todos os próximos anúncios, lendo comentários e comparando recursos. É uma diversão divertida e me dá uma desculpa para evitar o trabalho por um tempo. Afinal, eles são sensíveis ao tempo – preciso entrar enquanto posso, certo?

Ouça, este ano, vou aproveitar todas as diversões divertidas que puder. read more

Como aprender SQL Server em um ano


Você já usa o Microsoft SQL Server há alguns anos e ele está se tornando cada vez mais importante para o seu trabalho.

Você pode escrever uma consulta, mas …

Você sente como se algo estivesse faltando.

Você participou de alguns grupos de usuários locais ou encontros antes da chegada da quarentena, mas ficou desapontado com a dispersão das sessões. O material estava em todo lugar, cobrindo muitos tópicos diferentes, e nenhum deles era aprofundado. Você não conseguia relacionar o tópico ao que estava realmente fazendo no trabalho. read more

Conectando-se ao SQL Server com MuleSoft AnyPoint 3.9 – SQLServerCentral


Normalmente escrevo sobre o SQL Server, mas pensei em compartilhar minha experiência de uso do SQL Server do MuleESB. Se você nunca usou o Mule antes, é um ESB (barramento de serviço corporativo) de código aberto, que também tem uma versão Enterprise paga. Uso-o desde 2015 e fiquei impressionado com a rapidez com que podemos criar aplicativos bastante complexos. É rápido, fácil de usar e gratuito se você usar a versão comunitária; Também tenho alguma experiência com Java, o que ajuda. Costumo usar o Mule para aplicativos que processam solicitações da web ou durante a integração com sistemas existentes e o SQL Server Integration Services (SSIS) para movimentação de dados.

Tenho trabalhado em um programa MuleESB, que precisa registrar milhões de solicitações por dia e, com os avanços recentes no SQL Server, agora é a escolha óbvia para armazenar quase qualquer tipo de dados. Você também pode executar o SQL Server 2017 no Linux, o que agradará muitos usuários do Mule. Anteriormente, o Mule tinha um conector SQL Server, mas ele foi preterido e substituído pelo Conector de banco de dados genérico. Isso funciona com a maioria dos drivers JDBC.

Para começar, precisaremos baixar o driver mais recente da Microsoft e adicioná-lo ao nosso projeto. Podemos então configurar o banco de dados usando uma string de conexão padrão.

Adicionando o driver JDBC

No momento em que este artigo foi escrito, o mais recente é JDBC 6.4; que você precisará se quiser usar o SQL Server 2017, mas todas as minhas capturas de tela fazem referência a JDBC 6.2. Você precisa baixar o driver JDBC da Microsoft para SQL Server. Você pode adicionar isso ao seu Projeto Mula usando Adicionar JARS externos… e selecionando mssql-jdbc-6.2.2.jre7.jar ou mssql-jdbc-6.2.2.jre8.jar; dependendo do seu JRE.

Nota: Você precisará do JDBC 6.4 se quiser um driver para JRE 9; você também precisará do Mule 4, pois o 3.9 não oferece suporte ao Java 9.

Configurando o Conector de Banco de Dados

O conector de banco de dados é surpreendentemente fácil de configurar. Simplesmente adicionamos uma string de conexão padrão e referenciamos o driver JDBC, que é o mesmo, independentemente de qual driver JDBC você usa. Aireforge criou um construtor de string de conexão online que pode ser útil aqui – Connection String Builder para JDBC.

Janela Propriedades do elemento global no Mulesoft 3.9

Aqui está um exemplo que se conecta a uma instância local que contém um banco de dados chamado TestDatabase. Eu adicionei a porta, mas isso não é necessário, a menos que o padrão de 1433 tenha sido alterado.

jdbc:sqlserver://127.0.0.1:1433;databaseName=TestDatabase;user=TestUser;password=reallySecure!;

O acima é bom para teste, mas eu sugiro que você use parâmetros que são armazenados em um arquivo de configuração central para facilitar sua vida. Isso permitirá que você defina automaticamente as configurações do ambiente usando um arquivo de configuração local ou altere manualmente entre Dev e Produção comentando cada seção. Eu também recomendaria o uso de um nome de aplicativo, pois isso ajudará você ou a equipe de banco de dados a identificar seu aplicativo; em vez de simplesmente ser mostrado como um programa JDBC.

jdbc:sqlserver://${mssql.server}:${mssql.port};databaseName=${mssql.database};user=${mssql.user};password=${mssql.password};

Uma vez definido, você pode armazenar os seguintes parâmetros em outro arquivo de configuração do mule. Costumo usar global_properties.xml

<!-- Test Database Settings --> <global-property name="mssql.server" value="127.0.0.1" doc:name="SQL Server Instance" /> <global-property name="mssql.port" value="1433" doc:name="SQL Server Port" /> <global-property name="mssql.database" value="TestDatabase" doc:name="Database Name" /> <global-property name="mssql.user" value="TestUser" doc:name="Username" /> <global-property name="mssql.password" value="reallySecure!" doc:name="Password" /> <!-- Production Database Settings <global-property name="mssql.server" value="proddb1.xten.uk" doc:name="SQL Server Instance" /> <global-property name="mssql.port" value="1433" doc:name="SQL Server Port" /> <global-property name="mssql.database" value="LiveDB" doc:name="Database Name" /> <global-property name="mssql.user" value="MuleApp" doc:name="Username" /> <global-property name="mssql.password" value="superSecure!" doc:name="Password" /> --> read more

Azure Data Factory pipelines: Filling in the gaps


Through the term was not really in the vernacular as it is today, I have been a full or part-time “Data Engineer” my entire career. I have been quite comfortable with Microsoft ETL tools like SSIS for many years, dating back to the DTS days. My comfort with SSIS came from many years of trial and error via experimentation as well as adhering to the best practices put forth and tested by many of my colleagues in the SQL Server field. It was and still is a widely used and well-documented ETL platform. With the release of Azure Data Factory several years ago, though it was not touted as an SSIS replacement, many data engineers started working with and documenting this code-free or low-code orchestration experience, and I was one of them. read more