JPH04370847A - 順ファイルへのトランザクション同期アクセス方法 - Google Patents
順ファイルへのトランザクション同期アクセス方法Info
- Publication number
- JPH04370847A JPH04370847A JP3147750A JP14775091A JPH04370847A JP H04370847 A JPH04370847 A JP H04370847A JP 3147750 A JP3147750 A JP 3147750A JP 14775091 A JP14775091 A JP 14775091A JP H04370847 A JPH04370847 A JP H04370847A
- Authority
- JP
- Japan
- Prior art keywords
- record
- file
- transaction
- records
- record storage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
【産業上の利用分野】本発明は,不揮発性メモリを利用
して順ファイルへのトランザクション同期アクセスを実
現する順ファイルへのトランザクション同期アクセス方
法に関する。
して順ファイルへのトランザクション同期アクセスを実
現する順ファイルへのトランザクション同期アクセス方
法に関する。
【0002】オンライン・トランザクションの処理等に
おいて発生したデータを,順ファイルに格納する場合,
処理性能を向上させ,かつ,記憶媒体におけるスペース
効率を向上させる技術が必要とされる。
おいて発生したデータを,順ファイルに格納する場合,
処理性能を向上させ,かつ,記憶媒体におけるスペース
効率を向上させる技術が必要とされる。
【0003】
【従来の技術】図5は従来技術の例を示す。図5におい
て,10はアプリケーション・プログラムが走行する空
間(以下,アプリ空間という),13はファイルへのア
クセスの排他制御を行う排他機構,16はページバッフ
ァ,17はシーケンシャルにレコードが格納される順フ
ァイルを表す。
て,10はアプリケーション・プログラムが走行する空
間(以下,アプリ空間という),13はファイルへのア
クセスの排他制御を行う排他機構,16はページバッフ
ァ,17はシーケンシャルにレコードが格納される順フ
ァイルを表す。
【0004】従来技術では,トランザクション開始後に
,レコードの書き出し要求があると,そのレコードを揮
発性メモリで構成されるページバッファ16上に蓄えて
おき,トランザクション終了時に,排他機構13によっ
て順ファイル17への排他的なアクセス権(以下,排他
という)を獲得し,ページバッファ16上に存在するト
ランザクション対象のレコードを順ファイル17に書き
出していた。その後,順ファイル17の排他を解放して
いた。
,レコードの書き出し要求があると,そのレコードを揮
発性メモリで構成されるページバッファ16上に蓄えて
おき,トランザクション終了時に,排他機構13によっ
て順ファイル17への排他的なアクセス権(以下,排他
という)を獲得し,ページバッファ16上に存在するト
ランザクション対象のレコードを順ファイル17に書き
出していた。その後,順ファイル17の排他を解放して
いた。
【0005】
【発明が解決しようとする課題】図6は従来技術の問題
点説明図である。順ファイル17に対して,トランザク
ションが連続して発生する場合,毎回のトランザクショ
ン終了時にファイル媒体への入出力(I/O)が出るた
め,一般にI/Oネックとなるという性能上の問題があ
る。
点説明図である。順ファイル17に対して,トランザク
ションが連続して発生する場合,毎回のトランザクショ
ン終了時にファイル媒体への入出力(I/O)が出るた
め,一般にI/Oネックとなるという性能上の問題があ
る。
【0006】例えば,レコードを順ファイル17に反映
するとき,最終レコードの存在するページにレコードを
追加しようとすると,図6の(イ)に示すように,その
ページを,一旦,順ファイル17から読み込み,読み込
んだページにレコードを追加して,そのページを順ファ
イル17に反映するような処理を行う必要がある。しか
し,この処理を行うとレコードを格納するために最低で
も2回のI/Oが出るため,性能上の問題がある。
するとき,最終レコードの存在するページにレコードを
追加しようとすると,図6の(イ)に示すように,その
ページを,一旦,順ファイル17から読み込み,読み込
んだページにレコードを追加して,そのページを順ファ
イル17に反映するような処理を行う必要がある。しか
し,この処理を行うとレコードを格納するために最低で
も2回のI/Oが出るため,性能上の問題がある。
【0007】これを1回のI/Oで済むように,図6の
(ロ)に示すように,最終レコードの存在するページの
次のページにレコードを追加する方式も考えられ,用い
られている。しかし,この方式の場合,各ページにレコ
ードがフルに入っていないとファイル効率の悪化を招く
。例えば,1ページを4096バイトとし,格納するレ
コードの大きさを512バイトとすると,1ページにつ
き(4096−512)バイト分のスペースは空き領域
となり,以降使用されない無駄な領域となる。
(ロ)に示すように,最終レコードの存在するページの
次のページにレコードを追加する方式も考えられ,用い
られている。しかし,この方式の場合,各ページにレコ
ードがフルに入っていないとファイル効率の悪化を招く
。例えば,1ページを4096バイトとし,格納するレ
コードの大きさを512バイトとすると,1ページにつ
き(4096−512)バイト分のスペースは空き領域
となり,以降使用されない無駄な領域となる。
【0008】本発明は上記問題点の解決を図り,トラン
ザクション終了時の性能向上とファイルのスペース効率
向上を可能とした順ファイルへのトランザクション同期
アクセスを実現することを目的としている。
ザクション終了時の性能向上とファイルのスペース効率
向上を可能とした順ファイルへのトランザクション同期
アクセスを実現することを目的としている。
【0009】
【課題を解決するための手段】図1は本発明の原理説明
図である。図1において,10はアプリケーション・プ
ログラムが走行するアプリ空間,11はトランザクショ
ンの開始および終了を制御するトランザクション制御部
,12はファイルに対するアクセス機能を提供するファ
イルシステム,13はファイルへのアクセスの排他制御
を行う排他機構,14は揮発性メモリで構成されるレコ
ードバッファ,15はレコード格納用不揮発性メモリ,
16はページバッファ,17はシーケンシャルにレコー
ドが格納される順ファイルを表す。
図である。図1において,10はアプリケーション・プ
ログラムが走行するアプリ空間,11はトランザクショ
ンの開始および終了を制御するトランザクション制御部
,12はファイルに対するアクセス機能を提供するファ
イルシステム,13はファイルへのアクセスの排他制御
を行う排他機構,14は揮発性メモリで構成されるレコ
ードバッファ,15はレコード格納用不揮発性メモリ,
16はページバッファ,17はシーケンシャルにレコー
ドが格納される順ファイルを表す。
【0010】本発明は,例えばオンライン・データ処理
用の一般的に知られているハードウェア構成による計算
機システムで実現される。本発明では,トランザクショ
ンで書き出されたレコードを一時的に格納するレコード
格納用不揮発性メモリ15を設ける。そして,各トラン
ザクション終了時に,トランザクション終了済のレコー
ドを順ファイル17に反映する代わりに,レコード格納
用不揮発性メモリ15へ格納する。
用の一般的に知られているハードウェア構成による計算
機システムで実現される。本発明では,トランザクショ
ンで書き出されたレコードを一時的に格納するレコード
格納用不揮発性メモリ15を設ける。そして,各トラン
ザクション終了時に,トランザクション終了済のレコー
ドを順ファイル17に反映する代わりに,レコード格納
用不揮発性メモリ15へ格納する。
【0011】レコード格納用不揮発性メモリ15に格納
されたレコードは,最終的には順ファイル17に反映さ
れることになるが,その契機は,レコード格納用不揮発
性メモリ15へのレコード格納量が所定量以上になった
ときである。例えば,レコード格納用不揮発性メモリ1
5がフル状態,すなわち,これ以上レコードを格納でき
ない状態になったときに,ページバッファ16を介して
順ファイル17に反映する。ページバッファ16から順
ファイル17にページを書き出すときにだけ,排他機構
13により順ファイル17の排他を獲得すればよい。
されたレコードは,最終的には順ファイル17に反映さ
れることになるが,その契機は,レコード格納用不揮発
性メモリ15へのレコード格納量が所定量以上になった
ときである。例えば,レコード格納用不揮発性メモリ1
5がフル状態,すなわち,これ以上レコードを格納でき
ない状態になったときに,ページバッファ16を介して
順ファイル17に反映する。ページバッファ16から順
ファイル17にページを書き出すときにだけ,排他機構
13により順ファイル17の排他を獲得すればよい。
【0012】レコード格納用不揮発性メモリ15上にレ
コードが存在する状態で,システムもしくはトランザク
ションを実行しているアプリケーション・プログラムが
クラッシュしても,レコード格納用不揮発性メモリ15
上のレコードは失われることはないため,リカバリ処理
時に順ファイル17に反映することで,トランザクショ
ン終了済のレコードを保証することができる。
コードが存在する状態で,システムもしくはトランザク
ションを実行しているアプリケーション・プログラムが
クラッシュしても,レコード格納用不揮発性メモリ15
上のレコードは失われることはないため,リカバリ処理
時に順ファイル17に反映することで,トランザクショ
ン終了済のレコードを保証することができる。
【0013】なお,ファイルは複数(1つ以上)のペー
ジから構成され,各ページは複数(1つ以上)のレコー
ドから構成される。レコードは,アプリケーション・プ
ログラムが認識するデータの単位である。
ジから構成され,各ページは複数(1つ以上)のレコー
ドから構成される。レコードは,アプリケーション・プ
ログラムが認識するデータの単位である。
【0014】
【作用】レコード格納用不揮発性メモリ15に空き領域
が存在すれば,毎回のトランザクション終了時にI/O
が出るわけではなく,レコード格納用不揮発性メモリ1
5へのアクセスのみでトランザクション終了処理が完了
する。
が存在すれば,毎回のトランザクション終了時にI/O
が出るわけではなく,レコード格納用不揮発性メモリ1
5へのアクセスのみでトランザクション終了処理が完了
する。
【0015】このときの処理は,レコード格納用不揮発
性メモリ15へのアクセスのみであるため,従来方式の
ようにファイルに対する排他を獲得する必要もない。な
ぜならば,レコード格納用不揮発性メモリ15を,トラ
ンザクションに対応して獲得することにより,他のトラ
ンザクションとのアクセスの競合がないようにすること
ができるからである。
性メモリ15へのアクセスのみであるため,従来方式の
ようにファイルに対する排他を獲得する必要もない。な
ぜならば,レコード格納用不揮発性メモリ15を,トラ
ンザクションに対応して獲得することにより,他のトラ
ンザクションとのアクセスの競合がないようにすること
ができるからである。
【0016】順ファイル17に対してI/Oが出るのは
,原則的には,レコード格納用不揮発性メモリ15がフ
ル状態になったときだけであるので,複数回のトランザ
クションが連続して発生する場合,従来方式よりも処理
全体としての性能が向上する。
,原則的には,レコード格納用不揮発性メモリ15がフ
ル状態になったときだけであるので,複数回のトランザ
クションが連続して発生する場合,従来方式よりも処理
全体としての性能が向上する。
【0017】例えば,不揮発性メモリ量を4096バイ
ト長とし,1回のトランザクションで550バイト長の
レコードを1つ書き出す処理を考えると,7レコード処
理時,すなわち7回のトランザクション処理時に,レコ
ード格納用不揮発性メモリ15がフル状態となり,次の
トランザクション処理で順ファイル17への反映が行わ
れる。これにより,7回に1回の割合でしかI/Oが出
ず,毎回I/Oが出されている従来技術よりも格段に性
能が向上する。
ト長とし,1回のトランザクションで550バイト長の
レコードを1つ書き出す処理を考えると,7レコード処
理時,すなわち7回のトランザクション処理時に,レコ
ード格納用不揮発性メモリ15がフル状態となり,次の
トランザクション処理で順ファイル17への反映が行わ
れる。これにより,7回に1回の割合でしかI/Oが出
ず,毎回I/Oが出されている従来技術よりも格段に性
能が向上する。
【0018】また,例えばレコード格納用不揮発性メモ
リ15のサイズを,順ファイル17を構成しているペー
ジ(複数個のレコードを格納する単位)のサイズと合わ
せておくことにより,レコード格納用不揮発性メモリ1
5がフルになった状態で,順ファイル17内のページに
レコードを反映すれば,ファイル媒体上のページには,
フルにレコードが詰まった状態となる。これによって,
媒体上のスペース効率を向上させることも可能となる。
リ15のサイズを,順ファイル17を構成しているペー
ジ(複数個のレコードを格納する単位)のサイズと合わ
せておくことにより,レコード格納用不揮発性メモリ1
5がフルになった状態で,順ファイル17内のページに
レコードを反映すれば,ファイル媒体上のページには,
フルにレコードが詰まった状態となる。これによって,
媒体上のスペース効率を向上させることも可能となる。
【0019】
【実施例】図2はトランザクション同期アクセスでファ
イル反映がない場合の本発明の実施例,図3はトランザ
クション同期アクセスでファイル反映がある場合の本発
明の実施例を示している。
イル反映がない場合の本発明の実施例,図3はトランザ
クション同期アクセスでファイル反映がある場合の本発
明の実施例を示している。
【0020】(a) トランザクション制御部11トラ
ンザクション制御部(以下,LTCという)11は,ト
ランザクションの開始・終了を制御する機構である。こ
れは,複数ファイルに対してトランザクションを適用し
た場合に,該当するすべてのファイルの一貫性を保証す
るための調整を行う。
ンザクション制御部(以下,LTCという)11は,ト
ランザクションの開始・終了を制御する機構である。こ
れは,複数ファイルに対してトランザクションを適用し
た場合に,該当するすべてのファイルの一貫性を保証す
るための調整を行う。
【0021】LTC11の基本動作は,以下のとおりで
ある。トランザクション終了時に,LTC11はファイ
ルシステム12に対して1回目の終了要求を出す。これ
をprepare要求という。
ある。トランザクション終了時に,LTC11はファイ
ルシステム12に対して1回目の終了要求を出す。これ
をprepare要求という。
【0022】この処理の成功が,ファイルシステム12
からLTC11に通知されると,次にLTC11は2回
目の終了要求をファイルシステム12に出す。これをc
ommit要求という。この完了をもってトランザクシ
ョン終了の処理を完結する。
からLTC11に通知されると,次にLTC11は2回
目の終了要求をファイルシステム12に出す。これをc
ommit要求という。この完了をもってトランザクシ
ョン終了の処理を完結する。
【0023】複数ファイルに対するトランザクション処
理の場合,LTC11は,すべてのファイルに対してp
repare要求を発行する。すべてのprepare
処理が終了すると,次に全ファイルに対してcommi
t要求を出し,トランザクション終了処理を完結する。
理の場合,LTC11は,すべてのファイルに対してp
repare要求を発行する。すべてのprepare
処理が終了すると,次に全ファイルに対してcommi
t要求を出し,トランザクション終了処理を完結する。
【0024】prepare要求に対して1つでも失敗
が通知されたならば,LTC11は全ファイルに対しp
repare無効を発行し,これにより全prepar
eは無効になり,各ファイルは元の状態に戻される。こ
うすることによって,複数ファイルの一貫性を保証する
。なお,以下の実施例の説明では,説明を簡単にするた
めに,対象ファイルが1つの場合を例にして説明する。
が通知されたならば,LTC11は全ファイルに対しp
repare無効を発行し,これにより全prepar
eは無効になり,各ファイルは元の状態に戻される。こ
うすることによって,複数ファイルの一貫性を保証する
。なお,以下の実施例の説明では,説明を簡単にするた
めに,対象ファイルが1つの場合を例にして説明する。
【0025】(b) 排他機構13
レコードをファイルに反映するため,対象ファイルの逐
次化を行う機構である。同一ファイルに対して,複数の
トランザクションが同時にアクセスする可能性があるた
め,これらの要求を逐次化する必要がある。
次化を行う機構である。同一ファイルに対して,複数の
トランザクションが同時にアクセスする可能性があるた
め,これらの要求を逐次化する必要がある。
【0026】レコードを順ファイル17に反映するとき
には,まず排他機構13がファイルの排他を獲得し,レ
コードのEOF(End Of File) 情報を獲
得し,更新する。ファイルへの反映終了時にファイルの
排他を解放する。
には,まず排他機構13がファイルの排他を獲得し,レ
コードのEOF(End Of File) 情報を獲
得し,更新する。ファイルへの反映終了時にファイルの
排他を解放する。
【0027】(c) レコードバッファ14トランザク
ションに同期したレコード書き出し時に,レコードを格
納するバッファで,揮発性メモリで構成される。トラン
ザクション終了時までは,書き出し要求されたレコード
は,このレコードバッファ14に格納される。
ションに同期したレコード書き出し時に,レコードを格
納するバッファで,揮発性メモリで構成される。トラン
ザクション終了時までは,書き出し要求されたレコード
は,このレコードバッファ14に格納される。
【0028】このレコードバッファ14は,ファイルオ
ープン単位に用意される。直接,レコード格納用不揮発
性メモリ15にレコードの格納を行わないで,レコード
バッファ14を経由してレコード格納用不揮発性メモリ
15にレコードを格納するのは,不揮発性メモリへのア
クセス性能が,揮発性メモリで構成されるレコードバッ
ファ14へのアクセス性能より落ちるためである。レコ
ードバッファ14にレコードを蓄え,できるだけレコー
ド格納用不揮発性メモリ15へのアクセス回数を減らす
ようにしている。
ープン単位に用意される。直接,レコード格納用不揮発
性メモリ15にレコードの格納を行わないで,レコード
バッファ14を経由してレコード格納用不揮発性メモリ
15にレコードを格納するのは,不揮発性メモリへのア
クセス性能が,揮発性メモリで構成されるレコードバッ
ファ14へのアクセス性能より落ちるためである。レコ
ードバッファ14にレコードを蓄え,できるだけレコー
ド格納用不揮発性メモリ15へのアクセス回数を減らす
ようにしている。
【0029】(d) レコード格納用不揮発性メモリ1
5トランザクション終了時に,レコードバッファ14の
レコードを格納するメモリであり,不揮発性メモリで構
成されるため,システム等のクラッシュ時にも内容が保
存される。これもファイルオープン単位に用意される。
5トランザクション終了時に,レコードバッファ14の
レコードを格納するメモリであり,不揮発性メモリで構
成されるため,システム等のクラッシュ時にも内容が保
存される。これもファイルオープン単位に用意される。
【0030】レコード格納用不揮発性メモリ15に格納
されたレコードは,トランザクション終了以降,順ファ
イル17への反映が保証される。実際に,レコード格納
用不揮発性メモリ15のレコードが順ファイル17へ反
映されるのは,レコード格納用不揮発性メモリ15がフ
ル状態になったとき,またはファイルクローズ時である
。言い換えれば,トランザクションが終了しても,書き
出し要求されたレコードが,即時に順ファイル17に反
映されるとは限らない。
されたレコードは,トランザクション終了以降,順ファ
イル17への反映が保証される。実際に,レコード格納
用不揮発性メモリ15のレコードが順ファイル17へ反
映されるのは,レコード格納用不揮発性メモリ15がフ
ル状態になったとき,またはファイルクローズ時である
。言い換えれば,トランザクションが終了しても,書き
出し要求されたレコードが,即時に順ファイル17に反
映されるとは限らない。
【0031】(e) 排他機構13が管理するEOF情
報EOF情報とは,ファイルにおける最終レコードの格
納位置を示す情報である。EOF情報は,不揮発性メモ
リに保存され,排他機構13によって管理される。
報EOF情報とは,ファイルにおける最終レコードの格
納位置を示す情報である。EOF情報は,不揮発性メモ
リに保存され,排他機構13によって管理される。
【0032】ファイルシステム12は,レコード格納用
不揮発性メモリ15のレコードを順ファイル17に反映
する際に,排他機構13に不揮発性メモリ(EOF情報
)の排他獲得を依頼することで,EOF情報を獲得する
。獲得したEOF情報をもとに,ページバッファ16の
内容をファイルに書き出す。
不揮発性メモリ15のレコードを順ファイル17に反映
する際に,排他機構13に不揮発性メモリ(EOF情報
)の排他獲得を依頼することで,EOF情報を獲得する
。獲得したEOF情報をもとに,ページバッファ16の
内容をファイルに書き出す。
【0033】(f) ページバッファ16レコード格納
用不揮発性メモリ15のレコードを,順ファイル17に
反映するために使用するI/O用のバッファである。ペ
ージバッファ16は,ファイルの格納形式に合わされて
いる。
用不揮発性メモリ15のレコードを,順ファイル17に
反映するために使用するI/O用のバッファである。ペ
ージバッファ16は,ファイルの格納形式に合わされて
いる。
【0034】レコード格納用不揮発性メモリ15は,通
常のレコードアクセスで持っているページバッファのよ
うに完全なページ構造を持つものではなく,必要最小限
のページ構造を持つ程度である。したがって,レコード
格納用不揮発性メモリ15をI/O用のバッファとして
使用することができない。そこで,アプリ空間10は,
ページバッファ16を用意するようにしている。
常のレコードアクセスで持っているページバッファのよ
うに完全なページ構造を持つものではなく,必要最小限
のページ構造を持つ程度である。したがって,レコード
格納用不揮発性メモリ15をI/O用のバッファとして
使用することができない。そこで,アプリ空間10は,
ページバッファ16を用意するようにしている。
【0035】以下,図2に示す(1) 〜(5) に従
って,トランザクション同期アクセスでファイルが反映
がない場合の処理動作について説明する。 (1) ファイルをオープンすると,レコード格納用不
揮発性メモリ15が割り当てられる。ファイルをオープ
ンした時点で,レコードバッファ14,レコード格納用
不揮発性メモリ15は,共に空の状態である。
って,トランザクション同期アクセスでファイルが反映
がない場合の処理動作について説明する。 (1) ファイルをオープンすると,レコード格納用不
揮発性メモリ15が割り当てられる。ファイルをオープ
ンした時点で,レコードバッファ14,レコード格納用
不揮発性メモリ15は,共に空の状態である。
【0036】(2) トランザクションが開始され,レ
コードの書き出し処理で,書き出し要求のあったレコー
ドをレコードバッファ14に格納し,レコードの書き出
し処理を完了する。
コードの書き出し処理で,書き出し要求のあったレコー
ドをレコードバッファ14に格納し,レコードの書き出
し処理を完了する。
【0037】(3) トランザクション終了宣言により
,LTC11からファイルシステム12に対しprep
are要求が発行される。 (4) ファイルシステム12は,prepare要求
を受け付けると,レコードバッファ14のレコードをレ
コード格納用不揮発性メモリ15に移動し,prepa
re処理を完了する。この状態では,prepareを
有効にすることも無効にすることもできる。
,LTC11からファイルシステム12に対しprep
are要求が発行される。 (4) ファイルシステム12は,prepare要求
を受け付けると,レコードバッファ14のレコードをレ
コード格納用不揮発性メモリ15に移動し,prepa
re処理を完了する。この状態では,prepareを
有効にすることも無効にすることもできる。
【0038】(5) LTC11からのcommit要
求により,レコード格納用不揮発性メモリ15に移動し
たレコードを有効にする。 次に,図3に示す(1) 〜(10)に従って,トラン
ザクション同期アクセスでファイルが反映がある場合の
処理動作について説明する。
求により,レコード格納用不揮発性メモリ15に移動し
たレコードを有効にする。 次に,図3に示す(1) 〜(10)に従って,トラン
ザクション同期アクセスでファイルが反映がある場合の
処理動作について説明する。
【0039】(1) 〜(3) は,上述した図2に示
す(1) 〜(3) と同じである。 (4) ファイルシステム12は,LTC11からのp
repare要求を受け付けると,レコードバッファ1
4のレコードをレコード格納用不揮発性メモリ15に格
納しようとするが,既にフル状態である。このため,レ
コード格納用不揮発性メモリ15内のレコードを順ファ
イル17に反映する必要があると判断する。なお,レコ
ード格納用不揮発性メモリ15のレコードは,既にco
mmitが完了しているレコードである。
す(1) 〜(3) と同じである。 (4) ファイルシステム12は,LTC11からのp
repare要求を受け付けると,レコードバッファ1
4のレコードをレコード格納用不揮発性メモリ15に格
納しようとするが,既にフル状態である。このため,レ
コード格納用不揮発性メモリ15内のレコードを順ファ
イル17に反映する必要があると判断する。なお,レコ
ード格納用不揮発性メモリ15のレコードは,既にco
mmitが完了しているレコードである。
【0040】(5) ファイルシステム12は,順ファ
イル17にレコードを反映するため,排他機構13にフ
ァイルの排他獲得を依頼し,ファイルの書き出し位置を
知るためのEOF情報の獲得を依頼する。
イル17にレコードを反映するため,排他機構13にフ
ァイルの排他獲得を依頼し,ファイルの書き出し位置を
知るためのEOF情報の獲得を依頼する。
【0041】(6) ファイルシステム12は,I/O
用のページバッファ16にレコード格納用不揮発性メモ
リ15のレコードを移動し,ページ構造(ファイルに反
映できる構造)を構築する。
用のページバッファ16にレコード格納用不揮発性メモ
リ15のレコードを移動し,ページ構造(ファイルに反
映できる構造)を構築する。
【0042】(7) 上述した(5) で獲得したEO
F情報をもとに,ページ単位でページバッファ16のレ
コードを順ファイル17に反映する。 (8) 順ファイル17へのレコード格納後,EOF情
報を更新し,獲得済みの排他を解放する。
F情報をもとに,ページ単位でページバッファ16のレ
コードを順ファイル17に反映する。 (8) 順ファイル17へのレコード格納後,EOF情
報を更新し,獲得済みの排他を解放する。
【0043】(9) レコード格納用不揮発性メモリ1
5内のレコードが順ファイル17に反映されたため,レ
コード格納用不揮発性メモリ15内のレコードをクリア
し,その後,レコードバッファ14内のレコードをレコ
ード格納用不揮発性メモリ15に格納して,prepa
re処理を完了する。
5内のレコードが順ファイル17に反映されたため,レ
コード格納用不揮発性メモリ15内のレコードをクリア
し,その後,レコードバッファ14内のレコードをレコ
ード格納用不揮発性メモリ15に格納して,prepa
re処理を完了する。
【0044】(10)LTC11からのcommit要
求により,レコード格納用不揮発性メモリ15に移動し
たレコードを有効にする。 図4は,本発明の実施例によるレコードバッファ14内
のレコードをレコード格納用不揮発性メモリ15に移動
するときのフローチャートである。以下の(a)〜(h
) の処理手順となる。
求により,レコード格納用不揮発性メモリ15に移動し
たレコードを有効にする。 図4は,本発明の実施例によるレコードバッファ14内
のレコードをレコード格納用不揮発性メモリ15に移動
するときのフローチャートである。以下の(a)〜(h
) の処理手順となる。
【0045】(a) レコードバッファ14内レコード
をレコード格納用不揮発性メモリ15に移動する処理を
開始する。 (b) このとき,レコード格納用不揮発性メモリ15
がフル状態であれば,(d)へ進み,フル状態でなけれ
ば,(c) へ進む。
をレコード格納用不揮発性メモリ15に移動する処理を
開始する。 (b) このとき,レコード格納用不揮発性メモリ15
がフル状態であれば,(d)へ進み,フル状態でなけれ
ば,(c) へ進む。
【0046】(c) レコードバッファ14のレコード
をレコード格納用不揮発性メモリ15に移動し,処理を
終了する。 (d) レコード格納用不揮発性メモリ15がフル状態
であれば,排他機構13により,ファイルの排他を獲得
し,EOF情報を獲得する。
をレコード格納用不揮発性メモリ15に移動し,処理を
終了する。 (d) レコード格納用不揮発性メモリ15がフル状態
であれば,排他機構13により,ファイルの排他を獲得
し,EOF情報を獲得する。
【0047】(e) レコード格納用不揮発性メモリ1
5のレコードを,I/O用のページバッファ16に移動
する。 (f) ページバッファ16のページを順ファイル17
に反映する。
5のレコードを,I/O用のページバッファ16に移動
する。 (f) ページバッファ16のページを順ファイル17
に反映する。
【0048】(g) 排他機構13が管理するEOF情
報を更新し,ファイルの排他を解放する。 (h) レコード格納用不揮発性メモリ15をクリアし
,その後,レコードバッファ14のレコードをレコード
格納用不揮発性メモリ15に移動する。
報を更新し,ファイルの排他を解放する。 (h) レコード格納用不揮発性メモリ15をクリアし
,その後,レコードバッファ14のレコードをレコード
格納用不揮発性メモリ15に移動する。
【0049】
【発明の効果】以上説明したように,本発明によれば,
複数回のトランザクション終了済レコードを不揮発性メ
モリに一時格納しておき,一括して目的とする順ファイ
ルに反映することにより,I/O回数を減らして,性能
を向上させることが可能となる。また,ページ単位でま
とめてファイルへの反映を行うことができるため,ファ
イル内の無駄なスペースを大幅に削減できる。
複数回のトランザクション終了済レコードを不揮発性メ
モリに一時格納しておき,一括して目的とする順ファイ
ルに反映することにより,I/O回数を減らして,性能
を向上させることが可能となる。また,ページ単位でま
とめてファイルへの反映を行うことができるため,ファ
イル内の無駄なスペースを大幅に削減できる。
【図1】本発明の原理説明図である。
【図2】トランザクション同期アクセスでファイル反映
がない場合の本発明の実施例を示す図である。
がない場合の本発明の実施例を示す図である。
【図3】トランザクション同期アクセスでファイル反映
がある場合の本発明の実施例を示す図である。
がある場合の本発明の実施例を示す図である。
【図4】本発明の実施例によるレコードバッファ内のレ
コードをレコード格納用不揮発性メモリに移動するとき
のフローチャートである。
コードをレコード格納用不揮発性メモリに移動するとき
のフローチャートである。
【図5】従来技術の例を示す図である。
【図6】従来技術の問題点説明図である。
10 アプリ空間
11 トランザクション制御部
12 ファイルシステム
13 排他機構
14 レコードバッファ
15 レコード格納用不揮発性メモリ16
ページバッファ 17 順ファイル
ページバッファ 17 順ファイル
Claims (1)
- 【請求項1】 トランザクションによって書き出され
たレコードを順ファイル(17)に格納する順ファイル
へのトランザクション同期アクセス方法であって,トラ
ンザクションで書き出されたレコードを格納するレコー
ド格納用不揮発性メモリ(15)を設け,複数回のトラ
ンザクション終了済レコードを前記レコード格納用不揮
発性メモリ(15)に一時的に格納しておき,レコード
格納用不揮発性メモリ(15)へのレコードの格納が所
定量またはフル状態になったときに,レコード格納用不
揮発性メモリ(15)内のレコードを一括して順ファイ
ル(17)に反映することを特徴とする順ファイルへの
トランザクション同期アクセス方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP14775091A JP3276642B2 (ja) | 1991-06-20 | 1991-06-20 | 順ファイルへのトランザクション同期アクセス方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP14775091A JP3276642B2 (ja) | 1991-06-20 | 1991-06-20 | 順ファイルへのトランザクション同期アクセス方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH04370847A true JPH04370847A (ja) | 1992-12-24 |
| JP3276642B2 JP3276642B2 (ja) | 2002-04-22 |
Family
ID=15437303
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP14775091A Expired - Fee Related JP3276642B2 (ja) | 1991-06-20 | 1991-06-20 | 順ファイルへのトランザクション同期アクセス方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3276642B2 (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH07200390A (ja) * | 1993-12-28 | 1995-08-04 | Toshiba Corp | データアクセス方法 |
| WO2011033635A1 (ja) * | 2009-09-17 | 2011-03-24 | 株式会社東芝 | 管理装置 |
-
1991
- 1991-06-20 JP JP14775091A patent/JP3276642B2/ja not_active Expired - Fee Related
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH07200390A (ja) * | 1993-12-28 | 1995-08-04 | Toshiba Corp | データアクセス方法 |
| WO2011033635A1 (ja) * | 2009-09-17 | 2011-03-24 | 株式会社東芝 | 管理装置 |
| US8621163B2 (en) | 2009-09-17 | 2013-12-31 | Kabushiki Kaisha Toshiba | Management apparatus for improved database registration and update |
| JP5380542B2 (ja) * | 2009-09-17 | 2014-01-08 | 株式会社東芝 | 管理装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP3276642B2 (ja) | 2002-04-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7325110B2 (en) | Method for acquiring snapshot | |
| US5276840A (en) | Disk caching method for writing data from computer memory including a step of writing a plurality of physically adjacent blocks in a single I/O operation | |
| JP2635023B2 (ja) | フアイルデータ用ラベル書き込み方法 | |
| US5745906A (en) | Method and apparatus for merging delta streams to reconstruct a computer file | |
| US6792518B2 (en) | Data storage system having mata bit maps for indicating whether data blocks are invalid in snapshot copies | |
| US4601012A (en) | Zone partitioning in volume recovery system | |
| US20040030951A1 (en) | Instantaneous restoration of a production copy from a snapshot copy in a data storage system | |
| US20020166022A1 (en) | Access control method, access control apparatus, and computer-readable memory storing access control program | |
| JP2001516099A (ja) | スナップショットコピー動作のためのデータファイル格納管理システム | |
| JP2000298554A (ja) | Raidデータ記憶システムにおける瞬時バックアップを提供する方法及びシステム | |
| JPH04245352A (ja) | 制御装置の制御方法 | |
| US6415296B1 (en) | Method and system for more efficiently providing a copy in a raid data storage system | |
| KR20060044631A (ko) | 지속성 메모리 액세스 시스템, 지속성 메모리의 직접액세스 방법 및 지속성 메모리 시스템을 액세스하는 시스템 | |
| WO1996013783A1 (en) | Method and apparatus for distributing log i/o activity | |
| JP2001134482A (ja) | データ処理システムにおいて独立したデータコピーを行う方法 | |
| CN115640238B (zh) | 针对持久化内存的可靠内存映射i/o实现方法及系统 | |
| KR20160002109A (ko) | 순서 모드 저널링 파일 시스템을 위한 블록 그룹 단위 저널링 방법 및 장치 | |
| US5953728A (en) | System for modifying a database using a transaction log | |
| JP4892812B2 (ja) | キャッシュ制御およびデータ処理システム並びにその処理プログラム | |
| JPH0737290A (ja) | 光磁気ディスクのデータ整合性を維持する方法および装置 | |
| JPH0115903B2 (ja) | ||
| JP2539347B2 (ja) | フアイル管理方法 | |
| US20210034580A1 (en) | Method, apparatus and computer program product for maintaining metadata | |
| JP3276642B2 (ja) | 順ファイルへのトランザクション同期アクセス方法 | |
| JPS63133240A (ja) | 常駐テ−ブルの内容保証方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20020129 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080208 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090208 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090208 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100208 Year of fee payment: 8 |
|
| LAPS | Cancellation because of no payment of annual fees |