Votre navigateur n'est pas compatible avec jmpress.js, vous avez donc une version dégradée de cette présentation.

Pour une meilleure experience, merci d'utiliser Chrome, Safari ou Firefox.

La BI au self-service de

Tech : "Est-ce que mon serveur de plan #4 est aussi bon que les autres ?"

Compta : "Combien l'application iPhone PJ demande-t-elle d'itinéraires piétons en une année ?"
Métier : "Est-ce que l'application iPhone 2.3 est encore utilisée ?"
"Sur quels terminaux ?"

Communication : "Où sont partis les bretons pendant les dernières vacances d'été ?"
Traitements lents (sup à 24h)
Interfaces peu ergonomiques
Stockage difficilement scalable
BlackBox
Flexible
Rapide
Scalable
Performant
Facile à prendre en main
Liberté sur les datas
Fun
Et puis...
Olivier me l'avait dit !
Pourrais tu me dire, pour chaque POI
 - Le nombre d'affichage en carte ?
 - Le nombre d'ouvertures de fiches ?
 - Le nombre de clics ?
 - ...
Pour 5 000 000 de POI,
 - au jour le jour,
 - sur deux ans...
Tableau
n'est pas
un outil BigData.

SELECT `sqlproxy`.`referer_groupe` AS `referer_groupe`, SUM(`sqlproxy`.`hit_count`) AS `sum_hit_count_ok`, (
CASE WHEN ( `sqlproxy`.`referer_groupe` = 'Mappy' )
THEN 'Mappy' WHEN ( `sqlproxy`.`referer_groupe` = 'Partenaires' )
THEN 'Partenaires' WHEN ( `sqlproxy`.`referer_groupe` = 'Solocal' )
THEN 'Solocal' ELSE 'UNKNOW' END ) AS `referer_groupe__groupe_`

FROM `default`.`bi_routemm_perf` `sqlproxy`

WHERE ( ( `sqlproxy`.`date` >= CASE WHEN (
IF ( UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') > 0, FROM_UNIXTIME(UNIX_TIMESTAMP(DATE_ADD(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT)), 'yyyy-MM-dd') + (UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') - UNIX_TIMESTAMP(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), 'yyyy-MM-dd')), 'yyyy-MM-dd HH:mm:ss'), DATE_ADD ( CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT) ) ) IS NOT NULL
AND -2 IS NOT NULL )

THEN FROM_UNIXTIME ( UNIX_TIMESTAMP(CONCAT((YEAR(IF(UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') > 0, FROM_UNIXTIME(UNIX_TIMESTAMP(DATE_ADD(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT)), 'yyyy-MM-dd') + (UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') - UNIX_TIMESTAMP(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), 'yyyy-MM-dd')), 'yyyy-MM-dd HH:mm:ss'), DATE_ADD(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT))))+FLOOR((MONTH(IF(UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') > 0, FROM_UNIXTIME(UNIX_TIMESTAMP(DATE_ADD(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT)), 'yyyy-MM-dd') + (UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') - UNIX_TIMESTAMP(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), 'yyyy-MM-dd')), 'yyyy-MM-dd HH:mm:ss'), DATE_ADD(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT))))+-2)/12)), CONCAT('-', CONCAT(LPAD(PMOD(MONTH(IF(UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') > 0, FROM_UNIXTIME(UNIX_TIMESTAMP(DATE_ADD(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT)), 'yyyy-MM-dd') + (UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') - UNIX_TIMESTAMP(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), 'yyyy-MM-dd')), 'yyyy-MM-dd HH:mm:ss'), DATE_ADD(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT))))+-2, 12), 2, '0'), SUBSTR(IF(UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') > 0, FROM_UNIXTIME(UNIX_TIMESTAMP(DATE_ADD(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT)), 'yyyy-MM-dd') + (UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') - UNIX_TIMESTAMP(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), 'yyyy-MM-dd')), 'yyyy-MM-dd HH:mm:ss'), DATE_ADD(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT))), 8)))), SUBSTR('yyyy-MM-dd HH:mm:ss',0,LENGTH(IF(UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') > 0, FROM_UNIXTIME(UNIX_TIMESTAMP(DATE_ADD(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT)), 'yyyy-MM-dd') + (UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') - UNIX_TIMESTAMP(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), 'yyyy-MM-dd')), 'yyyy-MM-dd HH:mm:ss'), DATE_ADD(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT)))))), 'yyyy-MM-dd HH:mm:ss' ) END )

AND ( `sqlproxy`.`date` < CASE WHEN (
IF ( UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') > 0, FROM_UNIXTIME(UNIX_TIMESTAMP(DATE_ADD(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT)), 'yyyy-MM-dd') + (UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') - UNIX_TIMESTAMP(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), 'yyyy-MM-dd')), 'yyyy-MM-dd HH:mm:ss'), DATE_ADD ( CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT) ) ) IS NOT NULL
AND 1 IS NOT NULL )

THEN FROM_UNIXTIME ( UNIX_TIMESTAMP(CONCAT((YEAR(IF(UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') > 0, FROM_UNIXTIME(UNIX_TIMESTAMP(DATE_ADD(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT)), 'yyyy-MM-dd') + (UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') - UNIX_TIMESTAMP(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), 'yyyy-MM-dd')), 'yyyy-MM-dd HH:mm:ss'), DATE_ADD(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT))))+FLOOR((MONTH(IF(UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') > 0, FROM_UNIXTIME(UNIX_TIMESTAMP(DATE_ADD(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT)), 'yyyy-MM-dd') + (UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') - UNIX_TIMESTAMP(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), 'yyyy-MM-dd')), 'yyyy-MM-dd HH:mm:ss'), DATE_ADD(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT))))+1)/12)), CONCAT('-', CONCAT(LPAD(PMOD(MONTH(IF(UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') > 0, FROM_UNIXTIME(UNIX_TIMESTAMP(DATE_ADD(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT)), 'yyyy-MM-dd') + (UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') - UNIX_TIMESTAMP(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), 'yyyy-MM-dd')), 'yyyy-MM-dd HH:mm:ss'), DATE_ADD(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT))))+1, 12), 2, '0'), SUBSTR(IF(UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') > 0, FROM_UNIXTIME(UNIX_TIMESTAMP(DATE_ADD(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT)), 'yyyy-MM-dd') + (UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') - UNIX_TIMESTAMP(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), 'yyyy-MM-dd')), 'yyyy-MM-dd HH:mm:ss'), DATE_ADD(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT))), 8)))), SUBSTR('yyyy-MM-dd HH:mm:ss',0,LENGTH(IF(UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') > 0, FROM_UNIXTIME(UNIX_TIMESTAMP(DATE_ADD(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT)), 'yyyy-MM-dd') + (UNIX_TIMESTAMP(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), 'yyyy-MM-dd HH:mm:ss') - UNIX_TIMESTAMP(TO_DATE(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00')), 'yyyy-MM-dd')), 'yyyy-MM-dd HH:mm:ss'), DATE_ADD(CONCAT(TO_DATE('2016-03-21 17:03:52'), ' 00:00:00'), CAST(CAST(-(DAY('2016-03-21 17:03:52') - 1) AS BIGINT) AS INT)))))), 'yyyy-MM-dd HH:mm:ss' ) END ) )

GROUP BY (CASE WHEN (`sqlproxy`.`referer_groupe` = 'Mappy') THEN 'Mappy' WHEN (`sqlproxy`.`referer_groupe` = 'Partenaires') THEN 'Partenaires' WHEN (`sqlproxy`.`referer_groupe` = 'Solocal') THEN 'Solocal' ELSE 'UNKNOW' END), `sqlproxy`.`referer_groupe`

SELECT
(CASE WHEN (`bi_routemm_perf`.`referer_groupe` = 'Mappy') THEN 'Mappy' WHEN (`bi_routemm_perf`.`referer_groupe` = 'Partenaires') THEN 'Partenaires' WHEN (`bi_routemm_perf`.`referer_groupe` = 'Solocal') THEN 'Solocal' ELSE 'UNKNOW' END) AS `referer_groupe__groupe_`, `bi_routemm_perf`.`referer_groupe` AS `referer_groupe`, SUM(`bi_routemm_perf`.`hit_count`) AS `sum_hit_count_ok`
FROM `default`.`bi_routemm_perf` `bi_routemm_perf`
WHERE ( (`bi_routemm_perf`.`date` >= CAST('2014-01-01 00:00:00' AS TIMESTAMP)) AND (`bi_routemm_perf`.`date` < CAST('2017-01-01 00:00:00' AS TIMESTAMP)) )
GROUP BY (CASE WHEN (`bi_routemm_perf`.`referer_groupe` = 'Mappy') THEN 'Mappy' WHEN (`bi_routemm_perf`.`referer_groupe` = 'Partenaires') THEN 'Partenaires' WHEN (`bi_routemm_perf`.`referer_groupe` = 'Solocal') THEN 'Solocal' ELSE 'UNKNOW' END), `bi_routemm_perf`.`referer_groupe`

En peu de temps
Les utilisateurs jouent avec
des milliards de lignes,

via des interfaces graphiques
intuitives, sexy et ultra-rapides.
Niveau d'exigence
non adapté
à la complexité du sujet.
On peut faire dire
n'importe quoi
à
à la data !
Pourrais tu catégoriser les utilisateurs
 - selon leurs domicile/travail ?
 - selon leurs consommation POI ?
 - selon leurs habitudes de déplacement ?
 - ...
Pour 12 000 000 d'utilisateurs,
 - au jour le jour,
 - sur deux ans...

Utiliser la barre espace ou les flèches pour naviguer.

* Présentation optimisée pour chrome (transitions plus fluides)