Como estimar o tamanho de um banco de dados SQL Server CE ou o SQL Server 2005 Mobile Edition

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 827968
Sumário
Este artigo descreve como estimar o tamanho de um banco de dados Microsoft SQL Server 2000 Windows CE Edition ou um banco de dados do Microsoft SQL Server 2005 Mobile Edition. No entanto, essa estimativa não pode ser determinada com precisão real por causa das seguintes razões:
  • O tamanho da tabela de sistema pode variar, especialmente quando você usa o SQL Server 2005 Mobile Edition ou SQL Server CE sincronização.
  • A estimativa não leva em conta para o espaço é obtido por índices.
  • Para simplificar, a estimativa pressupõe que a linha contígua armazenamento (isto é, após compactar um banco de dados). SQL Server CE ou o SQL Server 2005 Mobile Edition armazena linhas em páginas de 4 KB e ele não dividir linhas em páginas, exceto para tipos de dados texto e ntext . Porque todas as páginas não são sempre preenchidas, existe algum espaço não utilizado em páginas individuais. Além disso, se uma página com linhas e algumas dessas linhas são excluídas, o espaço para as linhas excluídas não é reclamado até que o banco de dados é compactado. Se todas as linhas em uma página forem excluídas, a página é recuperada posteriormente.
  • O comprimento de alguns tipos de dados pode variar dependendo os dados que eles contêm, incluindo os tipos de dados nvarchar e ntext . Ao estimar o tamanho de uma coluna, a estimativa se baseia o tamanho máximo de coluna, não no tamanho real dos dados que são armazenados na coluna. Por exemplo, se uma coluna tiver um tipo de dados de nvarchar(50) e tem um valor de "Hello", o tamanho real da coluna é de 5 bytes, mas o tamanho estimado é 50 bytes.
Mais Informações
Ao estimar o tamanho de uma tabela ou de um banco de dados, considere as seguintes informações:
  • Cada linha na tabela tem uma sobrecarga de 6 bytes.
  • Cada coluna na tabela tem uma sobrecarga de 1 byte, além de 1 byte para cada 256 bytes de armazenamento de linha.
  • Tipos de dados de comprimento fixo têm uma sobrecarga de 1 byte para cada coluna e a sobrecarga é arredondada para o próximo byte superior.
  • Seqüência de caracteres com comprimento zero colunas ocupam 1 byte na linha.
  • SQL Server CE ou o SQL Server 2005 Mobile Edition armazena dados em formato Unicode. Se a seqüência de agrupamento que é usada para criar o banco de dados for que um caractere de byte duplo definir idioma (DBCS) (como kanji), o tamanho das colunas seqüência de caracteres é duplicado porque cada byte é armazenado como 2 bytes. Se a seqüência de agrupamento que é usada para criar o banco de dados é que um byte único conjunto de caracteres (SBCS) idioma (como o inglês), o SQL Server CE removerá o byte não utilizado à esquerda. Como resultado, SBCS seqüências de agrupamento são estimadas como 1 byte para cada caractere.
  • Se as tabelas do SQL Server CE ou as tabelas do SQL Server 2005 Mobile Edition são usadas na replicação de mesclagem, há três colunas do sistema para cada tabela.
  • Se as tabelas do SQL Server CE ou as tabelas do SQL Server 2005 Mobile Edition participam de dados remoto (RDA Access), há 2 colunas do sistema para cada tabela.
A tabela a seguir descreve os tipos de dados no SQL Server CE e o tamanho do armazenamento para cada tipo de dados.
Tipo de dadosDescrição
bigint Dados de número inteiro (número inteiro) de-2 ^ 63 (- 9,223,372,036,854,775,808) a 2 ^ 63-1 (9.223.372.036.854.775.807). O tamanho de armazenamento é 8 bytes.
número inteiro Dados de número inteiro (número inteiro) de-2 ^ 31 (-2.147.483.648) até 2 ^ 31-1 (2.147.483.647). O tamanho de armazenamento é 4 bytes.
smallint Dados de número inteiro de – 32.768, 768 a 32.767. O tamanho de armazenamento é 2 bytes.
tinyint Dados de número inteiro de 0 a 255. O tamanho de armazenamento é 1 byte.
bit Dados de número inteiro com um valor 1 ou 0.
numérico (p, s) Dados de precisão fixa e escala numérica de -10 ^ 38 + 1 a 10 ^ 38? 1. p Especifica a precisão e pode variar entre 1 e 38. s Especifica a escala e podem variar entre 0 e mi numérico sempre usa bytes 19, independentemente de sua precisão e escala.
dinheiro Valores de dados monetários de-2 ^ 63 (- 922,337,203,685,477.5808) a 2 ^ 63-1 (922.337.203.685.477,5807), com uma precisão de dez milésimos de uma unidade monetária. O tamanho de armazenamento é 8 bytes.
float Ponto flutuante número o armazenamento de dados de - 1, 79E + 308 a 1, 79E + 308 tamanho é de 8 bytes.
real Flutuante dados de números de precisão de - 3, 40E + 38 a 3, 40E + 38.
Data e hora Dados de data e hora de 1 de janeiro de 1753 a 31 de dezembro de 9999, com uma precisão de três centésimo de um segundo ou 3,33 milissegundos. Os valores são arredondados para incrementos de.000,.003 ou.007 milissegundos. Armazenados como inteiros de 4 bytes dois. Os primeiros 4 bytes armazenar o número de dias antes ou após a data base (1 º de janeiro de 1900). A data base é a data de referência do sistema. Não são permitidos valores de datetime anteriores a 1 º de janeiro de 1753. Os 4 bytes armazenar a hora do dia como o número de milissegundos após a meia-noite. Segundos tem um intervalo válido de 0 a 59.
character(n) nacional Sinônimo: nchar(n) Dados de Unicode de comprimento fixo com um comprimento máximo de 255 caracteres. O comprimento padrão é 1. O tamanho de armazenamento, em bytes, é duas vezes o número de caracteres inseridos.
caractere nacional varying(n) Sinônimo: nvarchar (n) Dados de Unicode de comprimento variável com um comprimento de 1 a 255 caracteres. O comprimento padrão é 1. O tamanho de armazenamento, em bytes, é duas vezes o número de caracteres inseridos.
ntext Dados de Unicode de comprimento variável com um comprimento máximo de (2 ^ 30-2) / 2 (536,870,911) caracteres. O tamanho de armazenamento, em bytes, é duas vezes o número de caracteres inseridos.
Binary(n) Dados binários de comprimento fixo com um comprimento máximo de bytes 510. O comprimento padrão é 1.
varbinary(n) Dados binários de comprimento variável com um comprimento máximo de bytes 510. O comprimento padrão é 1.
imagem Dados binários de comprimento variável com um comprimento máximo de 2 ^ 30 – 1 (1.073.741.823) bytes.
identificador exclusivo UM GUID. Tamanho de armazenamento é 16 bytes.
IDENTITY [(s, i)]Esta é uma propriedade de uma coluna de dados, não um tipo de dados distintos. Somente colunas de dados dos tipos de dados inteiro podem ser usadas para colunas de identidade. Uma tabela pode ter somente uma coluna de identidade. Uma propagação e incremento podem ser especificados e a coluna não pode ser atualizada. s (propagação) = valor inicial i (incremento) = valor de incremento.
ROWGUIDCOLEsta é uma propriedade de uma coluna de dados, não um tipo de dados distintos. Esta é uma coluna em uma tabela que é definida usando o tipo de dados uniqueidentifier . Uma tabela só pode ter uma coluna ROWGUIDCOL.

Se você estiver usando o SQL Server 2005 Mobile Edition

Para obter mais informações sobre os tipos de dados no SQL Server 2005 Mobile Edition, consulte "Tipos de dados" tópico nos manuais online do SQL Server 2005.

Nas seguintes situações, o tamanho de uma tabela é estimado dependendo do tipo da coluna, o número de linhas, o agrupamento e o tipo de sincronização de dados.

Cenário 1

Nesse cenário, o tamanho da tabela myTableA1 é estimado. A tabela tem as seguintes características:
  • A tabela myTableA1 tem 10.000 linhas.
  • A tabela myTableA1 é criada com o agrupamento inglês padrão e a tabela não usa qualquer forma de sincronização do SQL Server CE.
A tabela a seguir descreve o tipo de cada coluna na tabela myTableA1 e o número de bytes ocupada por cada coluna.
ColunaTipo de dadosTamanho em bytes Bytes de sobrecarga
1 nvarchar 251
2 nchar 251
3 bigint 81
4 Data e hora 81
n/d sobrecarga n/d6
Totais6610
O tamanho total de cada linha na tabela myTableA1 é 76 (66 + 10) bytes. Porque a tabela possui 10.000 linhas, o tamanho total da tabela myTableA1 é 760,000 bytes (76 * 10, 000). Como o cálculo leva em consideração o tamanho máximo do tipo de dados nvarchar , isso é apenas uma estimativa do tamanho da tabela. O tamanho real da tabela pode variar dependendo do valor que é armazenado no tipo de dados nvarchar .

Observação Se os valores de dados de uma coluna são esperados para variar consideravelmente, você deve usar o tipo de dados nvarchar para reduzir o tamanho do banco de dados.

Cenário 2

Nesse cenário, o tamanho da tabela myTableA2 é estimado. A tabela tem as seguintes características:
  • A tabela myTableA2 tem 91 linhas.
  • A tabela myTableA2 é criada com o agrupamento inglês padrão e a tabela é usada na replicação de mesclagem.
A tabela a seguir descreve o tipo de cada coluna na tabela myTableA2 e o número de bytes ocupada por cada coluna.
ColunaTipo de dadosTamanho em bytes Bytes de sobrecarga
CustomerID nvarchar 51
CompanyName nvarchar 401
ContactName nvarchar 301
TítuloDoContato nvarchar 301
endereço nvarchar 601
Cidade nvarchar 151
região nvarchar 151
CEP nvarchar 101
País nvarchar 151
telefone nvarchar 241
fax nvarchar 241
n/d despesas de linha n/d6
n/d sobrecarga de maior que 256 bytesn/d1
n/d número inteiro para replicação41
n/d UniqueIdentifier para replicação161
n/d binário 241
Totais312 21
O tamanho total de cada linha da tabela myTableA2 é 333 (312 + 21) bytes. Como a tabela tem 91 linhas, o tamanho total da tabela myTableA2 é 30,303 bytes. Porque o tamanho real dos valores de coluna de seqüência de caracteres não é conhecido, esse tamanho é apenas uma estimativa.

Cenário 3

Nesse cenário, o tamanho da tabela myTableA3 é estimado. A tabela participa de RDA e tem as seguintes características:
  • A tabela myTableA3 tem 91 linhas.
  • A tabela myTableA3 é criada com o agrupamento inglês padrão e esta tabela possui as colunas de chaves primária porque eles são usados como parte de uma das colunas do sistema é controlado para RDA.
A tabela a seguir descreve o tipo de cada coluna na tabela myTableA3 e o número de bytes ocupada por cada coluna.
ColunaTipo de dadosTamanho em bytes Bytes de sobrecarga
CustomerID (PK) nvarchar 51
CompanyName (PK) nvarchar 401
ContactName nvarchar 301
TítuloDoContato nvarchar 301
endereço nvarchar 601
Cidade nvarchar 151
região nvarchar 151
CEP nvarchar 101
País nvarchar 151
telefone nvarchar 241
fax nvarchar 241
n/d despesas de linha n/d6
n/d sobrecarga de maior que 256 bytesn/d1
n/d número inteiro para RDA41
n/d binário para RDA (4 bytes para cada coluna em colunas de chave primária mais bytes do valor da coluna se a chave primária for alterado; caso contrário, 1 byte)53/1
Totais325/27320
Se a chave primária é alterada, o tamanho total da tabela é 345 (325 + 20) bytes para cada linha. Porque a tabela myTableA3 possui 91 linhas, o tamanho da tabela é 31,395 bytes. Se a chave primária não for alterada, o tamanho total da tabela é 293 (273 + 20) bytes para cada linha. Porque a tabela myTableA3 possui 91 linhas, o tamanho da tabela é 26.663 bytes. Como o tamanho real dos valores de coluna de seqüência de caracteres não é conhecido, isso é apenas uma estimativa.

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 827968 - Última Revisão: 11/20/2007 17:09:34 - Revisão: 4.7

Microsoft SQL Server 2000 Windows CE Edition 2.0, Microsoft SQL Server 2000 Windows CE Edition 1.1, Microsoft SQL Server 2000 Windows CE Edition, Microsoft SQL Server 2005 Compact Edition

  • kbmt kbtable kbdatabase kbinfo KB827968 KbMtpt
Comentários