Fehler 1012090 bei DATAEXPORT im BINÄR-Format

Unter den Möglichkeiten des Exportes von Fakt-Daten, die einem Essbase-Berater spontan einfallen, gibt es die Option des Exportes per CalcScript, Befehl DATAEXPORT ermöglicht dabei den Export im ASCII- oder dem BINÄR-Format.
Die Option, die Daten direkt per ODBC in eine Datenbank-Tabelle schreiben, betrachtete ich nicht. Auslöser für diesen Beitrag war die Anforderung an mich, einen Daten-Export mit möglichst kleiner Datei-Ausgabe zu finden und habe folgendes Kalkulations-Skript geschrieben.

1. Versuch im ASCII-Format:
DATAEXPORT „FILE“ „,“ „ascii_exp_modellname.txt“;

Bezüglich Geschwindigkeit und Platzbedarf der exportieren Dateien war das Ergebnis vergleichbar mit dem Export per MaxL-Skript, also keine Verbesserung. Das inhaltliche Format war für mich an der Stelle nicht relevant.

2. Versuch im BINÄR-Format
DATAEXPORT „BINFILE“ „bin_exp_modellname“;

Bei vergleichbarer Geschwindigkeit wie zuvor ist die exportierte Datei nur etwa ½ so groß wie bei den anderen Export-Wegen. Ist das die Lösung, die ich gesucht habe?

Die Freude währte nur kurz, beim Import kam der Dämpfer:
Ich benötigte die exportierten Dateien nämlich für die Migration eines Modells von einem Server auf einen anderen. Nach Transfer der BINÄR-Datei auf die Zielmaschine schnell ein Import-Skript geschrieben:
DATAIMPORTBIN „bin_exp_modellname“;
und los.
Kontrolle in den DB-Eigenschaften, keine Daten vorhanden. Ein Blick in die Log-Datei klärt mich auf:

[Tue Nov 11]Local/Sample/Basic/TestUser@Native Directory/139693545981696/Info(1013163)
Received Command [Calculate] from user [TestUser@Native Directory] using [bin_import.csc]

[Tue Nov 11]Local/Sample/Basic/TestUser@Native Directory/139692649395968/Error(1012855)
Binary import of data failed due to mismatch in the outline timestampy

[Tue Nov 11]Local/Sample/Basic/TestUser@Native Directory/139692649395968/Error(1012090)
Binary Data Import Failed. Only [0] blocks were imported.

[Tue Nov 11]Local/Sample/Basic/TestUser@Native Directory/139692649395968/Warning(1080014)
Transaction [ 0x20003( 0x54621231.0x99193 ) ] aborted due to status [1012090].

[Tue Nov 11]Local/Sample/Basic/TestUser@Native Directory/139692649395968/Info(1012579)
Total Calc Elapsed Time for [bin_import.csc] : [0] seconds

In der Tech-Ref finde ich nur einen Hinweis, dass DATAEXPORT / DATAIMPORTBIN keinen Datenaustausch zwischen unterschiedlichen Essbase-Versionen oder zwischen 32- und 64-Bit-Betriebssystemen unterstützt.

ABER:
Die Dokumentation ist an dieser Stelle unvollständig, dies ist als sog. Documentation BUG (12611997 – BINARY IMPORT/EXPORT NOT SUPPORTED, NOT IN DOCS) erfasst.

Der BINÄR-Export ist ausschließlich für den Export / Import von Daten des selben Modells gedacht, also ein klassisches Datenbank-Backup.

Unter Kollegen tauscht man sich aus, so meinte Philip nach Schilderung meiner Erkenntnisse: „Hast Du den FTP-Transfer zwischen den Servern im BINÄR-Format gemacht? Andere Übertragungsarten können das Format verändern. Und noch auf die LOCALE von Essbase achten!“

Dem Hinweis bin ich nachgegangen, mit folgenden Ergebnissen:

Test nach FTP im BINÄR-Format ohne SET IGNORETIMESTAMP ON
[Mon Nov 24]Local/Sample/Basic/EH2SMXZ@Native Directory/139638695999232/Info(1013163)
Received Command [Calculate] from user [EH2SMXZ@Native Directory] using [bin_imp.csc]

[Mon Nov 24]Local/Sample/Basic/EH2SMXZ@Native Directory/139638682314496/Error(1012855)
Binary import of data failed due to mismatch in the outline timestamp

[Mon Nov 24]Local/Sample/Basic/EH2SMXZ@Native Directory/139638682314496/Error(1012090)
Binary Data Import Failed. Only [0] blocks were imported.

[Mon Nov 24]Local/Sample/Basic/EH2SMXZ@Native Directory/139638682314496/Warning(1080014)
Transaction [ 0x150001( 0x5472f207.0xc40e9 ) ] aborted due to status [1012090].

[Mon Nov 24]Local/Sample/Basic/EH2SMXZ@Native Directory/139638682314496/Info(1012579)
Total Calc Elapsed Time for [bin_imp.csc] : [0.02] seconds


Stimmt, der Timestamp wird verglichen, der kann ja nicht stimmen, deshalb ein neuer Versuch.
Nach FTP im BINÄR-Format mit SET IGNORETIMESTAMP ON

[Mon Nov 24]Local/Sample/Basic/EH2SMXZ@Native Directory/139639321831168/Info(1013163)
Received Command [Calculate] from user [EH2SMXZ@Native Directory] using [bin_imp.csc]

[Mon Nov 24]Local/Sample/Basic/EH2SMXZ@Native Directory/139638682314496/Error(1012083)
Binary import of data failed due to block size mismatch.

[Mon Nov 24]Local/Sample/Basic/EH2SMXZ@Native Directory/139638682314496/Error(1012090)
Binary Data Import Failed. Only [0] blocks were imported.

[Mon Nov 24]Local/Sample/Basic/EH2SMXZ@Native Directory/139638682314496/Warning(1080014)
Transaction [ 0x10001( 0x5472f3b2.0xd39db ) ] aborted due to status [1012090].

[Mon Nov 24]Local/Sample/Basic/EH2SMXZ@Native Directory/139638682314496/Info(1012579)
Total Calc Elapsed Time for [bin_imp.csc] : [0] seconds

Ich habe beide Tests mit identischer Outline durchgeführt, es bleibt dabei, die Funktion ist nicht für den Datenaustausch zwischen verschiedenen Datenbanken geeignet.
Sie kennen doch die Unterscheidung: Ein identisches Modell auf 2 verschiedenen Servern mag das gleiche sein, es ist aber nicht das selbe!
Zur Kontrolle die gleiche Datei zurück in das Modell importiert, aus dem sie exportiert wurden, wie erwartet, ohne Probleme.

Somit ist der CalcScript-Export im BINÄR-Format als Option zur Migration von Essbase-Daten ausgeschieden.

Wesentliche Vorteile eines Kalkulations-Skriptes zum Export von Fakt-Daten bleiben

  • der Export in eine Datenbank
  • die Performance (gegenüber Essbase-Reports)
  • die Selektions-Möglichkeiten mit FIX, IF, etc. (gegenüber dem reinen MaxL-Export)

nach oben

Berater, entwickler und fan von Oracle Essbase und Planning.

Veröffentlicht in Bewirtschaftung & Automatisierung, Essbase Verwendete Schlagwörter: , , ,
2 Kommentare zu “Fehler 1012090 bei DATAEXPORT im BINÄR-Format
  1. for integration purposes better use mdx with nonemptyblock clause.

    • Michael Schmidt sagt:

      Hi Eugene,
      Yes, indeed this is my favourite procedure too. It was just a trial to check out, if the binary-dataexport-command could be a better way to migrate data.
      Regards, Michael

Schreibe einen Kommentar