Cualquier procesamiento de base de datos pequeño puede ser abordado fácilmente por scripts Python / Perl / ..., que usan bibliotecas y / o incluso utilidades del lenguaje mismo. Sin embargo, cuando se trata de rendimiento, las personas tienden a buscar C / C ++ / lenguajes de bajo nivel. La posibilidad de adaptar el código a las necesidades parece ser lo que hace que estos lenguajes sean tan atractivos para BigData, ya sea en relación con la administración de memoria, el paralelismo, el acceso al disco o incluso las optimizaciones de bajo nivel (a través de construcciones de ensamblaje en el nivel C / C ++).
Por supuesto, este conjunto de beneficios no tendría un costo: escribir el código y, a veces, incluso reinventar la rueda , puede ser bastante costoso / agotador. Aunque hay muchas bibliotecas disponibles, las personas se inclinan a escribir el código por sí mismas cuando necesitan otorgar rendimiento. ¿Qué deshabilita las afirmaciones de rendimiento del uso de bibliotecas al procesar grandes bases de datos?
Por ejemplo, considere una empresa que rastrea continuamente páginas web y analiza los datos recopilados. Para cada ventana deslizante, se ejecutan diferentes algoritmos de minería de datos sobre los datos extraídos. ¿Por qué los desarrolladores dejarían de usar las bibliotecas / marcos disponibles (ya sea para rastreo, procesamiento de texto y minería de datos)? Usar cosas ya implementadas no solo aliviaría la carga de codificar todo el proceso, sino que también ahorraría mucho tiempo.
En un solo disparo :
- ¿Qué hace que escribir el código por sí mismo sea una garantía de rendimiento?
- ¿Por qué es arriesgado confiar en marcos / bibliotecas cuando debe garantizar un alto rendimiento?