Execução paralela do script bash

7

Eu tenho uma tabela URL_Experiment no meu banco de dados ( banco de dados mySQL ). Eu tenho 2 milhões de links de URL nesta tabela.

Para cada URL, estou verificando se algum texto específico está presente no URL e atualizando as informações de volta na minha tabela URL_Experiment .

Agora, preciso fazer o script ser executado rapidamente. A solução fácil que me vem à mente é:

divida o URL_Experiment em 10 tabelas (cada uma com 200.000 linhas) e execute o script 10 vezes simultaneamente. Dessa forma, posso garantir que as atualizações aconteçam corretamente. Mas para isso, eu preciso salvar 10 scripts, cada um acessando a tabela correta (eu preciso renomear as tabelas de 1 a 10).

Embora o acima pareça uma solução bem legal, estou procurando uma solução mais sofisticada. Algo que irá executar o mesmo script simultaneamente (em paralelo) como 10 processos. Minha preocupação é o tempo de execução. Eu não quero que os recursos sejam desperdiçados quando eles podem ser utilizados.

    
por Ramesh 12.02.2014 / 23:50

1 resposta

6

Você pode experimentar o GNU paralelo. Muitos exemplos podem ser encontrados aqui e aqui .

Eu sou membro da equipe Swift e fazemos exatamente esse tipo de coisa para grandes projetos de pesquisa.

    
por 13.02.2014 / 01:13