• Aucun résultat trouvé

Conception et implémentation d'un système d'entreposage et d'analyse des questions - réponses dans un forum d'entraide [texte imprimé] : Application à stackexchange

N/A
N/A
Protected

Academic year: 2021

Partager "Conception et implémentation d'un système d'entreposage et d'analyse des questions - réponses dans un forum d'entraide [texte imprimé] : Application à stackexchange"

Copied!
93
0
0

Texte intégral

(1)
(2)

r

*

-

.,iJt

a*U!/--*+Jl

LrJli---Jl I

,,

,-,

4t

REPUBLIQUE ALGERIENI\IE

DEMOCRATIQTIE

ET POPULAIRE

l

de.-/l

:

,J' .lt

t

rllf

Ministdre

de I'Enseignement

Sup6rieur

et de la Recherche

Scientifique

Universitd Mohamed Sadik Benyahia

-Jijel

-

L

Facultd

des

Sciences Exactes

et

Informatique

X.,

Ddpartement

d'

informatique

^,j

,s\A\

.04lie

MEMOIRE

Prdsentd pour I'obtention du dipldme de

MASTER

En

: Informatique

Sp6cialit6 : Systdmes d'Information et Aide d la D6cision

(tTrlne

Conception

et

impl6mentation

d'un

systime

d'entreposage et

d'analyse

des

questions-r6ponses dans un

forum

dtentraide:

Application

i

StackExchange

R6alis6

par:

Khaled Messadi Mounir Derradji

Encadrd

par:

Dr

Doulkifli

BOUKRAA

-r-,,tfr

rrro)l,Ir;

q4pr,rJ.+,

Annde universitair e 20 | 8 I 20 19

(3)

Nous

tremoms

tonnt

dl'ahond

i

renrdne

gr6rc,e

d

Dt,eu

X.re

tout

lpr.ui.ssamt

qlut

rnorJs

a

dlornnr6,

X.a

fonce,

X.e

c@unag'.e,

eu

[a

lpatLemce

'

d.'acconrrpttr

c,e cnavai.n.

lilouts

adnessolns

xnCIs

sfurncdr,es

rennercfi.,enrnemts

d nour,e

,e:racadlreun

Dr.

Borrkraa

Doulktftt

pourr

s@rm

soutfi.ern, ses

prrdcl.etrx

cornsefi.il.s,

sa

cornrnprr6lherrnsi.orn,

sa

d6tenrmi.nrattorn

ret

auxssfi.

pour

ses

€mcouirag'errnerrnts tor-ut

aun

norng dle

c*e

crawarfi.{..

Notrs

temorns

d

,exprtnaer rnotne

grrati.lturde

aurx nnermhr,es dle

l*oy

quui.

ornt accrept6

d,e

jug'en

rnotne

tnava[n"

Sans

oubti.en 6g'al.ernent

{.es

errnsei.grrnants qLui

rrnous

accom{npagrrn6s

dturamt

nos

6ttrdes

sup6ri.eures

ir

t'urntversit,6

d.e

ltjetr.

A

reotre

proxnotlom

SIAD

i.rnforrrnatil.qure

2on8-2olg.

A

toutes

les

perso]n)nes

qui.

ont

partici.pds de prds ou de

Loin

i

[a r6al"i.sation

de ce

travatt.

(4)

O6[baces

A

fules cfiers

parents

A

fulafemrne

A

%onfits

'

gylafrdmmef

ef

amine'

A

tuIesfrires

A

foles

seurs

A

llous

mcs

procfies

et

mes

arnis

A

{ous cerqquej'aime

Et

enfin

d

{oute

k

promotion fD'informatQue

2018-2019.

(5)

O6[baces

i

fuLes

chers

Sarents

A

fl4afemme

A

fuLes

enfants

'

futofiammefetr1frafrf

,

'*Ieriern',

'Ima[Ed6ine'

A

*les

frires

A

*Ies

s@urs

A

'Tow

mes

procfres

et

mes

amis

A

'Tous

ceu^trquej'aime

Et

enfn

d

toute

k

pronotion

O'informatique

201g-2019.

(6)

Rdsum6

UdiJ..J

l*trJllC

d{r.l"i"ll *ls.r,ill

6"+t

StackExchange

ls}i..J'

4JJdll

ol4ls.}l

ci-j

&Jl

l.u g,.,-i:6ll

ilill

d.

;t.jll

gl.i-3

oCLJI dJS"l

u.

dh"ll liA

,-i{+

t"S ."!rrl3q'

;

dl}" l-r,rlF UJ*ll

crUrijt

fc$

-b

MySQL

.:t4!t ;.u.:"

crtil;1 6.rcll 1+.-r+l Ft

.-J '

dl.'Jl

lia

dli"ic

J

4$l#ll

crLJ",;lt

.1"

ti)loil

F0jlJl-,6

cl.l-l

lJ.*t;*

LIJJI

.r clJ":ll

is+_r

ctUh

cit+'S4 ,JS.i

J'

6rc,lill olu

,Talend OS

lc+JrKtll

phii-h

.

:Jlrl-rlla*hll

ey-il

dir

4i#t3

;r;e

tirl.;$l

6.5oa

crl$)*.(OLAP)

al.;"tt

iJrliilll+lt'.Il

R6sum6

L'objectif

de ce travail est d'6tendre les possibilitds analytiques du r6seau StackExchange et

des rdseaux similaires, basds

sur

la

notion de

Questions

et

Rdponses. Ce

travail

consiste d

concevoir et impldmenter une base de donn6es multidimensionnelle sous la forme d'un ensemble

de cubes, afin de permettre des analyses diverses par des outils OLAP. Pour rdaliser notretravail,

nous avons exploitd

hois

technologies:

MySQL

comme serveur de base de donndes, Talend

comme

outil

ETC,

Jasper

Soft

comme

outil

de visualisation. Nous montrons

la

faisabilitd de

notre proposition

i

travers son impldmentation et nous donnons quelques perspectives.

Mots-cl6s:

Cubes

OLAP,

Base de donndes multidimensionnelleo

MySQL,

Talend open

studio, Jasper Soft.

Abstract

The objective

of

this

work is to

extend

the

analytical possibilities on

the

StackExchange

network and similar networks, based on the concept

of

Questions and Answers. This work aims

to

design and implement a multidimensional database

of

a set

of

cubes, which can be analyzed

by

OLAP

tools.

To this

purpose,

we

used

a

set

of

technologies:

MySQL

as database seryer,

Talend OS as an

ETL tool

and Jasper soft as a reporting

tool.

We show the feasibility

of

our

proposal through its implementation and we give some perspectives.

Key-Words: OLAP Cubes, Multidimensional database, MySQL, Talend open studio, Jasper

(7)

E

rabte

de

matiires

Ta6[e

fe

matidres

R6sum6

...I

Liste

des

figures

...,...

...

V

Liste

des

tableaux

...

...

VI

Introduction

g6n6rale

...

...01

chapitre

01 :

Entrepdt

de

donn6es

&

systimes

d'entraide

e/R

l.Introduction

...

...05

2. Entrepdts de

donndes

...05

2.l.D6finition

...

...05

2.1.1 Donn6es orient6es

sujet

...05

2.l.2Donrr6es int6grdes

...

...06

2.1.3

Donndes historisdes

...

...06

2.1.4

Dorurfles non

volatiles

...06

2.2. Canctdristiques d'un entepdt de donndes

...

...,...,07

2.3. Architecture de rdfdrence d'un entrep6t de donndes

...

...,...07

2.3.1. L,es classes de

donn6es

...09

2.3.2. Moddlisation de

donndes

...09

2.4,r.a structure logique

&

physique de schdmas de I'enfepdt de donndes ... I

I

2.4.1. Le schdma en

6toile

... 12

2.4.2.

k

schCma en

flocon

.,...,....I2 2.4.3. Le schdma en constellation de

faits

...

...13

2.5. R€alisation d'un

ED

...

...14

2.5.1. Bottom-up (the

Kimball

approach)

...t4

2.5.2. Top-down

(Bill

Inmon

approach)

...t4 2.5.3. Hybrid (un mdlange des deux

approches)

...15

3. Les Systdmes QuestionlRdponse

...

...15

3.1 Les SysGmes d'entraide en ligne euestion/Rdponse

...

...15

3.1.1 Pourquoi un sysGme d'entraide en rigne euestion/Rdponse ...15

...16

3.1.2 Etude d'un cas d'un d'entraide en

li

(8)

E

rabte

de

matiires

3.1.3 L'exploration des donndes de

Stack-exchange

...1g

4. Besoins d'analyse dans un systdme de

e/R

...19

5. Conclusion 21

Chapitre

02 : Conception

du

Systdme

l.Introduction

...

,.,...,...23

2.L'approche de la

conception

...23

3.

Descripion des sources de

donndes

...24

4.

Conception de

cubes

...,...

.,...32

4.1. Les tables de

faits

...32

4.2.Les

dimensions

...,...,.37

4.2.1. Les dimensions communes

...

...j7 4.2.2. Les dimensions non

communes

...39

4.3.Le moddle

multidimensionnel

...40

4.3.1. Selon l'approche de Top-Down (descendante)

...

...40

4,3.2, Selon l'approche Bottom-Up

(ascendante)

...43

4.3.3. Schdmas en constellation

...

...,....47

5. Conception

Logique

...49

5.1. Les niveaux hi6rarchiques

...

...,...49

S.2.Latechnologie utilisde dans la conception logique d,un

ED

...49

6. Conclusion

...

...50

Chapitre

03 :

Le

Processus

ETC

l.Introduction

...

...52

2. Le processus ETC

@xtraction-Transformation-Chargement)

...52

2.1.

L'extraction

...

...52

2.z.Latransformation

...

...,...52

2.3.Le

chargement

...53

3. Mapping entre la source et l'entrep6t de

donndes

...53

4. Alimentation des

cubes

...57

5. Conclusion

...

...

60

Chapitre

04 :

Mise

en rnuvre

l.Intoduction

...

...62

(9)

2.1.

Canctdristiques

...62

2.2. Fonctionnalitds

...

...62

3. Valentina

Studio....

...63

4.

Talend...

...64

5. Jasposoft

...

...65

6. La mise en

€uvre

de

systArne

..."..."65 6.1. Alimentation de la sornce

interne

...,...67

6,2. Cr6ation et chargement des cubes olap avec Talend open

studio

...68

6.3.

Lavisualisation

...

...71 7.

Conclusion...

...73

Conclusion g6n6rale

...

...7s

Bibliographie

Annexe

I'u

(10)

Liste

des

Figures

Liste

f,es

lFigures

Figure 0l.Dondes non volatiles

...

...06

F'igure O2.Architecture de rdference d'un

ED...

... ..0g F'igure 03. Moddle en

6toile

...,,..,....lz

X'igure 04. Exemple d'un moddle en flocon de

neige

... 13

Figure 05. Exemples d'un schdma en constellation

...

... 14

X'igure 06. Une partie des donndes de

StackEschange

...

lg

F'igure 07. Requ6te q1:" group by tag

name"

... 20

Figure 08. R6sultat d'exdcution de

Ql

... 20

Figure09.

Requdte q2:'oplusieurs group

by"

...

...,..,...21

Figure 10. Schdma relationnel de

StackEschange

...,.

3l

Figure

11. Requ0te

Ql

"How many UpVotes do I have for each

Tag?',

...,...42

Figure

12. Requ6te Q2 *How many comments do I have for each

score?,,

...42

X'igure 13. Requdte Q3 *What is my accepted answer percentage Rate? .o ... ...42

X'igure 14. Requ6te Q5 "Top 500 answers on the

site,'...

....43

Figure

15. Requote

"up

vs Down votes by day of week of a question or answer? "...43

X'igure 16. Une partie de schdmas relationnels de Stackoverflow

...

...44

Figure

17. Schdma multidimensionnel de I'analyse des PostTags

...

... 45

Frgure 18. Schdma multidimensionnel de I'analyse des commentaires

...

...4s Frgure 19. Schdma multidimensionnel de l'analyse des

votes

...,.. 46

Flgure2O. Schdma multidimensionnel de l'analyse des Interactions des utilisateurs avec les divers types de

posts...

...46

trIcunn21. Schdmas en

constellation...

...4g Figure22. Valentina

studio

...63

(11)

Liste

des

Figures

F''igure23. Talend OS : Talend OS

...

...65

Figure24. Talend OS : chargement de latable Posts

...

...66

Figure25. Valentina Studio : la table stackexchange.

Posts....

... 66

Figure26. Talend OS : chargement de la table Posffeedback

...

...,...67

Figure27. Talend OS : chargement de la dimension

Users_dim

...68

Figure28. Talend OS : chargement de cube olap < Count cube ))

...

...69

Figure29. Talend OS : chargement de cube olap < PostTagsAnalysis_cubeD ...70

Figure.30. Valentina Studio: cube olap < Count_cube)

...

...70

Figure3l.

Valentina Studio: cube olap < PostTagsAnalysis_cube>

...

...21

Figure32. Jasperserver: Table croisde de navigation << Count_cube>>

...

...71

Figure33. Jasperserver: nombre d'Upvotes pour chaque

Tag

....,...,.72

Figure34. Jasperserver: nombre de Post par

Tag

...,,.72

(12)

Liste

des

Tableaux

Liste

festa\feauy

Tableau

0l.OLAP

VS

OLTP

...02

Tableau

02. Moddle conceptuel d'une table de faits

...

...

l0

Tableau

03. Moddle conceptuel d'une table de

dimension

... l

l

Tableau 04. Comparaison entre SE, Quora, Yahoo

lanswers

... 17

Tabfeau 05. Description des donndes de

StackExchange

...24

Tableau

06. Descripion des Associations entres les donndes de StackExchange...26

Tableau 0T.extraction des cubes selon I'approche

Bottom-UP

...41

(13)
(14)

Introduction

G6n6rale

Introduction

Generale

Le fidsor de nos jours est la valeur inestimable que reprdsente

I'un

des capitaux principal de

l'organisation; on

ne parle pas d'argent

ni

de facteur humain mais des donndes.

Le

besoin

d'exploiter ces donndes par l'organisation a poussd l'dvolution des techniques et des applioations

qui

traites ces donndes.

L'6volution

importante de ces technologies en termes

de

vitesse de

traitement,

de

capacitd

en

m6moire

et en

stockage,

le

cloud

computing,

tout

cela

a

aid6

I'organisation d manipuler de grandes masses des donn6es en distinguant le plus important de

l'important. De nos jours, la question pos6e est comment bien g6rer ces donn6es en temps r6el

tout

en gagnant en temps et en argent pour

le

but de bien aider les d6cideurs de prendre une

ddcision correcte et en temps opportuns.

L'aide

i

la

ddcision est ddfinie comme dtant

I'activitd

de celui qui, prenant appui sur des modOles clairement explicitds mais non ndcessairement completement formalisds, aide d obtenir

des 6l6ments de rdponse aux questions que se pose

un

acteur dans

un

processus de ddcision,

dl6ments concourant

d

6clairer

la

d6cision

et

normalement

d

recommander,

ou

simplement d

favoriser,

un

comporteinent de nature

d

accroitre

la

cohirence entre

I'ivolution

du processus

d'une

part,

les objectifs

et

le

systdme de valeurs au service desquels ces acteurs se trouvent places d'autre part.

Un

systime

d'informations d6di6

d

I'aide

d la

decision,

ou

tout court,

un

systdme

d'information ddcisionnel (SID) comme l'ensemble des moyens humains, matdriels et logiciels

destind

d

la collecte, d

la

m6morisation,

i

la restitution des informations issues des sources de

production et destindes d faciliter la prise de ddcision .

Il

se distingue d'un sysGme d'information

classique dans le sens que ce dernier assure I'activitd de l'organisation au quotidien, alors que le

SID est destind

i

I'analyse et

i

la prise de ddcision.

Au

ccur

d'un

SID, un entrep6t de donn6es

est une base de donn€es dedi€e d l'analyse et

i

la ddcouverte des connaissances.

Il

est alimentd

i

partir d'une ou

de

plusieurs sources

d

travers

un

processus d'extraction, transformation et

chargement

(ETC).

A

partir

de l'entrep6t,

des structures analytiques peuvent €tre extraiteso

appeldes

cubes

de

donndes

ou

cube

OLAP. Ces

oubes

sont

organisds

de

maniere

multidimensionnelle, autour

d'un

zujet d'analyse

(fat|

n

analyser selon des axes d'analyse,

appelCes dimensions.

Les

entrep6ts

de

donndes

ont

prouvd

leur

efficacit6

dans diff6rents

domaine, tels que la vente, l'6ducation, les t6l€communications, la m6decine, etc.

(15)

Introduction

G6n6rale

Dans ce fravail, nous nous intdressons aux systdmes d'entre-aide ddployds sous la forme de

forums sur

le

Web et qui permettent des dchanges d'expdriences entre les gens

d'un

domaine

particulier

(informatique,

mathdmatiques,

langues,

etc.) Ces

dchanges

s'effectuent

principalement

par

des questions

et

des reponses

aux

questions.

Un

exemple populaire des

fonrms doentre-aide est le rdseau StackExchange. Ce forum

A

mis au grand

public

un

API

qui

permet la manipulation des donndes, par des analystes ou par des non-informaticiens. Cette

API

permet

soit

d'exdcuter des requdtes param6trdes et prdddfinies

ou

en

pemettant d'6crire

des requOtes en SQL, notamment pour des besoins d'analytiques.

L'objectif

de ce travail est d'dtendre les possibilit6s analytique du rdseau StackExchange et

des rdseaux similaires, bas6s sur la notion de Questions

/

R6ponses. Ce travail est motiv6 par la

disponibilitd des donndes de StackExchange,

qui

peut 6he consid6r6e comme une source de donndes d'un systdme d'entreposage et d'analyse en ligne.

Notre travail consiste

i

concevoir et impldmenter une base de donndes multidimensionnelle

sous

la

forme

d'un

ensemble

de

cubes,

afin

de permettre des analyses divers

par

des outils

OLAP. L'extension des possibilitds analytiques est effectude selon deux approches:

-

Une approche descendante inspirde de I'approche de lnmon, qui est

l'un

des fondateurs

des entrepOts de donn6es et

qui

consiste d ddduire des cubes

OLAP

directement de la

base de donn6es en analysant les tables sources et leurs relations.

-

Une approche ascendante inspirde de I'approche de Kimball, un autre fondateur des

enhepdts de donndes, et qui consiste d dtendre les requ6tes analytiques proposdes dans

I'API

de StackExchange en leur ajoutant des dimensions d'analyse et des hidrarchies.

La

combinaison des deux approches donne

lieu

i

un

ensemble

de

cubes

OLAP dont

le

schdma combin6 correspond

i

une galanie et sur lequel portera l'analyse en ligne.

Notre mCmoire est organisd en 4 chapites

.

Chrpitre 01

:

dans

ce

chapitre, nous prdsentons les notions de base

sur les

entrep6ts de

donndes

et

une

introduction

au

systdme

d'entraide

Q/R

(Stackexchange,

Quor4

Yahoo !

Answers).

.

Chapitre

UI

z ce

chapitre

inclut

une

description

des

sources

de

donnees

ainsi que

les

(16)

Introduction

G6n6rale

'

Chapitre 03

:

ce chapihe inclut une introduction sur le processus

ETL

;

la table de mapping

entre Ie schdma multidimensionnel ainsi que les algorithmes de chargement des tables de faits.

. Chapitre

04 : c'est la phase de misE en Guvre de notre systdme, elle inclut I'impl€mentation

des cubes, leur alimentation ainsi que leur visualisation

(17)

Cftapitre

1

Entrepdt

de donn6es

&

Systimes

d'entraide

Question/R6ponse

L.

Introduction

2.

Entrepdts

de donn6es

3. Les

Systimes QuestionlR6ponse

4.

Besoins d'analyse dans

un systime

de

Q/R

5.

Conclusion

(18)

E

Entrepdt

de donn6es

&

systimes

d'entraide

euestion/R6ponse

1.

Introduction

Le concept d'entrep6t de donn6es (ED) a dt6 formalisd pour la premidre fois en 1990 par

Bill

Inmon.

Il

s'agissait de constituer une base de donndes orientde sujet, intdgrde et contenant des informations historisdes,

non volatiles

et

exclusivement destindes aux processus

d'aide

i

la

d6cision. [W1]

En effet, la simple logique de production (produire pour repondre d une demande) ne

suffit

plus pour p6renniser I'activitd d'une entreprise. Elle est un systdme ouvert sur son environnement

au

ccur

des systdmes d'informations confrontde d des ph6nomdnes dconomiques et sociaux lourd

de cons6quences.

Pour faire face aux

nouveaux

enjeux, l'entreprise

doit

collecter,

traiter,

analyser les

informations

de

son

environnement

pour

anticiper.

Mais

cette

information produite

par

I'entreprise

est

surabondante,

non

organisde

et

6parpillde

dans

de

multiples

systdmes

op6rationnels h6t6rogdnes et peut provenir de toutes les places de march6s (mondialisation des

6changes).

Il

devient

fondamental

de

rassembler

et

d'homogdn6iser

les

donn6es

afin

de

permettre

I'analyse des indicateurs pertinents pour faciliter la prise de ddcisions.

L'objectif

de I'entrep6t de

donndes est de

d6finir

et

d'intdgrer une architecture

qui

serve

de

fondation

aux

applications

d6cisionnelles.

2.

Entrepdts

de

donn6es

2.1.

D6finition

Un entrepdt de donn6es est une collection de donn6es thdmatiques, intdgr6es, non volatiles et

historisees pour la prise de decisions

@ill

Inmon)

IBII

L'infrastructure technique mise

en

Guvre est capable

d'intdgrer,

d'organiser,

au

sein du

systdme d'information (SI) issues des applications de production ou importdes depuis I'ext6rieur

du SI

(lou6es

ou

achetdes) dans lesquelles

les

utilisateurs

finaux

puisent des informations

pertinentes d I'aide d'outils de restitution et d'analyse OLAP (On-Line Analytical Processing).

2.1.1 Donn6es orient6es sujet

L'entrepdt de donnees est organisd autour des sujets majeurs et des mdtiers de I'entreprise.

Les donnees sont organis6es par thdme, contrairement aux donnees des systdmes de production,

organisdes par processus fonctionnels.

L'avantage de cette reprdsentation demeure dans le

fait

qu'il devient possible de r6aliser des

analyses

sur

des

sujets transversaux

aux

strucfures fonctionnelles

et

organisationnelles de

(19)

E

Entrep0t

de donn6es

&

systimes

d'entraide

euestion/R6ponse

concepion au sein du SI. Cette orientation permet dgalement de faire des analyses par

itiration,

sujet aprds sujet.

L'intdgration

dans

une

structure unique

est

indispensable

pour

6viter

aux

donndes concerndes par plusieurs sujets d'6tre dupliqudes. Dans la pratique

il

existe dgalement

des magasins de donndes (Data mart) pouvant supporter I'orientation sujet.

2.1.2 Donnees integrees

Un enhep6t de donndes est un projet d'entreprise et concerne les diffErents services et mdtiers

de I'entreprise. L'intdgration de donn6es, au sein d'un entrepdt de donn6es, est donc un processus

determinant

sur

la

qualit6

et la

quantitd

d'informations

disponibles

aux

utilisateurs

pour

le

processus de ddcision.

Cette phase, que nous verrons

plus

en d6tail, au (chapitre03),

implique

que les donndes

doivent 0tre

mises

en

forme

et

unifides

afin

d'avoir

un

6tat

coh6rent.

Pour parfaire

cette

cohdrence, l'intdgration ndcessite une forte normalisation de donndes. Mais aussi la maitrise de

la

sdmantique,

la

prise en compte des contraintes rdf6rentielles

et

des rdgles de gestion. Ces

notions sont

6nonc6es, ddtaill6es

et

administr6es

au

sein des m6tadonndes

de

I'entrepdt de donn6es.

C'est

ainsi que I'on

poura

donner

une

bonne

vision

de

I'entreprise

via

I'utilisation

d'indicateurs.

2.1.3

Donnees historis6es

L'historisation est ndcessaire pour suivre dans le temps I'dvolution des differentes valeurs des

indicateurs

i

analyser. Ainsi, un rdftrentiel temps doit 6tre associd aux donndes afin de permettre

I'identification dans la duree de valeurs prdcises.

2.1.4 Donn&s

non volatiles

Ahn

de conserver

la

tragabilitd des informations

et

des ddcisions prises, les informations

stockees au sein de I'entrep6t de donnees ne peuvent Otre supprimdes (Figure

l).

Bases

de

production

Entrep6ts de donndes

Ajout

-[.F---SuPPression

[E*kf*llls-_

.,rc

Modification

.-Accds

(20)

ilil

Entrepdt

de

donn6es

&

Systimes

d'entraide

Question/R6ponse

2'i"l;::llildilhft

T:ffirf:r"T"xffi,"r:::"

.

Pose le probldme de performance d cause du grand volume de donndes.

Et pour mieux comprendre les caract6ristiques d'un entrepdt de donn6es, nous le comparant

avec une base de donn6es op6rationnelles. Ce tableau exprime une comparaison entre les donndes ddcisionnelles et fonctionnelles.

Carac/;6ristique Boses de donndes opdrationnelles Entrepflts de donndes

Buts Gestion des donndes opdrotionnelles Aide d lo ddcision

Nb d'utillsateurs Milliers Centaine

Nature des requ€tes Requ€tes prdddfinies Requ€tes Ad Hoc

Accds aux donndes Centoines d'enregistrements, en lecture

/

icriture

M i I I ion s d' en re g istre me nts, e n

lecture seule DonnCes Ditoillees, numdriques et olphonum€riques Plut6t numiriques

lntegrqtion OrientCe opplication Orientde sujet

Couverture

temporelle Do n nies cou ro ntes se u le me nt Donnde courantes et historiques

Mise d Jour Continue Pdriodique

Maddle de donnAes Normalisd Dd norma lisd, M u ltid ime nsion ne I

Optimisotion Accds tronsaaionnel it une partie de lo BD Accis anolytique

d

tout la BD

Tableau 0l.OLAP VS OLTP [M1]

2.3.

Architecture

de r6f6rence

d'un

entrep6t de donn6es

Cette architecture se divise en trois zones : pr6paration, stockage, pr6sentation (figure 2)

.? T

(21)

E

Enhep6t

de

donn6es

&

systimes

d'entraide

euestion/R6ponse

Zone de Requ€tes Rapports Data,Mining Zone de pr€paration

i-r

tcl

ir'ri

\A

1R

\c

le

lM

iE;

1Nl

l-lr'

$il

r-i

\

-\i

\

/c

i

wil

ii

rLi-1'

Nettoyage Standardieation Sources donndes

Figure 02.architecture de rdference d'un ED [W16]

Dans la zone de prdparation les donndes sont extraites

i

partir des sources de donndes,

Ces donndes applicatives sont donc extraites, transformdes et chargdes dans un entrep6t

de

donn6es

par

un outil

de type

ETL

@xtract-Tranform-Load)

ou

en

frangais ETC

(Extraction-Transformati on-Chargem ent).

Il

existe diff6rentes zones

de

stockage

qui

diffdrent

selon

la

port6e

et la taille.

On

distingue:

L'Entrepdt

de donndes

-

Transversal

-

De tCraoctets aux pdtaoctets

Le

Datamarts (magasins de donnees)

-

Conceme un ddpartement

-

De giga-octets aux tdraootets

Les Cubes

-

Extrait de I'entrep6t ou du Datamart

-

De mdgaootets aux giga-octets

7.one de pr6sentations

Oufils d'ana$se

Outils de requ6tage Fouille de donndes OLAP / reporting I

(22)

E

Entrepdt

de

donn6es

&

systimes

doentraide euestion/R6ponse

2.3.1. Les classes de donn6es

Un entrepdt de donndes peut se structurer en quatre classes de donndes organisdes selon un axe

historique et un axe de synthdse.

twll

o

Les donn6es agr6g6es

Les donndes agrdgdes correspondent

i

des dldments

d'analyse

prdsentant les besoins des

utilisateurs.

Elles constituent

d6ji

un rdsultat d'analyse et une synthdse de l'information contenue dans

le systdme ddcisionnel, et doivent 6tre facilement accessibles et compr6hensibles.

o

Les donn6es d6taill6es

Les

donn6es d6tailldes

refldtent

les

6vdnements

les plus

rdcents.

Les

intdgrations

rdgulidres

des

donn6es issues

des

systdmes

de

production

vont

habituellement Otre

r6alis6es d ce niveau.

r

Les m6tadonn6es

Les

m6tadonn6es constituent I'ensemble

des

donndes

qui

ddcrivent

des

rdgles

ou

processus attach6s

i

d'autres donn6es. Ces dernidres constituent

la

finalitd du

svstdme

d'information.

o

Ls

donnees historisees

Chaque nouvelle insertion de donn6es provenant du systdme de production ne d6truit pas

les anciennes valeurso mais cr6e une nouvelle occurrence de la donn€e.

2.3.2. Mod6lisation de donnees

Dans la conception d'un systdme d'information, la moddlisation des donndes est I'analyse et

la conception de I'information contenue dans le systdme.

)

La

mod6lisation

par

sujet

un entep6t de donndes est gdndralement bas6 sur un SGBD relationnel.

L^a moddlisation par sujet est une technique de conception logique qui vise A organiser et

classifier les informations des bases ldgataires en donndes classdes par sujet fonctionnel. Elle est

basee sur la moddlisation "EntitdlRelation" et est pr6liminaire d la moddlisation dimensionnelle.

Chaque

sujet

correspond

i

une

table

g&6e au

sein

de

l'entrepdt.

Il

faut isoler les

donn6es

stratdgiques, ddterminer

les

informations

de

ddtails ndcessaires (profondeur, granularitd) et

conserver les m6tadonndes.

D

La

modGlisation

dimensionnelle

La

moddlisation dimensionnelle souvent appelde

mod6lisation

OLAP

se prdsente comme une alternative au moddle relationnel.

Elle

conespond

(23)

ffiffi

Entrepdt

de donn6es

&

Syst0mes

d'entraide

Question/R6ponse

C'est une mdthode de conception logique qui vise d prdsenter les donn6es sous une forme

standardisde intuitive et qui permet des accds hautement performants. Elle aboutit d pr6senter les

donndes

non

plus

sous

forme de

tables

mais de

cube centr6

sur une activit6.

Un

cube de

dimension n (n > 3) est aussi dit hyper cube.

La table de faits est la clef de

votte

du moddle dimensionnel otr sont stock6s les indicateurs

de performances. Le concepteur s'efforce de considdrer comme indicateurs les informations d'un

processus d'entreprise dans un systdme d'information. Les indicateurs 6tant les donn6es les plus

volumineuses d'un systdme d'information, on ne peut se permettre de les dupliquer dans d'autres

tables mais de les rationaliser au sein de la table de faits.

o

La

table de

faits

Table

de

faits

des ventes

journalidres

Cl6 date (CE)

Cl6

nroduit

(CE)

Cl6 masasin (CE)

Quantit6 vendue

Montant

des ventes (€)

Tableau 02. Moddle conceptuel d'une table de faits

Le terme < fait > est utilis6 pour reprdsenter une mesure dconomique. Pour exemple, lors de la

vente de produits sur un marchd, on comptabilise les types de produits vendus, leur quantitd et le

montant de chaque vente au

jour

le

jour

et ce, pour chaque produit et pour chaque magasin.

La mesure des quantitds et des

prix

est rdalisde d I'intersection de toutes les dimensions (produit,

magasin, temps), coillme illustrd en tableau 2. Le nombre des dimensions ddtermine la finesse, la

granularitd de la table et indique la port6e de l'indicateur.

o

Additivit6s

des indicateurs

Les indicateurs les plus utiles d'une table de faits sont num6riques et additifs.

L'additivit6

des

attributs d'une table de faits est cruciale pour les outils ddcisionnels. Les utilisateurs demandent

rarement l'analyse d'une seule ligne. Dans notre exemple, constater les ventes de produits sur

une annde pour les magasins d'une r6gion demande I'analyse de plusieurs milliers de lignes d la fois.

Pour autant, tous les attributs utiles ne sont pas additifs. Certains sont semi

additifs et

ne

peuvent 6tre additionnds que pour certaines dimensions.

(24)

Sil

Entrep6t

de donn6es

&

Systimes

d'entraide

Question/R6ponse

D'autres sont non additifs et ne peuvent pas 6tre additionn6s par dimensions.

Pour cette demidre cat6gorie, on utilise des fonctions d'agrdgations tel que, le calcul de moyenne,

le ratio ou le comptage de lignes.

o

Les dimensions

Les tables de dimensions sont les entitds compldmentaires

i

la conception de la table de faits.

Elles

contiennento autant

que

possible,

des attributs

sous

forme

de

descriptions textuelles

permettant de qualifier ou d'expliquer l'activit6.

Des

attributs

de

dimensions, nombreux, permeffent

de varier les

possibilit6s d'analyse (par

tranches ou en dds). Ces attributs rendent utilisables et

intelligible

les donndes de I'entrepdt de

donn6es. Ils dtablissent, en quelque sorte une interface homme/entrep6t de donn6es.

En g6n6ral, les tables de dimensions tendent d 6tre peu profondes mais elles sont larges (l'inverse

de la table de faits), en d'autres termes elles ont peu de lignes mais beaucoup de colonnes. Le

tableau 3 montre un exemple de la table de dimension produit.

Tables

de

dimension

"Produit"

Cl6 nroduit (CP) Description du produit Num6ro US (cl6 naturelle) Description de la marque Description de la cat6gorie Description du rayon

Description du type d'emballage

... et bien d'autre attributs

Tableau 03. Moddle conceptuel d'une table de dimension

2.4.

structure

logique

&

physique de sch6mas de

I'entrepdt

de donnees

Au

sein de I'entrep6t de donn6es les donn6es sont redondantes et d6moralisdes, nous sommes

loin

de la mod6lisation en hoisidme forme normale (3I.IF) et pour cause, cela permet de faciliter

l'utilisation

et d'am6liorer les performances lors de I'analyse des donndes.

Trois types de schdmas sont fr6quemment rencontr6s : le sch6ma en 6toile, le sch6ma en flocon

et le sch6ma en constellation de faits.

(25)

ffi

Entrep6t

de donn6es

&

systdmes

d'entraide

euestion/R6ponse

2.4.1. Le sch6ma en 6toile

Dans un sch6ma en 6toile, une table centrale de faits contenant les faits d analyser, rdference

les tables de dimensions par des clefs dtrangdres. Chaque dimension est d6crite par une seule

table

(feuille de l'arbre de

tables)

dont les

attributs

reprdsentent

les

diverses granularit6s

possibles (voir figure 3).

Figure 3. Moddle en 6toile [W17]

2.4,2. Le sch6ma en flocon de neige

Dans

un

sch6ma

en flocon de

neige, cette m6me

table de faits,

r6ference les tables de

dimensions de premier niveau, au m6me

titre

que le sch6ma en dtoile. La difference r6side dans

le fait que les dimensions sont d6crites par une succession de tables (d l'aide de clefs dtrangdres)

reprdsentant la granularit6 de I'information. Ce schdma 6vite les redondances d'information mais

ndcessite des jointures lors des agr6gations de ces dimensions (figure 4). Dimension Temps

lD temps

annde niois

jour Dimension produit

f)imnnsion Marra.iin lD produit

nom code pflx poids sroupe famille lD magasin description ville surface

\!

/

l

-1

E

r

Itlr

;t

I

Dimension Reqi Dimension Client

lD rdgion pays descrrptron dishict vente lD clienl nonl prenom adresse r"2

(26)

E

Entrepot

de

donndes

&

systimes

d'entraide

euestion/R6ponse

Figure 4. Exemple d'un moddle en flocon de neige [Wl8]

2.4.3. Le schdma en constellation de

faits

Dans un schdma en constellation, plusieurs moddles dimensionnels se pafiagent les mOmes

dimensions,

c'est-idire,

les tables de faits ont des tables de dimensions en coillmun

(voir

figure

5).

Pour conclure, les

diftrences

entre ces trois moddles sont faibles et ne peuvent donner lieu

i

des comparaisons de performance. Ce sont des sch6mas issus de la mod6lisation dimensionnelle

(27)

E

Entrepdt

de donn6es

&

systimes

d'entraide

euestion/R6ponse

Fait M*:sre Band* C

lDfichier lD zone lDternps Mesure C enregistre C0rrection C associee eurSAT lDzone * Description Latitude ddbut Latitude fln longitude dEbut Longitude fin lD pay5 Fait p;:rarnetre d'enuirnnrienrent Mlcroseconde lEtseconde lO minute lD heure lDjorlriulien lDfichier lD zoile lDtemps Vitesse de vent x de vaporisation rature d'eau Date de d€but Date de fin

lD passage Fait PJlesLrre Bfinrie KLI lD zone lDtemps Mesure KU enregistr€e Correctfon KU associee Altitude KU Nature surJace

Figure 5. Exemples d'un sch6ma en constellation [Wl9]

2.5. R6alisation

d'un

entrep6t de donn6es

Du point de vue de la conception du schema de l'entrepdt, nous distinguons dans la

litt€rature trois grandes approches (Top-down, Bottom-up,

Middle-out)

2.5.1.

Bottom-up

(the

Kimball

approach)

Dans I'approche ascendante, les ddp6ts

de

donn6es sont

d'abord

cr66s

pour

fournir

des

fonctionnalit6s de cr6ation de rapports et d'analyse pour des processus m6tier sp6cifiques. Ces

magasins de donnees peuvent ensuite 6tre intdgrds pour crder un entrepdt de donn6es complet.

L'architecture du bus de I'entrep6t de donn6es est principalement une impl6mentation

de

"the

bus", un ensemble de dimensions et de faits conformes,

qui

sont des dimensions partag6es (de

manidre specifique) entre des faits dans deux ou plusieurs magasins de donndes [W20]

2.5.2. Top-down (the

Bill

Inmon

approach)

L'approche descendante est congue d I'aide d'un moddle de donndes d'entreprise normalisd.

Les

donndes "atomiquesr', c'est-d-dire

les

donn6es

les plus

d6taill6es,

sont

stockees dans

I'entrepdt

de

donnees.

Les

magasins

de

donnees dimensionnels contenant

les

donndes n6cessaires

i

des processus mdtier ou

i

des services sp6cifiques sont orddes d partir de I'entrep6t

(28)

E

Entrepdt

de

donn6es

&

systimes

d'entraide

euestionlRdponse

2,5.3. Hybrid

(un mdlange des deux approches)

L'entrepdt

de

donndes

est

conservd dans

sa troisidme forme

normale

pour

dliminer

la

redondance des donndes. Cependant, une base de dorindes relationnelle

normalis6e

n'est pas

efficace

pour les

rapports

de

Business Intelligence

of

la

moddlisation dimensionnelle est

repandue. Les petits magasins de donndes peuvent rechercher les donn6es de I'entrepdt consolidd

et utiliser

les donndes spdcifiques filtrdes

pour

les tables de

faits

et

les dimensions requises.

L'entrep0t

constitue

une

source d'informations unique

d partir de

laquelle

les

magasins de

donn6es

peuvent

lire,

fournissant

ainsi

un

large 6ventail

d'informations

commerciales.

L'architecture hybride permet de remplacer

un ED

par

un

r6f6rentiel de gestion des donn6es

(master data management-MDM-) dans lequel des informations opdrationnelles, et non statiques,

pourraient rdsider. [W20].

3.

Les Systimes Question/R6ponse

L'dvolution

de

la

connaissance scientifique

ne

cesse

de

se

croitre. Les

gens, 6tudiants,

chercheurs ou autres sont

i

un moment face d des situations otr

ils

ont besoins de

l'aide

d un

domaine ou un sujet

qu'ils

croisent dans leurs quotidiens.

L'dvolution

de I'informatique, et entre

autres, I'intelligence

artificielle

ainsi que

l'apparition

de I'Internet ont promu des systdmes de

questions/r6ponses

(QlR)

qui aident les gens de manidres diffdrents et dans differents domaines.

Dans cette section, nous prdsentons les systdmes d'entraide en ligne bas6s sur les questions et les

r6ponses.

3.1 Les SystDmes

d'entraide

en ligne QuestionlR6ponse

l'entraide en

ligne

est

I'action

de s'entraider,

de

s'aider mufuellement, d'agir en commun.

Travail

ou

action effectu6s conjointement par plusieurs personnes

IW22l.

L'entraide en ligne

concerne

les

personnes

qui

utilisent

des sites

Web

et

des forums

pour former

des groupes

d'entraide (des communautds en

ligne)

pour s'entraider dans un domaine sp6cifique.

3.1.1

Pourquoi

un systime

d'entraide

en ligne Question/R6ponse

La

recherche

simple

dans Google

ou

Wikip6dia

ne

repond pas

toujours

d

nos

besoins

d'apprentissage et de connaissance. De

fois

on ne comprend jamais les gens

qui

repondent ou

qui

posent ces questions

ni

leurs intentions ou motivations. Les gens

qui

ddveloppent les sites

d'entraide en ligne visent

i

rdgler ce probldme par :

r

L'augmentation de niveau de questions/rdponses significative en ligne dans un domaine

(29)

E

Entrepot

de donn6es

&

systimes

d'entraide

euestion/Rdponse

'

Ddveloppement de systdmes de qualitd qui permettent le contrdle des utilisateurs et par

I'utilisateuro

etla

mise

d'un

systdme de reconnaissance d ceux qui posent/repondent d

des meilleures publications (posts), badges, r6putation, droits d'action sur le site, etc.

'

Ddveloppement

de

sites extr€mement efficace,

tant

dans

la

pertinence des questions

pos6es que dans la

lisibilit6

et la qualitd des rdponses obtenues (dans chaque domaine

prdcis

il

y a des experts).

Nous allons

faire

une 6tude

sur

les systdmes d'entraide en

ligne

Q/R

pour

connaitre ces

composants et mieux comprendre sont fonctionnements.

3.1.2

Etude

d'un

cas

d'un

systime

d'entraide

en ligne QuestionlR6ponse

Notre cas, nous allons 6tudier

trois

sites d'entraide en ligne Q/R, qui sont les plus populaires

dans le Web,

il

s'agit d'une 6tude comparative afin de d6gager les dl6ments en communs entre

ces systdmes.

le

web

qui

permet

d

ses

utilisateurs

de cr6er,

d'6diter

et

d'organiser des

questions-r6ponses.

Le

site organise les questions-r6ponses par sujets et permet aux utilisateurs

de

collaborer.

La

maison mdre, Quora

Inc., est

localisde

d

Mountain

View,

en

Californie. Le

site, fond6 en

juin

2009, et rendu disponible au

public

le 21

juin

2010,

a atteint

les

100

millions

de

visiteurs

uniques

par mois

en mars

2016.

Quora

a

6t6

fond6 en

avril

2009

par Adam d'Angelo,

co-fondateur

et

direoteur technique

de

Facebook, et Charlie Cheever,

qui

a men6

i

bien la cr6ation de Facebook Connect et

de Facebook Platform.

[W2]

courarlment connu sous le sigle Yahoo !

Q&

est un service communautaire collaboratif

dans lequel les membres proposent des rdponses aux questions pos6es

par

d'autres.

Il

s'agit d'un service du portail Yatroo! qui a 6t6 lanc6 en d6cembre 2005 aux Etats-Unis, en

2006 en France. [W3]

F

StackExchange:

Stackexchange

a

etd

crde

en

2008

par Jeff Atwood

et

Joel

Spolsky. Stackexchange

est un

r6seau

des

communautds

(175 sites) dont

le

plus populaire est StackOverflow, et

qui

sont cr66es et fonctionn6es par des experts et des

enthousiastes

qui

sont

passionn6s

pour

un

sujet

sp6cifique

organisdes

dans

des

bibliothdques

des

questions-

r6ponses

de

haute qualit6

axdes

sur

le

domaine

d'expertise de chaque communaut6. StackOverflow est

le

domaine le

plus

important

et populaire de rdseau Stackexchange dddi6 pour la communaut6 des d6veloppeurs et

(30)

ffi

Entrepdt

de donn6es

&

systimes

d'entraide

euestionrR6ponse

Le

tableau

comparatif

suivant

montre les

composants en communs

est les

diff6rences

entre ces

trois

sites [Tableau04].

:Stackexchange Nature de

site

Q/R

Nature des

questions

- privil6gient les questions pos6e parles

utilisateurs

sp6cifiques et objectivement

responsables aux questions de discussion large et ouverte

Nature des rdponses

aux

- Les r6ponses doivent 6tre tout

Questions

aussi pr6cises et appuyer leurs

: arguments avec des arguments et

des sources [ce qui est positive) Rdglement int6rieur

de

- Les sites Stackexchange ont par

site

leur conception un obiectiftrds 6troit et des rdgles exremement strictes en matidre de sujet Domaines dans le

site

- Stackexchange est compos6 de

plusieurs secteurs: plusieurs sites, un domaine de connaissance chacun [10]

Tags

-oui on peut taguer une question(les tags est une table dans le sch6maJ

une

-oui on peut

Tableau 04, Comparaison entre SE, Quora, yahoo lanswers [W5, W6, W7, Wg, Wl6]

Le

tableau 04 nous pennet de ddgager les composants en colnmuns entre les sites web de

notre cas d'dtude

:

les utilisateurs peuvent poser des questions, r6pondre d des questions, dditer

des questions

ou

des r6ponses, commenter

un

ou

plusieurs posts

(un

post coffespond

i

une

Quora

Q/R

- large et ouverte

-encourager des

discussions et des opinions

plus ouvertes fmais ce

n'est pas une chose ndgativeJ

-moins strictes (mais pas faibleJ

- Quora est horizontal: un site, tous les domaines de la connaissance

-oui on peut mais par

commentaire -oui on peut -oui -oui -oui -oui -oui

-oui on peut faire des

classements pour des fins d'analyse

-actuellement non Amazon Web Services (hostingJ, Ubuntu Linux

(systeml, PYLONS [web

server), TORNADO (web

Framework), PYTHON,

IAVASCRIPT MySQLfle sch6ma de la BD n'est pas

r6v6ler au public mais les fondateurs disent qu'il

ressemble aux sch6mas de FriendFeedJ, Git (controll Commenter une Q ou R Editer une Q/R Voter une Q/R Rdputation Score R6compenses (badges) Classement(Ranking) API Quelques Choix techniques -oui -oui -oui -oui -oui

-oui on peut faire des classements

pour des fins d'analyse -oul

SYSTEM: Microsoft Windows

SERVER X64,WEB SERVER: IIS ,Database:SQL Server Yahoo ! Answers Q/R - large et ouverte -encourager des discussions et des opinions plus ouvertes -moins strictes

(mais pas faibleJ

-horizontal plusieurs cat6gories(26) -oui -oui on peut -oui -oui -oui -oui -oui -oui on peut faire des classements

pour des fins d'analyse -oui Un m6lange de MySQL, oracle (BD] -l *t ^8. lr

(31)

fil

Entrep0t

de

donn6es

&

Systimes

d'entraide

Question/R6ponse

question, une reponseso etc.), identifier (Tag) des questions, voter un post positivement (Up vote)

ou

ndgativement

@own vote)

ou

sur

un

score positivement

ou

n6gativement, gagner en rdputation. Ces points communs sont gdn6ralement les dldments

qui

composent les systdmes

d'entraide en ligne Q/R.

Stackexchange

a mis

au

public

une quantitd

de

ses propres donn6es

i

des

fins

d'analyse en

format

xml

(figure 6). Ces donndes sont tdldchargeables

via

le site Web archive.org, qui est une

librairie

de

donndes

d'Internet.

La

disponibilitd

des

donndes

de

Stackexchange

nous

a encourag6s d I'utiliser comme rdftrence de base pour le reste de notre travail.

3.1.3

L'exploration

des donnees de Stackexchange

L'exploration est le fait de chercher avec I'intention de ddcouvrir, d'dtudier quelque chose ou

un lieu.

[Wl1]

L'exploration

des donndes

de

Stackexchange est

le fait

de

chercher,

fouiller et

analyser les donndes (figure06). Seulement, le fait d'avoir juste une collection de donn6es n'a pas une grande

utilit6.

IL

faut poser des questions par exemple:

(

How many upvotes do

I

have for each Tag? >r,

ou

<<the Most popular Stackoverflow Tags

in

May

2010

)

[W9].

Pour rdpondre aux questions

par des requ6tes en langage

T-SQL,

Stackexchange a

mis

en ligne

un

outil

open source pour

exdcuter des requdtes arbitraires sur des donndes publiques du rdseau Stackexchange,

c'est

le

stackexchange data

explorer

(SEDE) [WS]. Pour les

d6veloppeurs

qui

veulent crder

des

applications

basdes

sur les

donndes

de

Stackexchange,

en

utilisent leurs

langages de

programmation

qui

lui

sont familiers, tels que F# et JavaScript, Stackexchange a mis en ligne

une

API

(actuellementV2.2) avec une documentation

d'utilisation

de

I'API

accessible d travers

le site Web. [W12] '"r Badger

.!

Comments

It'

PostHistory

It'

PostLinks lL' Posts

't'

Tags

llr

Usen '-l.i Votes

I:JJ,:l1l

ii; lr, Pl,,'l 1J

l":l1l

1J:1n Pl,l

ll,'i

li;i3

ll:lt

Fl',{

l;

jlriirli

ii:lr

Pi.'l l J,

Jrliif

l J: lr, Pl,,'l

l;'J'lili,

li: lo Fhl

I I'J,'':l'l

I

1 l;l

I

F l'1

Ii'JrJlll

lJ:1I Fli't

;iitlL Icrunrent iiiilL Dccunrent i'l''..'lL Dccument ;i|.,'ll $riunrent ,ililL Dccilnrent ,thlL [ciunrrnt ,ii'{L Dciunrcnt ;t[,;lL D'rcunrent

(32)

E

Entrep6t

de donn6es

&

systimes

doentraide euestion/R6ponse

4.

Besoins doanalyse dans un

systime

de

elR

Stackoverflow et Stackexchange contient un tr6sor scientifique, une trds large quantitd de

donndes du monde r6el spdcialisd dans

le

domaine de

QIR

(section 3.1.3).

En

2018-2A19, on

compte neuf milliards pages

we

par 100 millions ou plus d'utilisateurs, StackOverflow a g6ndrd

plus de 2,5

millions

de r6ponses et deux

millions

de nouvelles questionso et plus de 1,6

million

de nouveaux utilisateurs ont rejoint la communautd.[Wl3]

Les sch6mas de donndes de StackOverflow est document6 dans le Stackexchan

ge

data explorer

(SEDE,

voir

la

section 3.1.3).

La

qualit6 des

donn6es

est

6lev6e

grdce

au travail

des

administrateurs

et

des mod6rateurs,

malgrd que

les

donndes

de

monde

r6el

aient

toujours

tendance d avoir du

bruit.

L'analyse des donndes du monde rdel est beaucoup plus int6ressante

car elle permet de comprendre I'impl6mentation des techniques et leurs efficacitds.

Comme

Stackexchange

est

un

domaine

de

Q/&

souvent l'expression

des

requetes

d'exploration des donndes passe par l'dcriture du code, c'est-d-dire I'analyste pour r6pondre d un

besoin

d'analyse

il

lui

faut dcrire et exdcuter une requ6te SQL, ou un code dans un langage de

programmation

qui

fait

appel

e

I'API

(dans notre cas

I'API

de

Stackoverflow),

ce

qui

rend

l'analyse par

non

informaticiens

diffrcile et

car

le

code sera

difficile d

dcrire

et

i

d6boguer.

Aussi,

il

faut prendre en compte

le

bruit et la

perte d'informations, due au grand volume de

donndes et le temps 6lev6 pour les rdcupdrer d

partir

du site Web. En outre, pour les requ6tes

SQL,

il

faut

utiliser

plusieurs jointures, ce

qui

est couteux en termes de temps de reponse et

parfois, les requ6tes sont trds complexes d dcrire et plusieurs groupements dans une seule requ6te

compliquentc,ette dernidre (Figures 7 et 8).

Toutefois, le SQL n'est pas ad6quat pour effectuer des analyses ndcessitant des explorations

et

des navigations dans les donn6es

afin

de prendre des ddcisions. Pour

avoir

une ex6cution

rapide des requ€tes ;

il

faut que la m€moire soit rapide et donc un mdcanisme de mdmoire cache

sera

utile

et

preuve acc6l6rer les requdtes

(en utilisant

les requOtes pr6c6dents), les rdsultats

peuvent causer

un out-of

memory, (mdmoire insuffrsante) quand les requOtes elles sont trop

specifiques. Dans ce cas les spicialistes en SQL demandant de mat6rialiser certains des rdsultats

(we

mat6rialisee) dans un espace sur le disque est

la-il

faisant ddjn

h

moddlisation et

I'OLAp

(33)

lll

Entrepdt

de

donn6es

&

Systimes

d'entraide

QuestionlR6ponse

--

ilsis flrany uFfl,rBtss

do

I

ha,re

fcr

each tag?

--

hcit long

befor'e

I

get tag

hadge:?

OECLARE SUserId

int,-

{;li..rs,;r ",'-:;:r-:,

SELE{T --TOP 20

TagHame,

caUl.IT{';') A5 UpVotes

FROf'l TaEg

fi,;i.rlR :i..:,ft: PostTags ON

FcstTags.Tagld = Tags.id

Ii.rl,i::,q: :,;:JLj

Pssts

OFJ

Posts.Parentld

.= PostTags.PastId

Iiii,iif{

*riii." VDtes ON

Votes.Postld

,"

Pssts,Id **c

VoteTypeld

'. i

tlllEf;E

Posts,OrvnerUserld,., SUsenId

6ROUP BY Tagllane

OROER EY lJpVotes DESC

Figure 07. Requ€te el : "GROUP By rAG NAME"

-

[W8]

Re"sulte

l.J'ndc=,.rE,tr

TagHarne

pg,,verFl"leil :3te.nd.ar{ts .net-3"5 CatE.llaEe

iing

.net

cotYln-rancl-lif

ie

'.scriFtti{}g -net-4,.3 €sF.

flet

Erep

DEster

sql-ser-l'er

:=iorecl-pr0cedu res tcld u

|lit-testing

Upl/ates

?5

11

1t

11 1'l

7

6

6

,*

3

3

3

3

3

3

3

(34)

E

Entrep0t

de

donn6es

&

systimes

d'entraide

euestionlR6ponse

Dans

la requ6te

Ql

en Figure

7,

nous avons

fait

trois

jointures et

un

< group by Tag

Name>. Par contre,

si

on veut aussi grouper

par

< User > et < Tag Name >>, la requOte devient

plus

complexe comme

la

requ6te

Q2

en

figure

8.

On pourra donc imaginer qu'une analyse

exploratoire

n6cessite

d

l'analyste

d'6crire une

succession

de

requ6tes

de plus en

plus

complexes, ce qui pourrait devenir pdnible.

-- iJp !! Dclrn voles by day oi:ieek cf Qursticn or in-rr;er 5ELEfi

CASE !&lEli Postlypeld = 1 THEU 'Quesiicn' EL5E 'ensr:r' il,lD As [post TypeJ, 0ATEM}IEfl{EEKDAY, p.Creation0aie) A5 Cai,

{ount(') A5 tuount,

siX:(CAiE !&ltll VoteTypeld =

i

TflElt

i

EL5E 0 Em) AS Upvotei,

Sifj(ttst l.,+lEll VoteTypeld

'

r TilEti

i

ELSE 0 EttD) A5 Do,rnVotes, cAsE !.*lEti stf.i(cAsE lftEil voteTypeld -" I rHEri 1 EtsE 0 Ets) " I THEil r;,.,

EL5E(lA5I(5Ui{lASEhtlEf'lVoteTypeid.2IHEI{1Et5l0ElE)A5flcat)iciJT(5Ull($5ElifiE}tVoteTypeld.iTH$,l1ELSE0EtiD)A5flcat

EIS A5 UpVoteDovnVote[atio

FROI

Votes v ,,.i:, Posts p 0N v.Postld=p,Id

ITIEf;E

PostTypeld irr (1,i.)

i:r:l

VoteTypeld i:r (i,3)

GRflJP BY

Postlypeld, DATipAf,T(tiEEOAY, p,treationDate), DATEttAItE(HiEtOAy, p,CreationDate)

OROER 8Y

Pottlypeld, DATEPART(liEEKDAY, p,(reationDate)

Figure 09. Requ6te e2: " ILUSEURs cRoup By"

-

tWSl

Le fait qui nous a conduit d penser

i

une autre solution plus adequateo celle de construire un

entrepdt de donnees

Q/R pour faciliter

I'analyse des donn6es, gagner en temps

et avoir

une

vision complet et pas compliqu6e et aussi dviter la perte d'information.

5.

Conclusion

Au

cours de ce chapitre Nous avons abordd le concept d'Entrepdt de donndes,

qui

est une

solution pour

l'aide

i

la

ddcision. Nous avons prdsentd la d6finition

d'un

entrep6t de donndes,

ses caract6ristiques, son architecture et la mod6lisation multidimensionnelle. Aussi, nous avons

ddfini

les systdmes d'entraide en

ligne Q/R,

et prdsent6 une analyse de ces systdmes. Nous

avons fait une comparaison entre Stackexchange, Yahoo ! Answers et Quora pour faire sortir les

6l6ments en mmmuns

et

les diff6rences. Nous avons 6tudi6 I'exploration des donndes Q,&. de

Stackexchange et avons pr6sent6 les besoins d'analyse dans

un

systdme d'entraide Q/R. Cette

pr6sentation des besoins d'analyse qui nous a motiv6 d proposer comme solution au probldme un

(35)

Cftapitre

2

Conception

du Systime

1.

fntroduction

2.

L'approche

de

la

conception

3.

Description

des

sources de donn6es

4.

Mod6lisation

Conceptuelle

5.

Conception

Logique

(36)

f

conception

du

systime

1".

Introduction

Avec

la

gdndralisation

de l'informatique

dans

tous les

secteurs

d'activitd, les

entreprises

produisent et manipulent de tres importants volumes de donndes dlectroniques. Ces donndes sont

stockdes dans

les

systdmes opdrationnels

de

I'entreprise

au

sein

de

bases

de

donndes, de

fichiers...

L'exploitation de

ces donndes dans

un but

d'analyse

et

de

support

i

la

prise

de

ddcision

s'avdre

difficile

et fastidieuse ; elle est rdalis6e le plus souvent de manidre imparfaite

par les

ddcideurs grdce

d

des

moyens classiques (requ6tes

SQL,

wes,

outils

graphiques

d'interrogation. . .).

Ces systdmes paraissent peu adapt6s pour servir de support d la prise de ddcision. Ces bases

op6rationnelles utilisent le moddle relationnel ; celui-ci convient bien aux applications g6rant

L'activitd

quotidienne de I'entreprise, mais s'avdre inadapt| au ddcisionnel

[Kimball

1996]. Face

d cette inad6quationo les entreprises ont recours d des systdmes d'aide d

la

ddcision spdcifiques,

basds sur I'approche des entrepdts de donndes. Cependant, de tels systdmes restent

diffrciles

d

6laborer

et

sont

souvent r6alis6s

de

manidre empirique, rendant I'dvolution

du

systdme

ddcisionnel d6licate. Actuellement, les entreprises ont besoin d'outils et de moddles pour la mise

en place de systdmes ddcisionnels comportant des donn6es dvolutives [Inmon 1994].

L'objet de ce chapitre est de

ddfinir la

mod6lisation conceptuelle des donndes de site web

www.stackexchange.com et on utilisant une combinaison des approches Top

Down

et Bottom

Up, prdsent6e dans le chapitre prdcddent.

2.

Approche

de

la conception

Dans le chapitre pr6cedent, nous avons pr6sent6 difTerentes approches de conception de systdmes

d6cisionnels, notamment, I'approche Top

Down

de lnmon, I'approche Bottom up de Kimball.

Dans ce chapitre, nous montrons

I'utilisation

de ces deux approches

pour

la

conception d'un

schdma multidimensionnel

qui

sera au cmur du systdme d6cisionnel.

La

combinaison des deux

approches est justifiee par les points suivants :

o

Le rdseau de StackExchange a mis d la disposition de ses utilisateurs une API permettant

d'interroger sa base de donndes, notannment par des requOtes d'analyse. Cependant, ces

requ6tes ne permettent pas d'effecfuer des regroupements avancdes des donndes. Par

exemple, certaines requ0tes sont cibldes pour un utilisateur donnd d la fois mais peuvent

Ote

g6ndralisde

en

regroupant

les

donndes

par

utilisateur.

Aussi,

il

est

possible

d'exploiter

les hi6rarchies cachdes dans les donndes pour permettre des regroupements

Figure

Figure  l-Dondes  non  volatiles  [W16]
Tableau  0l.OLAP  VS OLTP  [M1]
Figure  02.architecture  de rdference  d'un ED  [W16]
Table  de  faits  des ventes  journalidres
+7

Références

Documents relatifs

On s'int6resse i la gestion des wilayates en fonction de leur production agricole et industrielle en vue de leur affecter un budget. Chaque ville est caract6ris6e

Le premier est le projet TALE (Teachers' Assessment Literacy Enhancement), financé par l'UE, qui a été primé dans le domaine de la formation continue des

Et bien qu’il y ait encore mainte belle page, très émouvante à la fois et très suggestive, dans le chapitre où le héros du livre nous raconte les longues

III.2.2 Déterminer la fréquence de rotation du moteur si et le couple utile moteur T u1 pour un réglage de la pression d'air comprimé à 7 bars. III.2.3 En déduire la

Ce scénario décrit les processus qui surviennent lors des interventions de maintenance précédant généralement un avis de panne pour un objet technique (vous avez également

MouseListener en Java, mais que l'on ne souhaite pas implémenter de comportement pour toutes les méthodes, on peut dériver la classe MouseAdapter.. Celle-ci fournit en effet un

Dans ce contexte, une application permettant de simuler des montages expérimentaux de sources radioactives émettant des rayonnements gamma a été développée : elle permet de mesurer

La simulation et le dimensionnement d'une cellule multi-sources avec une carte de commande est une étape primordiale dans la caractérisation et la rentabilité à long terme d'un