バージョンアップ
スキーマ
Cognos
Fixpack
ContentStore

Cognos でFixPackを適用するとContent Storeのテーブル構造が変更になる話

概要

昔から、Cognos BIやCognos Analyticsで、バージョンアップやFixPackを適用すると、Content Storeのテーブル構造が変更になってしまうので、適用前にはデータベースのバックアップ機能でContent Storeのバックアップを取得しておきましょう、という話がありました。
全てのFixPackで必ずテーブル構造が変更するわけではなく、特定のFixPackのようですね。

以下のTechnoteに詳細が載っていたので、ご紹介します。

SDK - Content Store Version and CS Schema
http://www-01.ibm.com/support/docview.wss?uid=swg22004107

内容

Content Storeのバージョンという意味では、Content Storeビルド番号と、Content Storeスキーマ・バージョン、という2つの概念があります。

Content Storeビルド番号とは、基本的にFixPackを適用すると上がっていく番号で、Content Store スキーマ・バージョンは、ある特定のFixPackバージョンで、Content Storeのテーブル構造が変更されると上がるバージョンです。
以下の表のような対応になっています。

IBM Cognos Version          C.Store Build   C.Store Schema   
Cognos 10.1.0.0             10.1
Cognos 10.1.1.0             10.1     
Cognos 10.2.0.0             10.2.1003.211   7.0011
Cognos 10.2.0.1             10.2.1003.228   7.0011
Cognos 10.2.0.2             10.2.1102.22    7.0011
Cognos 10.2.0.3             10.2.1103.1     7.0011
Cognos 10.2.0.4             10.2.1103.1     7.0011
Cognos 10.2.0.5             10.2.1105.10    7.0011
Cognos 10.2.1.0             10.2.5000.330   7.0019
Cognos 10.2.1.1             10.2.5001.122   7.0019
Cognos 10.2.1.2             10.2.5002.8     7.0019
Cognos 10.2.1.3             10.2.5003.5     7.0019
Cognos 10.2.1.4             10.2.5004.6     7.0019
Cognos 10.2.1.5             10.2.5005.3     7.0019
Cognos 10.2.1.6             10.2.5006.2     7.0019
Cognos 10.2.1.7             10.2.5007.2     7.0019
Cognos 10.2.1.8             10.2.5008.3     7.0020
Cognos 10.2.1.9             10.2.5009.1     7.0020
Cognos 10.2.1.10            10.2.5010.5     7.0020
Cognos 10.2.1.11            10.2.5011.2     7.0020
Cognos 10.2.1.12            10.2.5012.1     7.0020
Cognos 10.2.2.0             10.2.6100.69    7.0026
Cognos 10.2.2.1             10.2.6102.3     7.0026
Cognos 10.2.2.2             10.2.6102.8     7.0027
Cognos 10.2.2.3             10.2.6103.       
Cognos 10.2.2.4             10.2.6104.       
Cognos 10.2.2.5             10.2.6105.       
Cognos 10.2.2.6             10.2.6106.       
Cognos 10.2.2.7             10.2.6107.5          
Cognos Analytics 11.0.0.0   10.2.7001.113   7.0034
Cognos Analytics 11.0.1.0   11.0.1.4        7.0034
Cognos Analytics 11.0.2.0   11.0.2.16       7.0035
Cognos Analytics 11.0.3.0   11.0.3.25       7.0036
Cognos Analytics 11.0.4.0   11.0.4.23       7.0040
Cognos Analytics 11.0.5.0   11.0.5.33       7.0043
Cognos Analytics 11.0.6.0   11.0.6.28       7.0045
Cognos Analytics 11.0.6.0 IF1007 11.0.6.29  7.0045
Cognos Analytics 11.0.7.0   11.0.7.238      7.0046

FixPackレベルを戻す際には、Content Storeのスキーマ・バージョンが同じ同士であれば、Content Storeのリストア無く戻せます。
また、コンテンツアーカイブのExport/Importも、同じContent Storeのスキーマ・バージョン同士であれば、FixPackレベルが低い環境に対してもImportできます。

これらContent Storeビルド番号と、Content Storeスキーマ・バージョンの確認方法としては、Cognosの起動時にcogserver.logに以下のメッセージが出力されますので、ここで確認するのが一番簡単です。

XXX.XXX.XXX.XXX:9300 1232 2017-12-08 11:06:16.478 +9 Thread-34 CM 6107 1 Audit.RTUsage.cms.CM StartService ContentManagerService Success CM-SYS-5090 Content Manager ビルド 10.2.6107.5 が開始しました (10.2.6107.5;20161109145128、スキーマ・バージョン 7.0027、実装: CMDbStore - Java CMCache)。

また、以下の方法でも確認可能です。

Content Storeビルド番号

以下のURLにアクセス。
http://Server.Domain:Port/p2pd/servlet

cmplst.txtファイルで、「CM_version=」の記載を確認する。

Content Storeスキーマ・バージョン

Content StoreでCMSYSPROPSテーブルのデータをSQL文で確認する。

以下のファイルを確認する。
/configuration/schemas/content//dbInitScript_.sql

具体的には、FixPackを戻さないと行けない時や、他のCognos環境にコンテンツアーカイブをImportする時の判断に使えると思いますので、覚えておいて頂けると幸いです。