Любая небольшая обработка базы данных может быть легко решена с помощью скриптов Python / Perl / ..., которые используют библиотеки и / или даже утилиты из самого языка. Тем не менее, когда дело доходит до производительности, люди склонны обращаться к языкам C / C ++ / низкого уровня. Кажется, что возможность адаптировать код к потребностям делает эти языки такими привлекательными для BigData - будь то управление памятью, параллелизм, доступ к диску или даже низкоуровневая оптимизация (посредством сборочных конструкций на уровне C / C ++).
Конечно, такой набор преимуществ не обойдется без затрат: написание кода, а иногда и повторное изобретение колеса может быть довольно дорогим / утомительным. Хотя существует множество доступных библиотек, люди склонны сами писать код всякий раз, когда им нужно обеспечить производительность. Что мешает утверждениям производительности использовать библиотеки при обработке больших баз данных?
Например, рассмотрим предприятие, которое непрерывно сканирует веб-страницы и анализирует собранные данные. Для каждого скользящего окна различные извлеченные алгоритмы запускаются на извлеченных данных. Зачем разработчикам отказываться от использования доступных библиотек / фреймворков (будь то сканирование, обработка текста и анализ данных)? Использование уже реализованного материала не только облегчит бремя кодирования всего процесса, но и сэкономит много времени.
В одном кадре :
- что делает написание кода самостоятельно гарантией производительности?
- почему рискованно полагаться на фреймворки / библиотеки, когда нужно обеспечить высокую производительность?