Tenho um problema ao decidir como armazenar esses dados no meu banco de dados. Alguma sugestão sobre a melhor maneira de fazê-lo? Eu não sei muito sobre bancos de dados, devo acrescentar.
Eu tenho os dados no formato formatado, mas, em vez de 4, o número de colunas é de aproximadamente 240, portanto, cada data tem 240 valores exclusivos associados:
Date/Time 200,00 202,50 205,00
2010.11.12 13:34:00 45,8214 43,8512 41,5369
2010.11.12 13:35:00 461,9364 454,2612 435,5222
Além disso, as linhas são associadas ao DataSites.
Meu primeiro pensamento foi ter uma tabela como esta: DataID (pk), DataSiteID, ParameterID, Date, Value, com um índice em DataSite, Parameter e Date. O ParameterID refere-se a outra tabela que armazena os cabeçalhos da coluna de entrada (200,00 202,50 205,00 ...).
Meu segundo pensamento foi simplesmente ter uma mesa com todas as 240 colunas ímpares. Eu vim com algumas outras maneiras, mas elas também são bastante insatisfatórias.
O problema que tenho com a minha primeira solução (não é um problema tão grande, mas não gosto disso) é que o Date e DataSiteID serão repetidos para todos os 240 valores nessa linha de entrada, portanto, usa um pouco de espaço extra.
Serão recebidos cerca de 40 GB de dados por ano (no formato de texto acima), e os dados serão pesquisados por DataSite, Parâmetro e Data. A quantidade de dados recebidos provavelmente quadruplicará em um ano ou mais.
Alguma boa ideia? Obrigado James
editar: trata-se de dados de séries temporais, com as colunas sendo medidas em diferentes comprimentos de onda. Os dados deverão ser analisados dentro de uma faixa relativamente estreita de comprimentos de onda. Também pode haver comprimentos de onda extras adicionados em algum momento no futuro.
edit: Obrigado pelas respostas pessoal, eu realmente aprecio :) Acho que provavelmente encontro tempo para executar algumas experiências com 500 GB ou mais de dados de teste. Vou postar de volta com todas as conclusões;)