Salut,

Juste pour savoir, au niveau de la rapidité, as tu pensé à utiliser Crystal
: http://crystal-lang.org/. À priori, ça me semble un bon outil pour la
rapidité tout en gardant l'élégance de Ruby. Par contre, ce n'est pas
encore très stable.

Bye,
Guirec.

Le 10 novembre 2015 04:28, Florian Dutey <fdu...@gmail.com> a écrit :

> Ca repond carrement. Merci beaucoup :)
>
> 2015-11-10 16:38 GMT+08:00 Thibaut Barrère <thibaut.barr...@gmail.com>:
>
>> Je sais pas si le sens en japonais est aussi precis, mais en chinois,
>>> c'est "dent" sans plus de precision (il est employe dans "se brosser les
>>> dents" par exemple). Du coup, j'avais interprete ca en mode "macher les
>>> donnees". J'etais pas si loin.
>>>
>>
>> Oui c'est l'idée!
>>
>>
>>> Sympa la pres' sinon.
>>>
>>
>> Merci :-)
>>
>>
>>> Mais je me demande (question utile cette fois): Le code est clairement
>>> super modulaire et c'est tres appreciable (c'est le point que tu mets en
>>> avant) mais ruby en soit est pas super rapide pour ce genre d'operations.
>>> Qu'est-ce que ca donne sur des gros volumes de donnees? As-tu des
>>> comparaisons avec d'autres solutions? Est-ce que tu es capable de donner un
>>> ratio "temps d'execution" par rapport aux "gains de productivite" et/ou
>>> "maintenabilite du code"?
>>>
>>
>> La cible est plutôt les datasets de taille moyenne (donc quelques
>> centaines de Mo à quelques Go par "nuit", voire plus selon le type de
>> traitement) que des gros volumes. Cela dit on peut optimiser de plusieurs
>> façons, notamment en détectant les boucles critiques et en déléguant le
>> traitement de certaines choses aux outils pertinents sur ces boucles (ex:
>> utiliser le bulk load de votre database destination, utiliser freebcp pour
>> exporter des gros volumes de données de SQLServer, appeler des outils comme
>> "embulk" à certaines phases du traitement etc), tout en gardant le contrôle
>> du work-flow global avec Ruby ce qui apporte beaucoup de souplesse.
>>
>> On peut également paralléliser le traitement (que ça soit avec un dév
>> custom, lancer N processes, ou encore avec le prototype Kiba Pro d'engine
>> multi-threadé qui permet de lancer le même job en mode multi-cores,
>> efficace même sur MRI lorsqu'on a des tâches qui sont "IO bound"), si c'est
>> pertinent.
>>
>> J'ai remarqué par ailleurs qu'il est fréquent de surestimer le volume à
>> traiter dans nos données (j'avais mentionné ça à Rulu en 2012 dans un
>> autre talk <https://youtu.be/LW863DOXqZQ?t=16m2s>), donc on a parfois de
>> bonnes surprises quant au débit obtenu :-)
>>
>> Pour les cas où le débit brut est absolument essentiel (centaines de Go
>> par jour, To etc), il est préférable d'utiliser d'autres solutions (et je
>> travaille aussi avec d'autres outils que Ruby pour ça, creusant
>> actuellement le big data etc etc).
>>
>> En conclusion, on peut travailler sur des volumes de données de taille
>> raisonnable (notamment dans mon cas, je travaille souvent avec des startups
>> SaaS en B2B, où le ratio "valeur de la data / coût du traitement" est plus
>> important qu'en B2C, et ou les sources de données sont souvent du http où
>> ruby n'est plus le bottleneck), tout en gardant un fort niveau de qualité.
>>
>> J'espère que ça répond correctement à ta question!
>>
>> Thibaut
>> --
>> http://thibautbarrere.com/
>>
>>
>>
>>
>>>
>>> 2015-11-10 14:34 GMT+08:00 Thibaut Barrère <thibaut.barr...@gmail.com>:
>>>
>>>> Hello Florian,
>>>>
>>>> J'ai une question inutile.
>>>>> Etant donne que le HanZi veut dire "dent", est-ce le nom que tu
>>>>> voulais donner a ta gem? Si oui, pourquoi?
>>>>>
>>>>
>>>> C'est bien le nom que je voulais donner (enfin plutôt "croc" dont j'ai
>>>> vu souvent que c'était la signification plus précise).
>>>>
>>>> Quand je travaille sur des données, j'ai souvent l'impression qu'il
>>>> faut un peu "tailler dedans", creuser, etc; voilà un peu le lien même s'il
>>>> n'est pas primordial, le nom est court et facile à retenir et ça m'allait
>>>> bien également :-)
>>>>
>>>> -- Thibaut
>>>>
>>>> --
>>>> --
>>>> Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance"
>>>> de Google Groups.
>>>> Pour transmettre des messages à ce groupe, envoyez un e-mail à
>>>> l'adresse railsfrance@googlegroups.com
>>>> Pour résilier votre abonnement envoyez un e-mail à l'adresse
>>>> railsfrance-unsubscr...@googlegroups.com
>>>> ---
>>>> Vous recevez ce message, car vous êtes abonné au groupe Google Groupes
>>>> "Railsfrance".
>>>> Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le
>>>> concernant, envoyez un e-mail à l'adresse
>>>> railsfrance+unsubscr...@googlegroups.com.
>>>> Pour obtenir davantage d'options, consultez la page
>>>> https://groups.google.com/d/optout.
>>>>
>>>
>>> --
>>> --
>>> Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance"
>>> de Google Groups.
>>> Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse
>>> railsfrance@googlegroups.com
>>> Pour résilier votre abonnement envoyez un e-mail à l'adresse
>>> railsfrance-unsubscr...@googlegroups.com
>>> ---
>>> Vous recevez ce message, car vous êtes abonné au groupe Google Groupes
>>> "Railsfrance".
>>> Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le
>>> concernant, envoyez un e-mail à l'adresse
>>> railsfrance+unsubscr...@googlegroups.com.
>>> Pour obtenir davantage d'options, consultez la page
>>> https://groups.google.com/d/optout.
>>>
>>
>> --
>> --
>> Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance"
>> de Google Groups.
>> Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse
>> railsfrance@googlegroups.com
>> Pour résilier votre abonnement envoyez un e-mail à l'adresse
>> railsfrance-unsubscr...@googlegroups.com
>> ---
>> Vous recevez ce message, car vous êtes abonné au groupe Google Groupes
>> "Railsfrance".
>> Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le
>> concernant, envoyez un e-mail à l'adresse
>> railsfrance+unsubscr...@googlegroups.com.
>> Pour obtenir davantage d'options, consultez la page
>> https://groups.google.com/d/optout.
>>
>
> --
> --
> Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de
> Google Groups.
> Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse
> railsfrance@googlegroups.com
> Pour résilier votre abonnement envoyez un e-mail à l'adresse
> railsfrance-unsubscr...@googlegroups.com
> ---
> Vous recevez ce message, car vous êtes abonné au groupe Google Groupes
> "Railsfrance".
> Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le
> concernant, envoyez un e-mail à l'adresse
> railsfrance+unsubscr...@googlegroups.com.
> Pour obtenir davantage d'options, consultez la page
> https://groups.google.com/d/optout.
>

-- 
-- 
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de 
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse 
railsfrance@googlegroups.com
Pour résilier votre abonnement envoyez un e-mail à l'adresse 
railsfrance-unsubscr...@googlegroups.com
--- 
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes 
Railsfrance.
Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le concernant, 
envoyez un e-mail à l'adresse railsfrance+unsubscr...@googlegroups.com.
Pour plus d'options, visitez le site https://groups.google.com/d/optout .

Répondre à