none
Integration x Códificação RRS feed

  • Pergunta

  • Pessoal,

    me tirem uma dúvida.

    Vou realizar importações de arquivos com volume muito grande de registros.

    Estou pensando em fazer a entrada dos dados via C sharp para uma tabela de primeiro estágio e depois via procedure realizar os tratamentos e importar os dados para as tabelas correspondentes.

    Ou seja o C sharp vai ler o arquivo e separar as substrings e jogar em uma tabela e o resto fica na responsabilidade do banco.

    Ou seria melhor fazer a leitura do arquivo pelo Integration Services?

    Como eu teria um ganho de performace? 


    André Perpetuo

    quarta-feira, 18 de maio de 2016 15:29

Todas as Respostas

  • A vantagem do SSIS é que o fluxo fica todo detalhado em cada package, em cada task.
    A principal desvantagem é que pouca gente conhece Integration Services, então a solução em C# pode ser mais acessível e até baratear futuras intervenções - embora o próprio SSIS possui uma task de script (que pode ser VB ou C#).

    Minha preferência:

    • C# (Console, CSScript, Tarefa agendada - depende do que você precisa): Você vai evitar problemas de permissão do banco de dados como acesso a pastas e envio de e-mail.
    • Também acho desnecessário a sobrecarga do banco de dados para envio de E-mail.
    • O debug da aplicação em SSIS costuma ser demorado e consome muita memória do PC.
    • Você terá mais controle sobre a execução de cada ciclo de importação.

    Abs.

    quarta-feira, 18 de maio de 2016 17:13
  • Estou utilizando um arquivo para teste com 1.5 milhões de linhas.

    Para Poder fazer o insert no banco preciso primeiro fazer a separação das string com substring navegando em um array de string.

    lista<classe> classes = new....

    foreach(var linha in linhas) {

       clase.Nome = substring....

      classes.add(classe)

    }

    Esse processo de conversão está um pouco demorado e consumindo pouco mais de 1gb de memória.

    Existe alguma forma de melhorar o desempenho desse processo?

    Preciso reduzir o consumo e tempo desta operação.


    André Perpetuo

    quinta-feira, 19 de maio de 2016 17:46