R vs Python dans une boucle productive

Les astuces élégantes dans un ordinateur portable sur un ordinateur personnel (ordinateur portable) sont bonnes et intéressantes. Mais dès qu'il s'agit d'exécuter du code dans une boucle productive, de nombreuses restrictions apparaissent immédiatement sous la forme:







  • la quantité de fer disponible;
  • les exigences de performance;
  • la stabilité;
  • conformité aux exigences SI;
  • … (Ajoutez des épices au goût).


Aujourd'hui, en Russie, il y a une telle phase que le langage python se positionne comme une «balle d'argent» pour les tâches de science des données. Il semble qu'une telle thèse ait été avancée par ceux qui vendent des cours sur DS en python. Et puis le volant est parti. En général, c'est tout à fait normal - presque tous les processus du monde physique sont oscillatoires.







Mais, néanmoins, dans ce battage médiatique, ils sont un peu sous-entendus. Il y a un certain nombre de moments ennuyeux en python, même dans les tâches DS de base, qui compliquent grandement son utilisation dans un circuit productif.







Problème 1



Le nom de ce problème est BlockManager



. C'est l'un des piliers de l'architecture pandas



. Apparemment manifesté par le fait que:







  • la mémoire consomme «comme si elle n'était pas en elle-même»;
  • le temps d'exécution du code dépend des états précédents de l'interpréteur et de la séquence des opérations et peut varier de plusieurs ordres de grandeur.


, . .







, , :









2



pandas



+ sql



/spark



( — ) data.table



+ Clickhouse



( data.frame



). Database-like ops benchmark. , .







3



Story-telling . Literate Programming. . python



, , Rmarkdown



.









Il est clair que nos tendances sont formées par les cours et les exigences pour les postes vacants sur hh.ru. Mais si nous parlons de résoudre des problèmes pratiques dans une entreprise, l'utilisation du bundle R



+ Clickhouse



s'avère beaucoup plus rentable. Vous pouvez également ajouter à ce clip golang



, également un excellent outil.







Fin, sortez votre napalm.







cadre de dessin animé pour enfants







Publication précédente - "R, Monte Carlo and Enterprise Problems, Part 2" .








All Articles