Qualquer pequeno processamento de banco de dados pode ser facilmente enfrentado por scripts Python / Perl / ..., que usam bibliotecas e / ou utilitários da própria linguagem. No entanto, quando se trata de desempenho, as pessoas tendem a buscar linguagens C / C ++ / de baixo nível. A possibilidade de adaptar o código às necessidades parece ser o que torna essas linguagens tão atraentes para o BigData - seja sobre gerenciamento de memória, paralelismo, acesso ao disco ou até otimizações de baixo nível (por meio de construções de montagem no nível C / C ++).
É claro que esse conjunto de benefícios não teria um custo: escrever o código e, às vezes, até reinventar a roda , pode ser bastante caro / cansativo. Embora existam muitas bibliotecas disponíveis, as pessoas tendem a escrever o código sozinhas sempre que precisam conceder desempenho. O que desativa as asserções de desempenho do uso de bibliotecas durante o processamento de bancos de dados grandes?
Por exemplo, considere uma empresa que rastreia continuamente páginas da Web e analisa os dados coletados. Para cada janela deslizante, algoritmos diferentes de mineração de dados são executados com os dados extraídos. Por que os desenvolvedores desistiram de usar as bibliotecas / estruturas disponíveis (seja para rastreamento, processamento de texto e mineração de dados)? Usar coisas já implementadas não apenas aliviaria o ônus da codificação de todo o processo, mas também pouparia muito tempo.
Em um único tiro :
- o que torna a escrita do código uma garantia de desempenho?
- por que é arriscado confiar em estruturas / bibliotecas quando você deve garantir alto desempenho?