Configuration d'un espace de journalisation des transactions

Lorsque la migration est effectuée à partir de versions antérieures d'HCL, certaines parties de la migration de base de données réelle utilisent les transactions de base de données qui peuvent contenir des volumes importants de modifications de données. Pour que la base de données puisse accueillir ces modifications de transaction, la quantité d'espace disponible dans les journaux de transactions de base de données doit être augmentée.

Pourquoi et quand exécuter cette tâche

Certaines plateformes de base de données permettent d'utiliser temporairement un espace de journal de transactions de base de données illimité. Il est recommandé d'activer cette option lors de la migration pour éviter les éventuels problèmes liés au manque d'espace de journal de transactions disponible.

Sur les plateformes ou dans les environnements où une journalisation des transactions illimitée n'est pas proposée, la formule suivante permet de déterminer la quantité d'espace de journal de transactions requise pour terminer la migration. Notez que plusieurs de ces requêtes peuvent être longues (plusieurs minutes) en fonction de la quantité de données de la base de données de portail.

Avant d'exécuter les commandes SQL, vous devez remplacer les références suivantes en fonction de votre environnement.

  • <schema> remplace ce jeton par le schéma utilisé dans la base de données de domaines JCR.
  • <ROOT_WSID> remplace ce jeton par le résultat de SELECT WSID FROM <schema>.ICMSTJCRWS WHERE WSNAME = 'ROOTWORKSPACE'
  • <VER_WSID> replace this token with the result of SELECT WSID FROM <schema>.ICMSTJCRWS WHERE WSNAME = 'jcr:versioning'

Lorsque vous exécutez les étapes suivantes, enregistrez les résultats car vous devez effectuer des calculs afin de calculer les nombres corrects pour paramétrer l'espace de journalisation des transactions.

Les étapes 1 à 8 consistent à calculer l'espace requis en vue de migrer des informations hiérarchiques pour les données HCL stockées dans le JCR excluant toutes les informations de version.

Les étapes 9 à 16 permettent de calculer l'espace requis en vue de migrer les informations hiérarchiques pour les informations de version des données HCL.

Procédure

  1. SELECT COUNT(LID) FROM <schema>.ICMSTJCRLINKS WHERE WSID = <ROOT_WSID> AND INLEAFTREEFLAG = 1 AND SIID IN ( SELECT TIID FROM <schema>.ICMSTJCRLINKS WHERE INLEAFTREEFLAG = 0 AND WSID = <ROOT_WSID> )
  2. SELECT COUNT(LID) FROM <schema>.ICMSTJCRLINKS WHERE WSID = <ROOT_WSID> AND INLEAFTREEFLAG = 1 AND SIID IN ( SELECT TIID FROM <schema>.ICMSTJCRLINKS WHERE WSID = <ROOT_WSID> AND INLEAFTREEFLAG = 1 AND SIID IN ( SELECT TIID FROM <schema>.ICMSTJCRLINKS WHERE INLEAFTREEFLAG = 0 AND WSID = <ROOT_WSID> ) )
  3. SELECT COUNT(LID) FROM <schema>.ICMSTJCRLINKS WHERE WSID = <ROOT_WSID> AND INLEAFTREEFLAG = 1
  4. Exécutez les commandes suivantes selon votre base de données :
    • DB2® et SQL Server
      • WITH PATH ( WSID , SIID, TIID, LVL) AS ( (SELECT WSID, SIID, TIID, 1 AS LVL FROM <schema>.ICMSTJCRLINKS WHERE INLEAFTREEFLAG=1 AND WSID = <ROOT_WSID> AND SIID IN ( SELECT TIID FROM <schema>.ICMSTJCRLINKS WHERE INLEAFTREEFLAG = 0 AND WSID = <ROOT_WSID> )) UNION ALL (SELECT L.WSID, L.SIID, L.TIID, P.LVL + 1 FROM PATH P, <schema>.ICMSTJCRLINKS L WHERE P.SIID = L.TIID AND P.LVL < 1000000 AND INLEAFTREEFLAG = 0 AND L.WSID = <ROOT_WSID>)) SELECT SUM(P1.LVL) FROM PATH P1, <schema>.ICMSTJCRWS WS WHERE P1.WSID = <ROOT_WSID> AND WS.WSID = <ROOT_WSID> AND P1.SIID = WS.ROOTIID
    • Oracle
      • SELECT SUM(LEV) FROM ( SELECT WSID, SIID, TIID, LEVEL LEV FROM JCRPRODWCM.ICMSTJCRLINKS LINKS WHERE WSID = <ROOT_WSID> START WITH INLEAFTREEFLAG = 1 AND SIID IN ( SELECT TIID FROM <schema>.ICMSTJCRLINKS WHERE INLEAFTREEFLAG = 0 AND WSID = <ROOT_WSID> ) CONNECT BY PRIOR SIID = TIID AND INLEAFTREEFLAG = 0 ) P1, JCRPRODWCM.ICMSTJCRWS WS WHERE P1.WSID = <ROOT_WSID> AND WS.WSID = <ROOT_WSID> AND P1.SIID = WS.ROOTIID
  5. Divisez la valeur obtenue à l'étape 4 par la valeur de l'étape 1, arrondie à la valeur entière la plus proche et enregistrez ce nombre.
  6. Soustrayez les valeurs obtenues aux étapes 3, 2 et 1, puis enregistrez ce nombre.
  7. Effectuez l'équation suivante avec les valeurs calculées précédemment : ((valeur de n°5 + 1) * valeur de n°2) + ((valeur de n°5 + 2) * valeur de n°6) + valeur de n°4
  8. Multipliez par 700 la valeur obtenue à l'étape 7 précédente.
  9. SELECT COUNT(LID) FROM <schema>.ICMSTJCRLINKS WHERE WSID = <VER_WSID> AND INLEAFTREEFLAG = 1 AND SIID IN ( SELECT TIID FROM <schema>.ICMSTJCRLINKS WHERE INLEAFTREEFLAG = 0 AND WSID = <VER_WSID> )
  10. SELECT COUNT(LID) FROM <schema>.ICMSTJCRLINKS WHERE WSID = <VER_WSID> AND INLEAFTREEFLAG = 1 AND SIID IN ( SELECT TIID FROM <schema>.ICMSTJCRLINKS WHERE WSID = <VER_WSID> AND INLEAFTREEFLAG = 1 AND SIID IN ( SELECT TIID FROM <schema>.ICMSTJCRLINKS WHERE INLEAFTREEFLAG = 0 AND WSID = <VER_WSID> ) )
  11. SELECT COUNT(LID) FROM <schema>.ICMSTJCRLINKS WHERE WSID = <VER_WSID> AND INLEAFTREEFLAG = 1
  12. Exécutez les commandes suivantes selon votre base de données :
    • DB2® et SQL Server
      • WITH PATH ( WSID , SIID, TIID, LVL) AS ( (SELECT WSID, SIID, TIID, 1 AS LVL FROM <schema>.ICMSTJCRLINKS WHERE INLEAFTREEFLAG=1 AND WSID = <VER_WSID> AND SIID IN ( SELECT TIID FROM <schema>.ICMSTJCRLINKS WHERE INLEAFTREEFLAG = 0 AND WSID = <VER_WSID> )) UNION ALL (SELECT L.WSID, L.SIID, L.TIID, P.LVL + 1 FROM PATH P, <schema>.ICMSTJCRLINKS L WHERE P.SIID = L.TIID AND P.LVL < 1000000 AND INLEAFTREEFLAG = 0 AND L.WSID = <VER_WSID>) ) SELECT SUM(P1.LVL) FROM PATH P1, <schema>.ICMSTJCRWS WS WHERE P1.WSID = <VER_WSID> AND WS.WSID = <VER_WSID> AND P1.SIID = WS.ROOTIID
    • Oracle
      • SELECT SUM(LEV) FROM ( SELECT WSID, SIID, TIID, LEVEL LEV FROM JCRPRODWCM.ICMSTJCRLINKS LINKS WHERE WSID = <VER_WSID> START WITH INLEAFTREEFLAG = 1 AND SIID IN ( SELECT TIID FROM <schema>.ICMSTJCRLINKS WHERE INLEAFTREEFLAG = 0 AND WSID = <VER_WSID> ) CONNECT BY PRIOR SIID = TIID AND INLEAFTREEFLAG = 0 ) P1, JCRPRODWCM.ICMSTJCRWS WS WHERE P1.WSID = <VER_WSID> AND WS.WSID = <VER_WSID> AND P1.SIID = WS.ROOTIID
  13. Divisez la valeur obtenue à l'étape 12 par la valeur de l'étape 9, arrondie à la valeur entière la plus proche et enregistrez ce nombre.
  14. Soustrayez les valeurs obtenues aux étapes 11, 10 et 9, puis enregistrez ce nombre.
  15. Effectuez l'équation suivante avec les valeurs calculées précédemment : ((valeur de n°13 + 1) * valeur de n°10) + ((valeur de n°13 + 2) * valeur de n°14) + valeur de n°12
  16. Multipliez par 700 la valeur obtenue à l'étape 15 précédente.

Résultats

La quantité estimée d'espace de fichier journal des transactions de base de données nécessaire en octets est la plus élevée des deux valeurs déterminées aux étapes 8 et 16.