Impacto da ordem da coluna no Composite Index SQL Server

Impacto da ordem da coluna no Composite Index SQL Server 2


Neste artigo, exploraremos o Composite Index SQL Server e os principais impactos sobre os pedidos. Também veremos SQL
    Estatísticas de atualização do servidor para determinar um plano de execução otimizado do índice Compositivo.

Introdução

Os índices do SQL Server são um fator vital no desempenho da consulta e no desempenho geral do sistema. Usamos cluster e
    índices não agrupados com configurações diferentes. Você deve passar pela categoria de artigos SQLShack Indexes para se familiarizar com
    índices no SQL Server. read more

Importar documentos XML para tabelas do SQL Server usando pacotes SSIS

SSIS Advanced editor for XML Source


Este artigo orienta você na importação de documentos XML para tabelas SQL usando pacotes SSIS.

Introdução ao XML

XML (Extensible Markup Language) é uma linguagem de marcação simplificada. É uma linguagem padrão W3C de código aberto e usada principalmente para armazenar e transportar dados. Foi derivado da Linguagem de Marcação Generalizada Padrão (SGML). É diferente do HTML, mas possui algumas semelhanças.

HTML é estático enquanto XML é de natureza dinâmica

  • Em HTML, usamos tags predefinidas, enquanto o XML usa tags definidas pelo usuário

  • XML é uma linguagem que diferencia maiúsculas de minúsculas, enquanto HTML não é

  • HTML concentra-se nos dados apresentados, enquanto o foco XML está no armazenamento e transporte de dados

  • A definição de esquema XML (XSD) é usada para validar, formatar e descrever um arquivo XML. Um documento deve ser validado no XSD para ser um arquivo XML válido. Um documento XML é válido se o XSD definir as tags e atributos para ele. XSD também é uma recomendação do W3C (World Wide Web Consortium) read more

    Banco de dados SQL Server TempDB e contenção de trava

    Eliminating the PAGELATCH_UP latch problem fort he TempDB database


    Neste artigo, aprenderemos os problemas de contenção de trava que podemos enfrentar no banco de dados SQL Server TempDB. Também discutiremos os motivos e o método de solução desses problemas de contenção de trava. Especialmente, mencionaremos o recurso de metadados TempDB com otimização de memória que foi introduzido no SQL Server 2019.

    Primeiramente, aprenderemos brevemente as características essenciais do banco de dados TempDB e também falaremos sobre o conceito de trava do SQL Server para que possamos entender todos os aspectos dos problemas de contenção de trava do banco de dados TempDB com mais clareza. read more

    Painéis de servidor e banco de dados no Azure Data Studio

    Add new widget details


    O Azure Data Studio (ADS) é um desenvolvimento de banco de dados leve e integrado para oferecer suporte no local e na nuvem
        bancos de dados. Pode ser instalado no Windows e no sistema operacional Linux. Suponho que você esteja familiarizado com o
        SQL Server Management Studio. Se você trabalha na instância do SQL Server baseada em Linux, poderá instalar apenas o ADS naqueles
        sistemas. Podemos usar terminais integrados para executar as sessões do PowerShell e Terminal para o sistema Linux. read more

    Crie relatórios do SQL Server usando funções de data e hora

    SQL Server Reports - create reporting intervals - the data model we'll use in the article


    Nos dois artigos anteriores desta série, discutimos como criar um relatório e como usar funções internas de data e hora. Hoje vamos nos juntar
        esses dois juntos e analisamos algumas consultas interessantes que poderíamos usar ao criar relatórios mais complexos do SQL Server
        onde as funções de data e hora são usadas para criar categorias de relatório.

    Modelo de dados e algumas considerações gerais

    Usaremos o mesmo modelo de dados que estamos usando ao longo desta série. Como estaremos focados principalmente em como gerar
        categorias de relatório de data (hora), usaremos dados de apenas uma tabela e esse é o ligar
    mesa. read more

    Índice do SQL Server e uso do espaço de partição

    Índice do SQL Server e uso do espaço de partição


    Por: Aaron Bertrand | Atualizado: 2020-05-04 | Comentários | Palavras-chave: 1 | 2 Mais> Administração de banco de dados
    Problema

    Recentemente, em

    Uso do espaço de arquivos e grupos de arquivos do SQL Server – Parte 1, escrevi sobre como aprimorar o
    nossa maneira de ver as informações sobre tabelas grandes, bem como os arquivos e grupos de arquivos
    que os contêm. O problema que temos hoje é que existem algumas consultas
    pode ser necessário analisar completamente um cenário, mas montá-los em um único local pode
    ser pesado.

    Solução

    Eu queria continuar a discussão anterior aprimorando minhas consultas iniciais com
    informações adicionais sobre índices e partições. Se você se lembra, tivemos uma mesa
    chamado PartExample, que tinha um cluster particionado
    chave e pelo menos um índice não agrupado que não estava alinhado pela partição. A saída
    da minha consulta inicial não tornou óbvio que qualquer dado da tabela
    estava no grupo de arquivos principal:

    Para começar, eu gostaria de ver algo assim; uma tabela dinâmica com uma coluna
    para cada índice e o espaço (em MB) que o índice ocupa em cada arquivo:

    Isso ainda indica que um dos meus arquivos tem o tamanho errado, mas também mostra
    que as porcentagens de preenchimento estão desativadas, que o índice de cluster não possui linhas na segunda
    no grupo de arquivos Part4 e que
    O ix_dt foi criado acidentalmente no
    Grupo de arquivos PRIMÁRIO. Mas como obtenho esses resultados?

    Posso pré-agregar o tamanho por arquivo da função de gerenciamento dinâmico,
    sys.dm_db_database_page_allocations (que, reconhecidamente,

    Eu aviso sobre o uso excessivo em uma dica anterior):

    DECLARE @object_id int = OBJECT_ID(N'PartExample');
    SELECT 
      FileID  = extent_file_id,
      IndexID = index_id,
      SizeMB  = CONVERT(decimal(18,2), COUNT(allocated_page_page_id)*8.192/1024)
    FROM sys.dm_db_database_page_allocations(DB_ID(), @object_id, NULL, NULL, N'LIMITED')
    GROUP BY extent_file_id, index_id;

    Resultados:

    Definitivamente, parece algo que poderíamos virar de lado, girando manualmente
    usando IndexID (e como sabemos o valor correspondente
    nomes, podemos definir facilmente os cabeçalhos das colunas):

    DECLARE @object_id int = OBJECT_ID(N'PartExample'); ;WITH dist AS
    (
      SELECT
        FileID  = extent_file_id,
        IndexID = index_id,
        SizeMB  = CONVERT(decimal(18,2),COUNT(allocated_page_page_id)*8.192/1024)
      FROM sys.dm_db_database_page_allocations(DB_ID(), @object_id, NULL, NULL, N'LIMITED') AS pa
      GROUP BY extent_file_id, index_id
    )
    SELECT
      p.FileID,
      [cix_pe (index_id = 1)] = p.[1],
      [ix_dt (2)]             = p.[2]
    FROM dist PIVOT (SUM(SizeMB) FOR IndexID IN ([1],[2])) AS p; read more

    Atualização do My Home Lab para o vSphere 7.0 |

    Minha implantação séria do laboratório doméstico


    =&0=&

    Como você sabe, a VMware lançou há algumas semanas o vSphere 7.0. Portanto, foi para mim uma etapa quase obrigatória atualizar meu sério Home Lab de 6,7 U3 para 7,0. Nesta postagem do blog, quero descrever as etapas necessárias e com quais problemas tive que lidar.

    O My Home Lab consiste em um Cluster de computação com 3 servidores HP DL380 G8 (que são ocasionalmente ligados) e um Cluster de gerenciamento com 2 servidores Dell R210 II antigos, sempre em funcionamento. Vamos dar uma olhada agora em como atualizei os dois clusters. read more