Qualsiasi elaborazione di database di piccole dimensioni può essere facilmente gestita dagli script Python / Perl / ..., che utilizza librerie e / o persino utilità dal linguaggio stesso. Tuttavia, quando si tratta di prestazioni, le persone tendono a cercare linguaggi C / C ++ / di basso livello. La possibilità di adattare il codice alle esigenze sembra essere ciò che rende questi linguaggi così attraenti per BigData - che si tratti di gestione della memoria, parallelismo, accesso al disco o persino ottimizzazioni di basso livello (tramite costrutti di assemblaggio a livello C / C ++).
Ovviamente un tale insieme di vantaggi non verrebbe senza costi: scrivere il codice e talvolta reinventare la ruota può essere piuttosto costoso / noioso. Sebbene siano disponibili molte librerie, le persone sono inclini a scrivere il codice da sole ogni volta che devono garantire prestazioni. Cosa disabilita le asserzioni sulle prestazioni dall'uso delle librerie durante l'elaborazione di database di grandi dimensioni?
Ad esempio, considera un'impresa che esegue continuamente la scansione delle pagine Web e analizza i dati raccolti. Per ogni finestra scorrevole, diversi algoritmi di data mining vengono eseguiti sui dati estratti. Perché gli sviluppatori dovrebbero abbandonare l'uso delle librerie / framework disponibili (sia per la scansione, l'elaborazione del testo e il data mining)? L'uso di cose già implementate non solo alleggerirebbe l'onere della codifica dell'intero processo, ma risparmierebbe anche molto tempo.
In un solo colpo :
- cosa rende la scrittura del codice una garanzia di rendimento?
- perché è rischioso affidarsi a un framework / librerie quando è necessario garantire prestazioni elevate?