Noudata seuraavia ohjeita yhdistettyjä osioita sisältävienEssbase-kuutioiden ylläpidossa ja vianmäärityksessä.
Tässä aiheessa oletetaan, että käytössäsi on luonut yhdistetyn osion ja olet tutustunut edeltävissä aiheissa esitettyihin tietoihin.
Kun suunnittelet yhdistetyn osion sisältävää kuutiota, noudata näitä ohjeita, jos osion luominen kestää liian kauan. Näiden ohjeiden avulla toiminnan vianmääritys tai seuranta on mahdollista suorittaa vaiheittain.
Aloita yhdistetyn osion projekti testiympäristössä.
Aloita kuutiomalleilla. joilla on seuraavat ominaisuudet:
ei useita tasoja
ei useita jaettuja jäseniä tai määritteitä
Kun luot yhdistettyä osiota, ajoita offline-toimintoja ajankohdille, jolloin instanssi ei salli kyselyjä.
Poista yhteys aktiivisiin Essbase-käyttäjäistuntoihin vaiheittain MaxL:n sovelluksen muutoksen käytöstäpoistokomennoilla
ja/tai poistamalla yhteydet käytöstä
(käyttäjän uusien toimintojen estämiseksi) ja sitten järjestelmän muutoksen istunnon uloskirjauksella
ja/tai lopetuspyynnöllä
(jos on tarpeen lopettaa aktiivisia istuntoja, joita ei tarvitse suorittaa loppuun). Huomaa, että MaxL ei pysty lopettamaan pyyntöjä, jotka saattavat olla käynnissä Autonomous Data Warehousessa. Jos otat komentoja pois käytöstä sovelluksessa, muista ottaa ne uudelleen käyttöön yhdistetyn osion luomisen jälkeen.
/etc/httpd/conf.d/00_base.conf:ProxyTimeout 1260
/etc/httpd/conf.d/00_base.conf:Timeout 1260
olap.server.netRetryCount
arvoon 9000.Huomautus::
Jos näet Runkoa ei voitu tallentaa -virheen luodessasi yhdistettyä osiota, odota, että istunnot valmistuvat, ja päivitä sitten selain. Jos yhdistetty osio on luotu, vahvista se SQL Developer -ohjelmassa. Jos yhdistetyn osion vahvistus onnistuu SQL Developer -ohjelmassa, se on valmis käyttöön. Jos tarkistus SQL Developer -ohjelmassa ei onnistu, malli täytyy korjata ja sen aikakatkaisua täytyy säätää kuten vaiheessa 3 on edellä kuvattu.Kun Essbasessa on yhdistetty osio, ole huolellinen muokatessasi kuution runkoa. Jos lisäät tai nimeät uudelleen jäseniä, varmista, että metatietojen muutokset esiintyvät myös faktataulussa Autonomous Data Warehousessa.
Jos Essbase-runko ei enää ole synkronoitu Autonomous Data Warehousen faktataulun kanssa, yhdistetystä osiosta tulee virheellinen tai se ei enää toimi asianmukaisesti. Voit korjata sen poistamalla yhdistetyn osion, tekemällä muutoksia runkoon ja faktatauluun sekä luomalla yhdistetyn osion uudelleen.
Jos yhdistetystä osiosta tulee virheellinen, voit saada virheilmoituksen, jonka alussa on Essbase Error(1040235): Remote warning from federated partition
.
Seuraavan tyyppiset Essbase-rungon muutokset tekevät yhdistetystä osiosta virheellisen:
Dimensioiden lisääminen, nimeäminen uudelleen tai poistaminen
Pivot-dimension tallennettujen jäsenten lisääminen, nimeäminen uudelleen tai poistaminen
Minkä tahansa jäsenen muuttaminen tallennetusta dynaamiseksi
Muuntyyppisille, edellä mainitsemattomilleEssbase-rungon muutoksille (esimerkiksi muun kuin pivot-dimension jäsenen lisääminen tai nimeäminen uudelleen) vastaava muutos tulee tehdä faktataulun tietoriville, johon muutos vaikuttaa. Muutoin yhdistetty osio ei välttämättä toimi asianmukaisesti.
Jos tiedät etukäteen, ettäEssbase-rungon metatiedot muuttuvat, on parempi poistaa yhdistetty osio ensin, tehdä rungon muutokset, päivittää faktataulu ja luoda sitten yhdistetty osio uudelleen.
Jos Essbase-metatiedot kuitenkin muuttuivat ja aiheuttivat yhdistetyn osion virheen, toimi seuraavasti:
Poista yhdistetty osio sekä siihen liittyvä (tai muutoin käyttämätön) yhteys kohdassa Yhdistetyn osion poisto kuvatun mukaisesti.
Poista Autonomous Data Warehouse -palvelun yhdistetyn osion sisältävästä käyttäjärakenteesta manuaalisesti kaikki Essbasen luomat taulut ja muut objektit, joita ei ole poistettu yhdistetyn osion mukana.
varmista, että rungon muutokset on suoritettu loppuun Essbase-kuutiossa.
Luo faktataulu uudelleen. Katso kohta Faktataulun luonti.
Muodosta yhteys Autonomous Data Warehouseen uudelleen. Kyseessä voi olla yleinen yhteys (Lähteet-pääkuvakkeen alla Essbase-verkkokäyttöliittymässä), tai se voi olla nimenomaan sovellusta varten määritetyissä lähteissä. Noudata kohdassa Yhteyden luominen yhdistetyille osioille annettuja ohjeita.
Luo yhdistetty osio uudelleen kohdassa Yhdistetyn osion luonti esitetyn mukaisesti.
Jos Autonomous Data Warehouse -yhteyden tiedot, joita Essbase käyttää yhdistetylle osiolle, ovat muuttuneet, yhdistetty osio on poistettava ja luotava uudelleen. Lisäksi liittyvät objektit ja metatietotaulut on puhdistettava rakenteesta.
Yhdistetty osio on poistettava ja luotava uudelleen, jos jokin seuraavista on tapahtunut yhdistetyn osion luonnin jälkeen:
Autonomous Data Warehouse -portti muuttuu
Kohteen yhteys nimi muuttuu
Kohde yhteys käyttää lompakkoa ja siirryt yhden palvelun nimestä toiseen (suorituskyky- tai samanaikaisuusmuutoksien takia)
Rungon päivitys muuttaa jäsenen määritystä faktatauluun, mistä seuraa yhdistetyn osion epäsynkronisuus. Katso lisätietoja kohdasta Metatietojen varotoimet yhdistetyn osion kuutioille.
Jos tiedät etukäteen, että yhteyden tiedot muuttuvat, on parempi poistaa yhdistetty osio ennen muutosta ja luoda se uudelleen muutoksen jälkeen. Jos yhteys kuitenkin muuttui ja aiheutti yhdistetyn osion virheen, suorita seuraavaksi esiteltävät toimenpiteet.
Yhdistetyn osion poisto
Poista yhdistetty osio sekä siihen liittyvä (tai muutoin käyttämätön) yhteys kohdassa Yhdistetyn osion poisto kuvatun mukaisesti.
Yhdistettyyn osioon liittyvien objektien ja metatietotaulujen puhdistus
Poista Autonomous Data Warehouse -palvelun yhdistetyn osion sisältävästä käyttäjärakenteesta kaikki Essbasen luomat taulut ja muut objektit, joita ei ole poistettu yhdistetyn osion mukana.
SSH Essbase-palvelimen isäntäkoneelle OPC-käyttäjänä.
ssh -i MPOCI_KEY.pem opc@100.xxx.xxx.xxx
Vaihda Oracle-käyttäjäksi (ja siirry sen kotihakemistoon).
sudo su - oracle
Siirry sovellushakemistoon.
cd /u01/data/essbase/app
Tunnista yhdistetyn osion objekteihin ja metatietoihin liittyvä yksilöivä prefiksi Essbase-sovellusta ja kuution nimeä käyttäen.
Hae sovelluksen nimi (AppName). Nimi on kirjainkoosta riippuva, joten tallenna se täsmälleen oikeassa muodossa. Tässä esimerkissä AppName = Sample.
ls
Sample
Laske merkkien lukumäärä (appx) sovelluksen nimessä.
Esimerkki: appx = 6.
Siirry kuutiohakemistoon ja hae kuution nimi (DbName). Nimi on kirjainkoosta riippuva, joten tallenna se täsmälleen oikeassa muodossa. Tässä esimerkissä DbName = Basic.
cd /Sample
ls
Basic
Laske merkkien lukumäärä (dby) kuution nimessä.
Esimerkki: dby = 5.
Muodosta prefiksi seuraavasti:
ESSAV_<appx><AppName>_<dby><DbName>_
Esimerkki:
<Prefix> = ESSAV_6Sample_5Basic_
Muodosta SQL Developeria tai jotakin muuta työkalua käyttäen yhteys Oracle Databaseen sen rakenteen käyttäjänä, johon yhdistetty osio on yhdistetty.
Luo SELECT-lauseen avulla luettelo objekteista, jotka liittyvät yhdistetyn osion sisältävään sovellukseen. Kyseiset objektit puhdistetaan seuraavassa vaiheessa.
SELECT-lauseen muoto:
SELECT * FROM user_OBJECTS WHERE OBJECT_NAME like '<Prefix>%';
Esimerkki:
SELECT * FROM user_OBJECTS WHERE OBJECT_NAME like 'ESSAV_6Sample_5Basic_%';
Aja tallennettu PL/SQL-proseduuri, joka puhdistaa kaikki analyysinäkymät, paketit, hierarkiat, taulut ja muut liittyvät objektit, joilla on kyseinen prefiksi.
Esimerkki
Korvaa ESSAV_6Sample_5Basic_
omalla prefiksilläsi.
SET SERVEROUTPUT ON; declare prefix_str varchar2(70) := 'ESSAV_6Sample_5Basic_'; BEGIN FOR c IN ( SELECT ANALYTIC_VIEW_NAME FROM user_analytic_views WHERE ANALYTIC_VIEW_NAME like prefix_str || '%' ) LOOP EXECUTE IMMEDIATE 'DROP ANALYTIC VIEW "' || c.ANALYTIC_VIEW_NAME || '" '; DBMS_OUTPUT.PUT_LINE('ANALYTIC VIEW ' || c.ANALYTIC_VIEW_NAME || ' dropped successfully.'); END LOOP; FOR c IN ( SELECT distinct OBJECT_NAME FROM USER_PROCEDURES WHERE OBJECT_TYPE='PACKAGE' and OBJECT_NAME like prefix_str || '%' ) LOOP EXECUTE IMMEDIATE 'DROP PACKAGE "' || c.OBJECT_NAME || '" '; DBMS_OUTPUT.PUT_LINE('PACKAGE ' || c.OBJECT_NAME || ' dropped successfully.'); END LOOP; FOR c IN ( SELECT distinct HIER_NAME FROM USER_HIERARCHIES WHERE HIER_NAME like prefix_str || '%' ) LOOP EXECUTE IMMEDIATE 'DROP HIERARCHY "' || c.HIER_NAME || '" '; DBMS_OUTPUT.PUT_LINE('HIERARCHY ' || c.HIER_NAME || ' dropped successfully.'); END LOOP; FOR c IN ( SELECT distinct DIMENSION_NAME FROM USER_ATTRIBUTE_DIM_TABLES_AE WHERE DIMENSION_NAME like prefix_str || '%' ) LOOP EXECUTE IMMEDIATE 'DROP ATTRIBUTE DIMENSION "' || c.DIMENSION_NAME || '" '; DBMS_OUTPUT.PUT_LINE('ATTRIBUTE DIMENSION ' || c.DIMENSION_NAME || ' dropped successfully.'); END LOOP; FOR c IN ( SELECT distinct TABLE_NAME FROM USER_TABLES WHERE TABLE_NAME like prefix_str || '%' ) LOOP EXECUTE IMMEDIATE 'DROP TABLE "' || c.TABLE_NAME || '" purge'; DBMS_OUTPUT.PUT_LINE('TABLE ' || c.TABLE_NAME || ' dropped successfully.'); END LOOP; FOR c IN ( SELECT distinct VIEW_NAME FROM USER_VIEWS WHERE VIEW_NAME like prefix_str || '%' ) LOOP EXECUTE IMMEDIATE 'DROP VIEW "' || c.VIEW_NAME || '" '; DBMS_OUTPUT.PUT_LINE('VIEW ' || c.VIEW_NAME || ' dropped successfully.'); END LOOP; FOR c IN ( SELECT distinct TYPE_NAME FROM USER_TYPES WHERE TYPE_NAME like prefix_str || '%' ) LOOP EXECUTE IMMEDIATE 'DROP TYPE "' || c.TYPE_NAME || '" FORCE'; DBMS_OUTPUT.PUT_LINE('TYPE ' || c.TYPE_NAME || ' dropped successfully.'); END LOOP; END; /
Poista ja päivitä asianomaiset metatietoihin liittyvät taulut. Hae ensin arvot kohteille ESSBASE_INSTANCE_UNIQUE_ID ja OTL_ID.
SSH Essbase-palvelimen isäntäkoneelle OPC-käyttäjänä.
ssh -i MPOCI_KEY.pem opc@100.xxx.xxx.xxx
Vaihda Oracle-käyttäjäksi (ja siirry sen kotihakemistoon).
sudo su - oracle
Hae Essbase-taustaohjelman prosessia.
ps -ef | grep ESSS | grep -v "grep"
Edellä olevan komennon pitäisi palauttaa prosessiluettelo, jonka alussa on oracle
ja sen jälkeen kaksi prosessitunnusta. Esimerkki:
oracle 10769 19563 ...
Huomaa, että ensimmäisen prosessin tunnus on<PID>
, sitä käytetään seuraavassa vaiheessa.
Sieppaa kohteen ESSBASE_INSTANCE_UNIQUE_ID arvo strings-komennolla.
strings /proc/<PID>/environ | grep ESSBASE_INSTANCE_UNIQUE_ID
Esimerkki:
strings /proc/10769/environ | grep ESSBASE_INSTANCE_UNIQUE_ID
Edellä olevan komennon pitäisi palauttaa kohteen ESSBASE_INSTANCE_UNIQUE_ID arvo. Esimerkki:
ESSBASE_INSTANCE_UNIQUE_ID=EWRnHFlQteCEzWUhF7P3TPKunf3bYs
Muodosta SQL Developeria tai jotakin muuta työkalua käyttäen yhteys Oracle Databaseen sen rakenteen käyttäjänä, johon yhdistetty osio on yhdistetty.
Hae kohteen OTL_ID arvo SELECT-lauseen avulla.
SELECT-lauseen muoto:
SELECT OTL_ID FROM ESSAV_OTL_MTD_VERSION where APPNAME ='<AppName>' and "JAGENT_INSTANCE_ID"='<ESSBASE_INSTANCE_UNIQUE_ID>';
Esimerkki
Korvaa ESSAV_6Sample_5Basic
AppName-kohteella ja EWRnHFlQteCEzWUhF7P3TPKunf3bYs
ESSBASE_INSTANCE_UNIQUE_ID-kohteella.
SELECT OTL_ID FROM ESSAV_OTL_MTD_VERSION where APPNAME ='ESSAV_6Sample_5Basic' and "JAGENT_INSTANCE_ID"='EWRnHFlQteCEzWUhF7P3TPKunf3bYs';
Edellä olevan kyselyn pitäisi palauttaa kohteen OTL_ID arvo. Esimerkki:
62
Poista kohteeseen OTL_ID liittyvät metatietoja koskevat taulut ajamalla tallennettu PL/SQL-proseduuri.
Esimerkki
Korvaa 62
kohteella OTL_ID.
SET SERVEROUTPUT ON; BEGIN FOR c IN ( SELECT distinct TABLE_NAME FROM USER_TABLES WHERE TABLE_NAME like 'ESSAV_MTD_62_%' ) LOOP EXECUTE IMMEDIATE 'DROP TABLE "' || c.TABLE_NAME || '" purge'; DBMS_OUTPUT.PUT_LINE('TABLE ' || c.TABLE_NAME || ' dropped successfully.'); END LOOP; END; /
Määritä ESSAV_OTL_MTD_VERSION-taulu ei-aktiiviseksi UPDATE-lauseen avulla.
Esimerkki
Korvaa ESSAV_6Sample_5Basic
AppName-kohteella ja EWRnHFlQteCEzWUhF7P3TPKunf3bYs
ESSBASE_INSTANCE_UNIQUE_ID-kohteella.
UPDATE "ESSAV_OTL_MTD_VERSION" SET "OTL_STATUS" = 'INACTIVE' where APPNAME ='ESSAV_6Sample_5Basic' and "JAGENT_INSTANCE_ID"='EWRnHFlQteCEzWUhF7P3TPKunf3bYs'; commit;
Yhteyden ja yhdistetyn osion uudelleenluonti
Muodosta yhteys Autonomous Data Warehouseen uudelleen. Kyseessä voi olla yleinen yhteys (Lähteet-pääkuvakkeen alla Essbase-verkkokäyttöliittymässä), tai se voi olla nimenomaan sovellusta varten määritetyissä lähteissä. Noudata kohdassa yhteys annettuja ohjeita. Muista testata ja tallentaa yhteys.
Luo yhdistetty osio uudelleen kohdassa Yhdistetyn osion luonti esitetyn mukaisesti.
Jos näet edelleen esimerkiksi seuraavanlaisen yhteysvirheen Essbase-virhe(1350012): Yritys muodostaa yhteys OCIin epäonnistui
, tarkista https://support.oracle.com/rs?type=doc&id=2925030.1.
Yhdistettyjä osioita ei siirretä Essbase-sovellusten mukana. Kun valmistaudut siirtämään sovelluksen tai kuution toiseen palvelimeen tai toiseen Essbase-versioon, yhdistetty osio on poistettava ja luotava uudelleen uudessa ympäristössä.
Varmuuskopioi yhdistetyn osion sisältävä kuutio seuraavasti:
Varmuuskopioi sovellus ilman tietoja mutta siten, että se sisältää kaiken muun tarvitsemasi (kuten konfiguraation ominaisuudet, suodattimet, muuttujat, laskentakomentosarjat ja muun sisällön). Voit tehdä tämän käyttämällä kohdetta LCM-vienti (tai työtä LCM-vienti Essbase-verkkokäyttöliittymässä).
Varmuuskopioi faktataulu. Katso kohta Autonomous Database -tietokannan varmuuskopiointi ja palauttaminen.
Poista yhdistetyn osion määritys kuutiosta kohdassa Yhdistetyn osion poisto esitettyjen vaiheiden mukaisesti.
Palauta yhdistetyn osion sisältävä kuutio varmuuskopiosta seuraavasti:
Luo sovellus uudelleen käyttämällä kohdetta LcmImport: kuutiotiedostojen palautus (tai LCM-tuonti-työtä Essbase-verkkokäyttöliittymässä).
Jos tarpeen, palauta faktataulu Autonomous Data Warehousessa.
Yhteyden muodostaminen uudelleen to Autonomous Data Warehouse -palveluun. On suositeltavaa käyttää uutta yhteyden nimeä virheiden estämiseksi.
Luo yhdistetty osio.