29 Export de données
Vous pouvez exporter des données à partir d'une base de données Essbase pour déplacer des données entre des cubes, ou à des fins de sauvegarde et de migration.
Pour exporter des données à partir d'un cube à l'aide de l'interface Web Essbase, accédez à Travaux et choisissez Exporter les données.
Si vous utilisez une API REST, vous pouvez exporter des données à l'aide du type de travail Exporter les données, comme indiqué dans l'adresse pour Exécuter le travail.
Pour exporter des cubes entiers de l'interface Web Essbase vers un format de classeur, reportez-vous à Export d'un cube vers un classeur d'application.
Voir aussi Insertion et export de données avec MDX.
Rubriques supplémentaires :
Exporter des données à l'aide de MaxL
Vous pouvez exporter des données à partir d'une base de données Essbase à l'aide de l'instruction MaxL Export data. Les données peuvent être exportées en série ou en parallèle. Si les données d'un thread dépassent 2 Go, Essbase peut diviser les données d'export en plusieurs fichiers avec des chiffres ajoutés aux noms de fichier.
Les fichiers d'export sont stockés dans le répertoire de base de données du catalogue de fichiers, par exemple, Files > applications > Sample > Basic.
Exportations de données en mode "block storage"
A partir des cubes BSO, vous pouvez exporter toutes les données, données de niveau 0 ou données de niveau entrée, qui n'incluent pas les valeurs calculées.
Pour exporter des données BSO en parallèle, indiquez une liste de fichiers d'export séparés par des virgules, jusqu'à un maximum de 1024 noms de fichier. Le nombre de noms de fichier détermine le nombre de threads d'export. Le nombre de plages d'adresses de blocs disponibles limite le nombre de threads d'export réellement utilisés par Essbase. Essbase divise le nombre réel de blocs de données par le nombre spécifié de noms de fichier (threads d'export). Si le nombre de blocs de données réels est inférieur au nombre de threads d'export indiqué, le nombre de threads d'export créés dépend du nombre de blocs de données réels. Cette approche permet une répartition plus uniforme des blocs de données entre les threads d'export.
Remarques :
Lorsque vous indiquez le nombre de fichiers d'export, il est important de prendre en compte le nombre de coeurs de processeur et la bande passante d'E/S disponibles sur l'ordinateur sur lequel le serveur Essbase s'exécute. La spécification d'un nombre trop important peut entraîner des performances médiocres.
Les opérations d'export parallèles sur les cubes BSO ne créent pas de threads de manière dynamique, mais utilisent un nombre défini de threads provenant d'un pool de threads pré-créé. Vous pouvez personnaliser la taille du pool de threads. Pour plus d'informations, reportez-vous au paramètre de configuration WORKERTHREADS.
Voir : instruction MaxL export data pour BSO.
Exportations de données en mode "aggregate storage"
A partir de cubes en mode "aggregate storage" (ASO), vous ne pouvez exporter que des données de niveau 0, qui n'incluent pas les valeurs calculées. (Les données de niveau 0 sont identiques aux données d'entrée dans ASO.) Vous ne pouvez pas effectuer d'export de données de niveau supérieur ou d'export en colonnes à partir d'un cube ASO.
Pour exporter des données ASO en parallèle, indiquez une liste de fichiers d'export séparés par des virgules, de 1 à 8 noms de fichier. Le nombre de threads utilisés par Essbase dépend généralement du nombre de noms de fichier que vous indiquez. Cependant, sur un très petit cube ASO avec un petit nombre de blocs de données, il est possible qu'un seul fichier soit créé (en fait, en effectuant un export série), même si un export parallèle vers plusieurs fichiers est demandé.
Voir : instruction MaxL export data pour ASO.
Exporter des données texte à l'aide de scripts de calcul
L'export de données basé sur un script de calcul Essbase fonctionne uniquement avec les membres stockés et calculés dynamiquement, et offre moins d'options de formatage que les scripts de rapport. Toutefois, les exports de données basés sur des scripts de calcul fournissent des options de formatage basées sur la décimale et la précision et peuvent être plus rapides que les scripts de rapport.
La commande de calcul DATAEXPORT permet également l'exportation directement vers des bases de données relationnelles, éliminant ainsi l'étape intermédiaire d'importation.
Vous pouvez utiliser les commandes de calcul suivantes pour sélectionner et formater un fichier d'import de texte :
L'exemple de script de calcul suivant génère un fichier texte qui contient un sous-ensemble de la base de données.
SET DATAEXPORTOPTIONS
{ DATAEXPORTLEVEL "ALL";
DATAEXPORTCOLFORMAT ON;
DATAEXPORTCOLHEADER Scenario;
};
FIX ("100-10","New York","Actual","Qtr1");
DATAEXPORT "File" "," "actual.txt" "NULL";
ENDFIX;Ces commandes indiquent l'inclusion de tous les niveaux de données et indiquent que les données doivent être répétées dans des colonnes, la dimension Scénario étant définie comme en-tête de colonne de dimension dense pour la sortie. La commande FIX définit la tranche de données, puis les données sont exportées vers un fichier texte actual.txt dans le répertoire de base de données. Les virgules sont utilisées comme séparateurs et les valeurs de données manquantes sont indiquées par des séparateurs consécutifs. L'exécution de ce script sur Sample Basic génère les données suivantes :
"Actual"
"100-10","New York","Sales","Qtr1",1998
"100-10","New York","COGS","Qtr1",799
"100-10","New York","Margin","Qtr1",1199
"100-10","New York","Marketing","Qtr1",278
"100-10","New York","Payroll","Qtr1",153
"100-10","New York","Misc","Qtr1",2
"100-10","New York","Total Expenses","Qtr1",433
"100-10","New York","Profit","Qtr1",766
"100-10","New York","Opening Inventory","Qtr1",2101
"100-10","New York","Additions","Qtr1",2005
"100-10","New York","Ending Inventory","Qtr1",2108
"100-10","New York","Margin %","Qtr1",60.01001001001001
"100-10","New York","Profit %","Qtr1",38.33833833833834
"100-10","New York","Profit per Ounce","Qtr1",63.83333333333334