Registration

Dear SAP Community Member,
In order to fully benefit from what the SAP Community has to offer, please register at:
http://scn.sap.com
Thank you,
The SAP Community team.
Skip to end of metadata
Go to start of metadata

SQP IQとはどんな製品か?

SAP SQL Anywhere(SQLA)をベースに動作する検索スピードに特化した、RDBMSです。
データファイルには圧縮したインデックス情報を格納し、クエリーに必要なデータをすべてメモリ上に展開してから操作することで、高速な検索スピードを可能にします。

SAP IQは重に以下の状況で使用される製品です

  • 意思決定支援システム(DSS)
  • データウェアハウス(DQH) 

SAP IQの主な利点

  • 高速性
    • アドホック・クエリ用の設計
    • 検索でのI/Oの減少
    • 実行の高速化
  • 経済性
    • 優秀なデータ圧縮技術
    • ディスク格納サイズの減少
  • 柔軟性
    • 異なるデータ・ソースの使用が可能

特徴

特殊なデータ構造

  • カラムワイズデータ構造
    • カラム単位でデータを格納し読み込む
    • クエリに必要なカラムのみを返し、I/Oを減少
  • ビットワイズ・インデックス
    • 特許技術による新型のインデックスで計算/比較/ソートを高速化
  • データ圧縮
    • データを圧縮してディスクに格納
  • マルチプレックス
    • 最大1024ノードによる分散処理を提供します
  • 標準のオープンインターフェース

SAP IQの構造

Simplex

 

カタログ エンジン

カタログエンジンはSQLAnywhere(SQLA)をベースにしたデータベースエンジンです。


カタログエンジンはIQデータベースの管理とユーザー接続管理を主に担当します。

構成ファイル

params.cfg
起動パラメータを設定
dbname.log
トランザクションログ
dbname.db
カタログストア(純粋なSQLAデータベース)
dbname.000-999.srvlog
サーバーログ(カタログエンジンのエラーログ)

SQP IQ エンジン

IQエンジンはユーザークエリーを処理します。
IQ_SYSTEM_MAINはシステムDB領域であり、ユーザーオブジェクトをここには作成しません。

構成ファイル

dbname.iq
IQシステムDB領域(IQ_SYSTEM_MAIN)
dbname.iqtmp
テンポラリDB領域(IQ_SYSTEM_TEMP)
usermain.iq
ユーザーDB領域(例:IQ_USER_MAIN)
dbname.iqmsg
IQメッセージログ(IQエンジンのエラーログ)
dbname.lmp
ライセンス情報

基本ファイルの場所 (SAP IQ 16.0)

IQのモジュールやログはIQ-16_0ディレクトリに存在します。

Windows環境

  • IQ Home: %IQDIR16%
  • SYBASE HOME: %SYBASE%
  • DBファイル:ユーザー指定のディレクトリ
  • SRVログ
    • デフォルトでは作成されません。アプリケーション起動の場合はタスクトレイに常駐したメッセージウィンドウがそれに相当します。(KBA 1949642)
    • 起動オプション"-o"を指定している場合には、指定されたディレクトリに存在します。
  • IQMSGファイル
    • DBファイルと同じディレクトリ(デフォルトの場合)またはCREATE DATABASEにMESSAGE PATH句を指定している場合は、指定されたディレクトリ

Linux/UNIX環境

  • IQ Home: $IQDIR16
  • SYBASE HOME: $SYBASE
  • DBファイル:ユーザー指定のディレクトリ
  • SRVログ
    • $IQDIR16/logfilesディレクトリ。起動オプション"-o"を指定している場合には、指定されたディレクトリに存在します。
  • IQMSGファイル
    • DBファイルと同じディレクトリ(デフォルトの場合)またはCREATE DATABASEにMESSAGE PATH句を指定している場合は、指定されたディレクトリ

Incident 登録時に必要な基本情報

Incidentを登録する際、正確な製品バージョンとエラー内容を確認するために以下のファイルを収集して、Incidentに添付します。

  • iqmsgファイル
  • srvlogファイル
  • stderrファイル

 

getiqinfoを使おうこれらの情報は個別に収集する必要はありません。SQP IQにはこれらの情報を収集するユーティリティ(getiqinfo)が付属します。

問題が発生している場合には、1つのユーティリティと3つのプロシージャの結果を取得します。

getiqinfo
OS情報を含む、SAP IQの環境情報をすべて取得するユーティリティで取得します。
KBA 2120431: SAP IQの環境情報取得方法について
sp_iqstatus
現在のデータベースについてさまざまなSQP IQのステータつ情報を表示します。
sp_iqtransaction***
実行中のトランザクションについて情報を収集します。
sp_iqconnection***
接続中のセッション情報を収集します。

*** これらのプロシージャは数秒おきに数回実行した結果を取得します。

プロセスが異常終了した時

IQサーバーがダウンした場合

再起動する前にエラーログの収集をする。

  • SAP IQはディスクI/Oを減らすために、操作のほとんどをバッファキャッシュ(メモリ)上で行います。そのため、もしもプロセスが異常終了時にデータの書き込み中であっても、メモリ上のダータは再起動時にロールバックされますからデバイス上のデータが壊れる可能性は低い製品です。
  • しかしページ(ディスク)の整合性を確認するために異常終了かrなお再起動五は、必ずsp_iqcheckdbの実行をすることを推奨します。
  • リカバリ後、時間が取れない場合はallocationモードでデータベース全体の割付けをチェックします。
    -sp_iqcheckdb 'allocation database'
  • 重大なトラブルから再起動後はcheckモードでデータベース全体の割付けとインデックスのエラーをチェックします。
    -sp_iqcheckdb 'check database'
  • sp_iqcheckdbの結果からページ破損やリークページがないことを確認します。 

sp_iqcheckdbの各モードの動作と出力

モード検出されるエラー出力処理速度
Allocation割付けのエラー割付の統計情報のみ一時間あたり4TB
Check割付けのエラー大部分のインデックスエラー
表示可能なすべての統計情報 
一時間あたり60GB
Verify割付けのエラーすべてのインデックスエラー
表示可能なすべての統計情報 
一時間あたり15GB
Dropleaks割付けのエラー割付けの統計情報のみ一時間あたり4TB

メモリーダンプ(クラッシュダンプ)の取得

SAPは次の状況が発生している場合に、SAP IQのメモリダンプをリクエストすることがあります。

  • IQMSGやSRVLOGにエラーメッセージやスタックトレースが出力されていない
  • プロセスが異常終了(サイレントクラッシュ)する

SAPはメモリダンプを解析して、スタックトレースを抽出します。

  • スタックトレースから過去事例を検索して問題解決に使用します。
  • メモリーダンプから問題を特定し、コードを修正することはありません。
  • 問題の修正には再現手順が必要となります。SAP Note.9

 

再現

Linux/UNIXの再現時の資料の取得

Linux/UNIXの場合は、ある処理を実行した時にIQサーバーがダウンする場合に再現性があるならば、IQサーバープロセスからCoreファイルを作成することも可能です。

[設定方法]
環境変数 IQ_UNLIMIT_CORE に YES を設定します。

[(設定例]
% setenv IQ_UNLIMIT_CORE YES
YES は、必ず大文字で指定する必要があります。

設定後にIQを再起動すると、起動メッセージに Notice が表示されます。
この状態で再び、IQをダウンさせることができれば、完全なCoreファイルが作成されます。

 

Windowsでの再現時の資料の取得

Windowsの場合、特別な手順が必要です。

  • IQサーバーがダウンした時にVC++ Runtime Errorが発生した場合には、Windows の画面にエラーダイアログが表示されることがあります。
  • その場合、OKボタンを押すまでは IQ サーバープロセスは消滅しません。
  • その前に、タスクマネージャーから Processタブを開いてIQプロセスを探します。(iqsrv16.exe)
     
  • IQプロセスを選択し、コンテキストメニューから、”Create Dump File”を選択して、プロセスダンプを作成します。
  • その後は、SAP IQ を再起動します。

再現がまれな場合には、プログラムのクラッシュ時にプロセスダンプを自動作成するように設定できます。

  1. 以下のキーを作成します。
    HKEY_LOCAL_MACHINE¥SOFTWARE¥Microsoft¥Windows¥Windows Error Reporting¥LocalDumps
  2. 以下の値を追加します。
    詳細は MSDN (https://msdn.microsoft.com/en-us/library/bb787181.aspx) を参照
種類設定例説明
DumpFolderREG_EXPAND_SZ%LOCALAPPDATA%¥CrashDumpsシステムがアクセス可能なフォルダを指定
DumpCount REG_DWORD10

プロセスダンプの保存数
設定数を超えた場合は古いファイルから上書きされる

DumpTypeREG_DWORD1

ダンプの種類を指定します
0: Custom dump
1: Mini dump
2: Full dump

CustomDumpFlagsREG_DWORD 0 常に 0 を指定します

 

SAP IQの役立つリンク

SCN, Wiki

Sybase Channels

SAP IQ Channel

IQ

マニュアル

SAP Helpポータル http://help.sap.com/iq

旧Sybase マニュアルサイト http://help.sap.com/iq

 

  • No labels