A következő útmutatók segítségével végezheti el az összevont partíciókkal rendelkező Essbase-kockák karbantartását vagy hibaelhárítását.
Ez a témakör feltételezi, hogy Ön létrehozott egy összevont partíciót és áttekintette az előző témakörökben részletezett információkat.
Összevont partíciókocka tervezésekor kövesse ezeket a tesztelési útmutatásokat, ha a létrehozás túl sok időbe telik. Ezek az útmutatások hasznos eszközt jelenthetnek, ha fázisokra bontott megközelítést szeretne alkalmazni a hibaelhárításnál vagy a teljesítmény nyomon követésénél.
Indítsa el az összevont partíció projektet tesztkörnyezetben.
Kezdje olyan kockamodellekkel, amelyek a következő jellemzőkkel rendelkeznek:
nincs sok szintje
nincs sok megosztott tagja vagy attribútuma
Összevont partíció létrehozásakor ütemezzen be offline műveleteket, ha a lekérdezések nem engedélyezettek a példányban.
Fokozatosan válassza le az aktív Essbase felhasználói munkameneteket, a MaxL módosítja az alkalmazást használatával tiltsa le a parancsokat
és/vagy tiltsa le a kapcsolatokat
(az új felhasználói tevékenység megakadályozásához) ezután módosítja a rendszert jelentkeztesse ki a munkameneteket
és/vagy állítsa le a kérelmet
(ha meg kell szakítania olyan aktív munkameneteket, amelyeknek nem kell befejeződniük). Vegye figyelembe, hogy aMaxL nem tudja megszakítani az Autonomous Data Warehouse adattárházban futó kérelmeket. Ha letiltja a parancsokat az alkalmazásban, ne feledje el ismét engedélyezni őket az összevont partíció létrehozása után.
/etc/httpd/conf.d/00_base.conf:ProxyTimeout 1260
/etc/httpd/conf.d/00_base.conf:Timeout 1260
olap.server.netRetryCount
.Megjegyzés:
Ha az összevont partíció létrehozásakor a „Sikertelen a szerkezet mentése” hibaüzenetet látja, várja meg, amíg a munkamenetek befejeződnek, majd frissítse a böngészőt. Ha az összevont partíció létrejött, akkor érvényesítse azt az SQL Developerben. Miután az SQL Developerben érvényesítette, az összevont partíció használatra kész. Ha nem érvényesül az SQL Developerben, akkor a modellt meg kell javítani, és az időtúllépést a fenti 3. lépésben leírtak szerint be kell állítani.Ha az Essbase rendelkezik összevont partícióval, legyen óvatos a kocka szerkezetének szerkesztésekor. Ha hozzáad vagy átnevez tagokat, győződjön meg arról, hogy a metaadatok módosításait az Autonomous Data Warehouse adattárház ténytáblája is tükrözi.
Ha az Essbase-szerkezet és az Autonomous Data Warehouse adattárház szinkronizálása megszakad, az összevont partíció érvénytelenné válik, vagy nem fog megfelelően működni. Ezt úgy javíthatja ki, hogy elveti az összevont partíciót, módosítja a szerkezetet és a ténytáblát, majd ismét létrehozza az összevont partíciót.
Ha az összevont partíció érvénytelenné válik, a következő hibaüzenettel találkozhat:Essbase Hiba(1040235): Távoli figyelmeztetés az összevont partíciótól
.
A következő típusú Essbase-szerkezetmódosítások az összevont partíció érvénytelenné válásához vezetnek:
Dimenziók hozzáadása, átnevezése vagy eltávolítása
Tagok hozzáadása, átnevezése vagy eltávolítása (kimutatásdimenzió)
Tag módosítása tároltról dinamikusra
A fent nem jelzett, egyéb típusú Essbase-szerkezetmódosítások esetében (például olyan személy hozzáadása vagy átnevezése, aki nem tagja a kimutatásdimenziónak) el kell végezni a megfelelő módosításokat a ténytábla érintett adatsorában is. Egyéb esetben előfordulhat, hogy az összevont partíció nem fog megfelelően működni.
Ha előre tudja, hogy az Essbase-szerkezet metaadatai módosulni fognak, érdemesebb először eltávolítani az összevont partíciót, elvégezni a szerkezet módosításait, frissíteni a ténytáblát, majd ismét létrehozni az összevont partíciót.
Ha viszont az Essbase metaadatai módosultak, és ezért az összevont partíció érvénytelenné vált, tegye a következőt:
Távolítsa el az összevont partíciót és a hozzá társított kapcsolatot (ha egyéb esetben nem használatos) a következő helyen leírtak szerint: Összevont partíció eltávolítása.
Az Autonomous Data Warehouse összevont partíció felhasználói sémájában törölje manuálisan az Essbase által generált táblákat és a többi olyan objektumot, amely nem került eltávolításra az összevont partícióval.
Győződjön meg róla, hogy a szerkezet módosításait az Essbase-kockában végzik el.
Hozza létre újra a ténytáblát. Lásd: Ténytábla létrehozása.
Hozza létre újra a kapcsolatot az Autonomous Data Warehouse adattárházzal. Ez lehet globális kapcsolat (az Essbase webes felületének fő Források ikonja alatt), vagy lehet a Források része, amelyet csak az alkalmazáshoz definiáltak. Kövesse a következőben leírt utasításokat: Kapcsolat létrehozása összevont partíciókhoz.
Hozza létre újra az összevont partíciót a következőben leírtak szerint: Összevont partíció létrehozása.
Ha módosultak annak azAutonomous Data Warehouse-kapcsolatnak a részletei, amelyet az Essbase összevont partícióhoz használ, el kell vetni, és újra létre kell hozni az összevont partíciót, valamint törölni kell a társított objektumokat és a metaadattáblákat az adatbázissémából.
El kell vetni, és újra létre kell hozni az összevont partíciót, ha a következő események bármelyike bekövetkezik az összevont partíció létrehozását követően:
Módosul az Autonomous Data Warehouse portja
Módosul a kapcsolat neve
A kapcsolat tárcát használ, és Ön egyik szolgáltatásnévről a másikra vált (a teljesítmény vagy a párhuzamosság módosításának céljából).
Egy szerkezetmódosítás módosítja a ténytábla tagleképezését, ezért az összevont partíció szinkronizálása nem megfelelő. A részleteket lásd: Metaadatokkal kapcsolatos óvintézkedések összevont partíciókockák esetén.
Ha előre tudja, hogy módosulni fognak a kapcsolat részletei, érdemesebb eltávolítani az összevont partíciót a módosítás megtörténte előtt, és a módosítást követően újra létrehozni. Azonban, ha a kapcsolat módosult, és ezért az összevont partíció érvénytelenné vált, kövesse a következő lépéseket.
Összevont partíció eldobása
Távolítsa el az összevont partíciót és a hozzá társított kapcsolatot (ha egyéb esetben nem használatos) a következő helyen leírtak szerint: Összevont partíció eltávolítása.
Az összevont partícióhoz kapcsolódó objektumok és metaadattáblák törlése
Az Autonomous Data Warehouse összevont partíció felhasználói sémájában dobja el az Essbase által generált táblákat és a többi olyan objektumot, amely nem került eltávolításra az összevont partícióval.
ssh az Essbase-kiszolgáló gazdagépéhez az opc felhasználóként.
ssh -i MPOCI_KEY.pem opc@100.xxx.xxx.xxx
Módosítsa oracle felhasználóra (és lépjen a kezdőkönyvtárára).
sudo su - oracle
Navigáljon az alkalmazások könyvtárára.
cd /u01/data/essbase/app
Az Essbase alkalmazás és a kockanév használatával azonosítsa az összevont partíció objektumaival és metaadataival társított egyedi előtagot.
Olvassa be az alkalmazás nevét (AppName). A név megkülönbözteti a kis- és nagybetűket, ezért pontosan rögzítse. Ebben a példában az AppName = Sample.
ls
Sample
Számolja meg a karakterek számát (appx) az alkalmazás nevében.
Például: appx = 6.
Navigáljon a kocka könyvtárára, és olvassa be a kocka nevét (DbName). A név megkülönbözteti a kis- és nagybetűket, ezért pontosan rögzítse. Ebben a példában a DbName = Basic.
cd /Sample
ls
Basic
Számolja meg a karakterek számát (dby) a kocka nevében.
Például: dby = 5.
Hozza létre az Előtag elemet mint:
ESSAV_<appx><AppName>_<dby><DbName>_
Példa:
<Prefix> = ESSAV_6Sample_5Basic_
Az SQL Developer vagy egy másik eszköz használatával csatlakozzon az Oracle Database adatbázishoz annak a sémának a felhasználójaként, amelyhez az összevont partíció csatlakoztatva van.
Futtasson egy SELECT utasítást, hogy létrehozza az összevont partícióalkalmazással társított objektumok listáját. Ezeket az objektumokat fogja törölni a következő lépésben.
A SELECT utasítás formátuma a következő:
SELECT * FROM user_OBJECTS WHERE OBJECT_NAME like '<Prefix>%';
Példa:
SELECT * FROM user_OBJECTS WHERE OBJECT_NAME like 'ESSAV_6Sample_5Basic_%';
Futtasson egy tárolt PL/SQL-folyamatot, amely törli az összes elemzési nézetet, csomagot, hierarchiát, táblát és egyéb objektumot, amely az Előtag elemmel van társítva.
Példa
Cserélje ezt: ESSAV_6Sample_5Basic_
az Előtag elemre.
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; /
Dobja el és frissítse a társított metaadatokhoz kapcsolódó táblákat. Először a következők értékeit kell lekérni: ESSBASE_INSTANCE_UNIQUE_ID és OTL_ID.
ssh az Essbase-kiszolgáló gazdagépéhez az opc felhasználóként.
ssh -i MPOCI_KEY.pem opc@100.xxx.xxx.xxx
Módosítsa oracle felhasználóra (és lépjen a kezdőkönyvtárára).
sudo su - oracle
Keressen rá az Essbase ügynök folyamatra.
ps -ef | grep ESSS | grep -v "grep"
A fenti parancsnak vissza kell adnia egy folyamatlistát, amely az oracle
előtaggal kezdődik, amelyet két folyamatazonosító követ; például:
oracle 10769 19563 ...
Tekintse az első azonosítót <PID>
értéknek. Ezt a következő lépésben fogja használni.
Használja a strings parancsot az ESSBASE_INSTANCE_UNIQUE_ID értékének rögzítéséhez.
strings /proc/<PID>/environ | grep ESSBASE_INSTANCE_UNIQUE_ID
Példa:
strings /proc/10769/environ | grep ESSBASE_INSTANCE_UNIQUE_ID
A fenti parancsnak az ESSBASE_INSTANCE_UNIQUE_ID értékét kell visszaadnia; például:
ESSBASE_INSTANCE_UNIQUE_ID=EWRnHFlQteCEzWUhF7P3TPKunf3bYs
Az SQL Developer vagy egy másik eszköz használatával csatlakozzon az Oracle Database adatbázishoz annak a sémának a felhasználójaként, amelyhez az összevont partíció csatlakoztatva van.
Futtasson egy SELECT utasítást az OTL_ID értékének lekéréséhez.
A SELECT utasítás formátuma a következő:
SELECT OTL_ID FROM ESSAV_OTL_MTD_VERSION where APPNAME ='<AppName>' and "JAGENT_INSTANCE_ID"='<ESSBASE_INSTANCE_UNIQUE_ID>';
Példa
Cserélje ezt: ESSAV_6Sample_5Basic
erre: AppName, és cserélje ezt: 'EWRnHFlQteCEzWUhF7P3TPKunf3bYs'
erre: ESSBASE_INSTANCE_UNIQUE_ID.
SELECT OTL_ID FROM ESSAV_OTL_MTD_VERSION where APPNAME ='ESSAV_6Sample_5Basic' and "JAGENT_INSTANCE_ID"='EWRnHFlQteCEzWUhF7P3TPKunf3bYs';
A fenti lekérdezésnek az OTL_ID értékét kell visszaadnia, például:
62
Futtasson egy tárolt PL/SQL-folyamatot, hogy eldobja az OTL_ID elemmel társított, metaadatokkal kapcsolatos fájlokat.
Példa
Cserélje a 62
értéket erre: 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; /
Egy UPDATE utasítás futtatásával állítsa az ESSAV_OTL_MTD_VERSION táblát inaktív státuszra.
Példa
Cserélje ezt: ESSAV_6Sample_5Basic
erre: AppName, és cserélje ezt: EWRnHFlQteCEzWUhF7P3TPKunf3bYs
erre: ESSBASE_INSTANCE_UNIQUE_ID.
UPDATE "ESSAV_OTL_MTD_VERSION" SET "OTL_STATUS" = 'INACTIVE' where APPNAME ='ESSAV_6Sample_5Basic' and "JAGENT_INSTANCE_ID"='EWRnHFlQteCEzWUhF7P3TPKunf3bYs'; commit;
A kapcsolat és az összevont partíció újbóli létrehozása
Hozza létre újra a kapcsolatot az Autonomous Data Warehouse adattárházzal. Ez lehet globális kapcsolat (az Essbase webes felületének fő Források ikonja alatt), vagy lehet a Források része, amelyet csak az alkalmazáshoz definiáltak. Kövesse a következőben leírt utasításokat: kapcsolat. Tesztelje és mentse a kapcsolatot.
Hozza létre újra az összevont partíciót a következőben leírtak szerint: Összevont partíció létrehozása.
Ha továbbra is kapcsolódási hibát lát – például: Essbase Error(1350012): Az OCI felülethez való kapcsolódási kísérlet sikertelen
, tekintse meg a következőt: https://support.oracle.com/rs?type=doc&id=2925030.1.
Az összevont partíciók nem kerülnek áttelepítésre az Essbase-alkalmazásokkal. Amikor arra készül, hogy az alkalmazást egy másik kiszolgálóra vagy Essbase-verzióra telepíti át, törölnie kell az összevont partíciót, és újra létre kell hoznia az új környezetben.
Az összevont partíciókocka biztonsági mentése:
Készítsen biztonsági másolatot az alkalmazásról az adatok nélkül, de foglaljon bele minden mást, amire szüksége lehet (úgy, mint a konfiguráció tulajdonságai, szűrők, változók, számítási parancsfájlok és egyéb modellelemek). Ehhez használja ezt: LCM exportálása (vagy az LCM exportálása feladatot az Essbase webes felületén).
Ténytábla biztonsági mentése Lásd: Az Autonomous Database biztonsági mentése és helyreállítása.
Törölje az összevont partíció definícióját a kockából. Ehhez kövesse a következő helyen található lépéseket: Összevont partíció eltávolítása.
Összevont partíciókocka visszaállítása biztonsági mentésből:
Hozza létre újra az alkalmazást. Ehhez használja a következőt: LcmImport: Kockafájlok helyreállítása (vagy az LCM importálása feladatot az Essbase webes felületén).
Ha szükséges, állítsa vissza az Autonomous Data Warehouse adattábláját.
A kapcsolat újbóli létrehozása az Autonomous Data Warehouse-al. Javasolt új kapcsolatnév használata a hibák elkerülése érdekében
Hozza létre újra az összevont partíciót.