Funcional versus modelos de programação processuais para big data
Quando as pessoas falam de mapa e reduzir em big data, eles fazem isso como operações dentro de um modelo de programação funcional. A programação funcional é uma das duas maneiras que desenvolvedores de software criem programas para solucionar problemas de negócios. O outro modelo é a programação procedural. Dê uma olhada rápida para entender as diferenças e ver quando é melhor usar um ou outro modelo.
programas processuais são altamente estruturadas e fornecem instruções passo a passo sobre o que fazer com os dados de entrada. A ordem de execução é importante, e os dados de entrada é alterada à medida que progride através de cada passo do programa. Exemplos de linguagens processuais incluem Fortran, COBOL, C, e C ++.
Os melhores usos para programas processuais são aqueles onde é bom para alterar os valores dos dados de entrada ou em que você precisa para comparar valores calculados em um dos passos para determinar se você precisa para continuar o processamento ou sair do programa e entregar o resultado.
Em contraste, os programas funcionais não mudam os dados introduzidos. Eles olham para todos os dados para padrões específicos e, em seguida, aplicar as regras para identificar os elementos importantes e depois montá-los em listas. A ordem do processamento não é importante porque cada operação é independente do outro. Os exemplos de linguagens funcionais incluem LISP, Esquema, Prolog, e R.
programas funcionais não mudam os dados de entrada e são mais frequentemente utilizados quando é necessário olhar para os dados novamente para diferentes padrões. Por exemplo, você pode olhar através de uma lista de todos os municípios nos Estados Unidos que votaram republicano na última eleição e depois percorrer a lista para todos os municípios democratas. Isto irá produzir duas listas de saída distintas.