Простой Python. современный стиль программирования - читать онлайн бесплатно полную версию книги . Страница 307

являются интерфейсами для общедоступных API различных служб. Вам могут

быть интересны примеры, связанные с бизнес-задачами:

 отправка через Fedex (https://github.com/gtaylor/python-fedex) или UPS (https://

github.com/openlabs/PyUPS);

 отправка почты с помощью API stamps.com (https://github.com/jzempel/stamps);

 прочтите дискуссию о применении Python для корпоративного интеллекта

(http://bit.ly/py-biz);

 если кофемашины слетают с полок в Аноке, это результат действий покупателя

или полтергейст? Cubes — это веб-сервер и браузер данных Online Analytical

Processing (OLAP) (http://cubes.databrewery.org/);

 OpenERP — это крупная коммерческая система Enterprise Resource Planning

(ERP) (https://www.openerp.com/), написанная с помощью Python и JavaScript,

содержащая тысячи модулей-надстроек.

Обработка бизнес-данных

Бизнес очень любит данные. К сожалению, во многих отраслях бизнеса с данными

принято обращаться очень своеобразно, словно чтобы специально усложнить вам

работу.

Электронные таблицы стали хорошим изобретением, и с течением времени

бизнес пристрастился к ним. Многие непрограммисты стали заниматься програм-

мированием, поскольку эти таблицы стали называть макросами, а не программами.

Но Вселенная постоянно расширяется, и данные пытаются выдержать ее темп. Более

старые версии Excel были ограничены 65 536 рядами, а более новые не могли обра-

ботать больше миллиона. Когда данные организаций переросли один компьютер,

ситуация стала похожа на то, как если бы штат перерос сотню человек, — внезапно

вам становятся нужны новые слои, промежуточные уровни и коммуникация.

398

Приложение Б. За работой

Программы, работающие с большим количеством данных, появились не из-за

того, что данные на одном компьютере значительно разрослись, — они стали ре-

зультатом попытки обобщить все данные, появляющиеся в бизнесе. Реляционные

базы данных обрабатывают миллионы рядов, не взрываясь при этом, но они могут

работать только с определенным количеством рядов или обновлений за раз. Старые

добрые текстовые или бинарные файлы могут занимать гигабайты памяти, но если

вам нужно обработать их все одновременно, требуется иметь достаточное количе-

ство памяти. Традиционное программное обеспечение для этого не подходит.

Компаниям вроде Google и Amazon пришлось изобрести решения, позволяющие

работать с данными такого масштаба. Netflix — это пример такого решения, создан-

ный в облаке AWS от Amazon, который использует Python для объединения RESTful

API, безопасности, развертывания и баз данных.

Извлечение, преобразование и загрузка

Подводные части айсбергов данных содержат всю работу по получению данных.

Если говорить языком бизнеса, распространенными терминами являются «извле-

чение», «преобразование», «загрузка» (extract, transform, load, ETL). Синонимы

вроде «выпас данных» могут создать впечатление, будто вы приручаете непокор-

ного зверя — такая метафора может оказаться близкой. Эта задача может показать-

ся решенной с точки зрения инженерии, но по большей части это искусство. Мы

рассмотрим науку о данных более подробно в приложении В, поскольку именно

на эту область разработчики тратят большую часть времени.

Если вы видели фильм «Волшебник страны Оз», то, помимо летающих обезьян,

должны помнить фрагмент в конце, когда добрая волшебница сказала Дороти, что