• Aucun résultat trouvé

Conversions intra-modèles orientés documents

2. Uniformisation de la modélisation NoSQL des entrepôts. Les modèles NoSQL sont des solutions récentes qui sont destinées à répondre à des besoins

4.2.1 Conversions intra-modèles orientés documents

La Figure 29 illustre les conversions directes entre les quatre modèles d’implantation orientée documents. Nous allons définir dans cette section les différentes règles de conversion.

Figure 29 Processus de conversions logique orienté documents

Nous définissons douze règles de conversion intra-modèles orientés documents. Le Tableau 7 définit les règles de conversion. Chaque ligne désigne le modèle origine et chaque colonne le modèle cible vers lequel la conversion est effectuée. Nous spécifions la conversion pour chaque mesure ("FÎFS, "mÎMF) ainsi que pour chaque attribut de dimension (DÎStarS(F), "aÎAD). Plat Imbriqué Hybride Eclaté Document Colonne Document Colonne Document Colonne Document Colonne Conversions

66

Tableau 7 Synthèse des règles de conversion intra-modèles orientés documents

Schéma cible orienté documents

Plat Imbriqué Hybride Eclaté

S ch ém a o ri g in e o ri en té d o cu m en

ts Plat CF.di.m CF.di.NF

.m CF.di.m CF.di.m CF.di.a CF di.ND .a CF.dj.a aºidD Þ CF.di.a CD.dj.a aºidDÞ CF.di.a

Imbriqué CF.di.NF.m CF.di.m CF.di.m CF.di.m

CF di.ND.a CF.di.a CF.dj.a

aºidD Þ

CF.di.a

CD.dj.a

aºidDÞ CF.di.a

Hybride CF.di.m CF.di.m CF.di.NF

.m CF.di.m CF.dj.a aºidD Þ CF.di.a CF.di.a CF di.ND .a CD.dj.a aºidDÞ CF.di.a

Eclaté CF.di.m CF.di.m CF.di.NF

.m CF.di.m CD.dj.a aºidD Þ CF.di.a CF.di.a CF di.ND .a CF.dj.a aºidD Þ CF.di.a

Nous détaillons les différents processus de conversion du tablau précédent pour chaque modèle origine.

Règle de conversion du modèle plat : une collection CF implantée suivant le modèle à plat, est constituée de documents dont la structure est comme suit :

− "FÎFS, "mÎMF, CF.di.m

− "DÎStarS(F), "aÎAD, CF.di.a

Leur conversion vers les trois modèles cibles repose sur les règles ci-dessous. Imbriqué :

− Chaque attribut issu d’une mesure m est placé dans une structure imbriquée NF. − Chaque attribut issu d’une dimension a est placé dans une structure imbriquée

ND. Hybride :

− Le document di est converti en plusieurs documents placés dans la même collection : un document di et un document dj pour chaque dimension liée. − Chaque attribut issu d’une mesure m est placé dans une structure plate

− Chaque attribut issu d’une dimension a est placé dans une structure plate, mais dans un document différent. Lorsque l’attribut est racine aºidD, il est également ajouté dans la structure du document di.

Eclaté :

− Le document di est converti de manière analogue, en plusieurs documents, mais ces derniers sont placés dans des collections distinctes, une pour le fait CF, et une pour chaque dimension liée CD.

67

− Chaque attribut issu d’une dimension a est placé dans une structure plate, mais dans un document différent de la collection. Lorsque l’attribut est racine aºidD, il est également ajouté dans la structure du document di.

Règle de conversion du modèle imbriqué : une collection CF implantée suivant le modèle imbriqué, est constituée de documents dont la structure est comme suit :

− "FÎFS, "mÎMF, CF.di.NF.m

− "DÎStarS(F), "aÎAD, CF di.ND.a

Leur conversion vers les trois modèles cibles repose sur les règles ci-dessous. Plat :

− Chaque mesure de NF est « désimbriquée ». − Chaque attribut de ND est « désimbriqué ». Hybride :

− Le document di est converti en plusieurs documents placés dans la même collection : un document di et un document dj pour chaque dimension liée. − Chaque attribut issu d’une mesure m est « désimbriquée ».

− Chaque attribut issu d’une dimension a est « désimbriquée », mais dans un document différent. Lorsque l’attribut est racine aºidD, il est également ajouté dans la structure du document di.

Eclaté :

− Le document di est converti de manière analogue, en plusieurs documents, mais ces derniers sont placés dans des collections distinctes, une pour le fait CF, et une pour chaque dimension liée CD.

− Chaque attribut issu d’une mesure m est « désimbriquée ».

− Chaque attribut issu d’une dimension a est « désimbriquée », mais dans un document différent dj d’une collection différente CD. Lorsque l’attribut est racine aºidD, il est également ajouté dans la structure du document di.

Règle de conversion du modèle hybride : une collection CF implantée suivant le modèle imbriqué, est constituée de documents dont la structure est comme suit :

− "FÎFS, "mÎMF, CF.di.m

− "DÎStarS(F), CF.dj.a et aºidD Þ CF.di.a

Leur conversion vers les trois modèles cibles repose sur les règles ci-dessous. Plat :

− Les documents di et dj sont regroupés en un seul document di.

− Chaque mesure m est maintenue à plat dans le document di. On pourra noter que les attributs dupliqués issus des racines ne sont pas convertis (supprimés). − Chaque attribut a d’un document dj est replacé dans le document di. Imbriqué :

68

− Chaque attribut issu d’une mesure m est placé dans une structure imbriquée NF. On pourra noter que les attributs dupliqués issus des racines ne sont pas convertis (supprimés).

− Chaque attribut a d’un document dj est replacé dans le document di, dans une structure imbriquée ND.

Eclaté :

− Les documents di et dj sont distribués dans des collections différentes CF et CD. Règle de conversion du modèle éclaté : les collections CF et CD implantées suivant le modèle éclaté, sont constituées de documents dont la structure est comme suit :

− "FÎFS, "mÎMF, CF.di.m

− "DÎStarS(F), CD.dj.a et aºidD Þ CF.di.a

Leur conversion vers les trois modèles cibles repose sur les règles ci-dessous. Plat :

− Les documents di et dj sont regroupés en un seul document di placé dans une même collection CF.

− Chaque mesure m est maintenue à plat dans le document di. On pourra noter que les attributs dupliqués issus des racines ne sont pas convertis (supprimés). − Chaque attribut a d’un document dj est replacé dans le document di. Imbriqué :

− Les documents di et dj sont regroupés en un seul document di placé dans une même collection CF.

− Chaque attribut issu d’une mesure m est placé dans une structure imbriquée NF. On pourra noter que les attributs dupliqués issus des racines ne sont pas convertis (supprimés).

− Chaque attribut a d’un document dj est replacé dans le document di, dans une structure imbriquée ND.

Hybride :

− Les documents di et dj sont regroupés dans une collection CF.

Exemple : Nous n’illustrons qu’un cas de conversion d’un modèle imbriqué vers le modèle hybride. Nous reprenons l’exemple du document di du chapitre précédent.

La structure Si initiale du document est la suivante :

[id, User[idUser,name,language,time_c,time_z], Location[city,country,population,zone], Time[day,month,month_name,year], Subject[topic,category], Tweet[Retweet_NB]

69

]

Cette structure Si est convertie suivant les règles énoncées précédemment. Plusieurs documents sont construits :

− un document 𝑖𝐿𝑇𝑤𝑇𝑇𝑇 pour les attributs issus de la structure Tweet[Retweet_NB]

(correspondante au fait), et

− quatre documents 𝑖𝑆𝑈𝑈𝑇𝑈, 𝑖𝑆𝐿𝐿𝐿𝐿𝑇𝐿𝐿𝐿, 𝑖𝑆𝑇𝐿𝑇𝑇, 𝑖𝑆𝑆𝑆𝑆𝑆𝑇𝐿𝑇 pour chaque structure

User[idUser, name, language, time_c, time_z], Location[city, country, population, zone],

Time[day, month, month_name, year], Subject[topic, category] (correspondantes aux

quatre dimensions liées).

Les structures de chaque document sont définies comme suit.

𝑆𝐿𝑇𝑤𝑇𝑇𝑇 = [id,idUser,city,day,topic,Retweet_NB]

𝑆𝑆𝑈𝑈𝑇𝑈 = [idUser,name,language,time_c,time_z]

𝑆𝑆𝐿𝐿𝐿𝐿𝑇𝐿𝐿𝐿 = [city,country,population,zone]

𝑆𝑆𝑇𝐿𝑇𝑇 = [day,month,month_name,year]

𝑆𝑆𝑆𝑆𝑆𝑆𝑇𝐿𝑇 = [topic,category]

La Figure 30 présente un exemple de conversion du document complet, c’est-à-dire, de son schéma et des valeurs.

70

Figure 30 Exemple de conversion intra-modèle en orienté documents, du modèle imbriqué vers le modèle hybride

Documents relatifs