JP2004030221A - 変更対象テーブル自動検出方法 - Google Patents

変更対象テーブル自動検出方法 Download PDF

Info

Publication number
JP2004030221A
JP2004030221A JP2002185449A JP2002185449A JP2004030221A JP 2004030221 A JP2004030221 A JP 2004030221A JP 2002185449 A JP2002185449 A JP 2002185449A JP 2002185449 A JP2002185449 A JP 2002185449A JP 2004030221 A JP2004030221 A JP 2004030221A
Authority
JP
Japan
Prior art keywords
change
tables
column
schema
changed
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.)
Pending
Application number
JP2002185449A
Other languages
English (en)
Inventor
Hitoshi Ashida
芦田 仁史
▲吉▼村 光彦
Mitsuhiko Yoshimura
Norifumi Nishikawa
西川 記史
Masashi Tsuchida
土田 正士
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2002185449A priority Critical patent/JP2004030221A/ja
Priority to US10/345,260 priority patent/US7113951B2/en
Publication of JP2004030221A publication Critical patent/JP2004030221A/ja
Priority to US11/518,954 priority patent/US20070005619A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/283Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99932Access augmentation or optimizing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99934Query formulation, input preparation, or translation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99938Concurrency, e.g. lock management in shared database
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface

Abstract

【課題】データモデルなどの雛型が定まったBIシステムに対して、MDスキーマに次元の追加などの変更を加える場合に、システム全体の整合性を保つために、カラムの追加などの変更を加えるべきテーブルを特定する。
【解決手段】MDスキーマ定義変更処理により、MDスキーマに対する次元の追加などの変更情報から、カラムの追加などの変更を加えるべきロードテーブルを特定する。そして変更候補テーブル抽出処理により、ロードテーブルの変更に伴い、カラムの追加などの変更を加えるべき全てのテーブルとカラムの組合せを出力する。そして変更対象テーブル決定処理により、変更すべきテーブルの組合せを一組出力する。
【選択図】 図1

Description

【0001】
【発明の属する技術分野】
本発明は、分析システムのカスタマイズ支援技術に関する。特に多次元データベースの分析スキーマの次元を追加、削除、変更した場合に、リレーショナル・データベースの中で、カラムの追加、削除、変更が必要なテーブルをリストアップする方法に関する。
【0002】
【従来の技術】
近年、コンピュータ機器と、磁気カード、ICカードが一般社会に普及し、百貨店、専門店、家電量販店、スーパーマーケットなど、幅広い業種において、ハウスカードにより、氏名、住所などの顧客の属性データや、購買履歴を蓄積、管理する情報系システム(データウェアハウス)の構築が可能になった。そして最近では、構築されたデータウェアハウスを、企業の戦略立案に利用するビジネスインテリジェンス・ソリューションが注目されている。
【0003】
ビジネスインテリジェンスとは、収集、格納、分析したデータに、企業人が利用できるようにすることにより、よりよい意思決定を支援するアプリケーションと技術の総称である。そして、ビジネスインテリジェンス・アプリケーションには、意思決定システム、問い合わせ、レポーティング、OLAP(On Line Analytical Processing)、統計解析、予測、データマイニングが含まれる。
【0004】
ビジネスインテリジェンス・アプリケーションは、リレーショナル・データベース(RDB:Relational Database)と、多次元データベース(OLAP)を併用した構成がよく知られているが、OLAPでは、多次元データベース(MDB:Multidimensional Database)の構造をMDスキーマ(Multidimensional schema)によって記述している。
【0005】
また、これら情報系システムの構築期間の短期化傾向が強まっている。構築期間を短縮するために、以下のような製品及び技術が知られている。
【0006】
1つは、業種・業務別のパッケージの提供である。例えば、IBM社のStartNow for Relationship Marketingは、CRM(Customer Relationship Management)に特化したハードウェア、ソフトウェア、分析モデル、業種別導入支援サービスを一体として提供している。(StartNow for Relationship MarketingはIBM社の登録商標である。)(従来技術1)
他方は、データウェアハウス構築支援ツールの提供である。Infocom社が提供しているRedBrick Warehouseは、データウェアハウス構築専門のデータベースである。データウェアハウスの設計、構築を支援するRed Brick Warehouse Administratorと呼ばれるツールを提供している。Red Brick Warehouse Administratorは、データウェアハウスを構成するRDBテーブル間の関係を定義するGUIや、必要なディスク容量の概算を算出するGUIを提供している。(RedBrick Warehouse及びRed Brick Warehouse AdministratorはInfocom社の登録商標である。)
また、Oracle社は、データウェアハウスの設計、実装、管理をするOracle Warehouse Builder(OWB)を提供している。Oracle Warehouse Builder(OWB)はOracle社の登録商標である。OWBを利用すると、GUIにより、RDBテーブル、MDスキーマ、ETLジョブの設計が可能である。(従来技術2)
【0007】
【発明が解決しようとする課題】
上記従来技術1は、パッケージの適用により、導入期間を短縮するものである。顧客がパッケージの分析モデルをそのまま適用するならば、3ヶ月以内の構築も可能であろう。ただし、データウェアハウス及びBI(Business Intelligence)システムは、戦略策定、意思決定を支援するシステムであり、自社の特徴を活かした他社システムとの差別化、すなわちカスタマイズが必須である。このような事情により、自社の特徴を活かしたBIシステムを構築するには、パッケージの適用のみでは、構築期間を短縮することはできない。
【0008】
上記従来技術2は、構築支援ツールによりデータウェアハウスの設計、実装を支援するものであり、パッケージのような既存のモデルのカスタマイズを支援し、構築期間を短縮するものではない。即ち、既存のモデルの中のあるテーブルの項目名を変更するような場合に、他のテーブルの中にも変更すべき項目が存在するかどうか、または変更すべきテーブル及び項目を抽出することはできない。
【0009】
上記従来技術の問題点を鑑み、本発明の目的は、リレーショナル・データベースと多次元データベースを併用したデータウェアハウス、およびBIシステムにいて、多次元データベースにより実装された分析システム(MDスキーマ)に新たな次元を加えた場合に、リレーショナル・データベースの中で、カラムを追加すべきテーブルをリストアップすることである。
【0010】
【課題を解決するための手段】
本発明の目的を達成するため、本発明の変更対象テーブル自動検出方法では、MDスキーマ定義変更処理により、MDスキーマの中で変更すべきファイルとその変更方法をリストアップし、リレーショナル・データベースの中で、カラムを追加すべきロード元テーブルを特定する。ここで、ロード元テーブルとは、RDBテーブルの中で、直接MDBに読み込むテーブルである。そして、変更候補テーブル抽出処理により、テーブル間の処理を記述したテーブル関連情報に基づいて、変更対象となるロードテーブルから、その生成元となるテーブルを順に辿ることにより、全ての変更候補となるテーブルの組合せをリストアップする。
【0011】
そして、変更対象テーブル決定処理により、全ての変更候補であるテーブルの組合せの中から、変更すべきレコードの数の総和が最小となるテーブルの組合せを出力する。
【0012】
【発明の実施の形態】
図面を用いて本発明の実施の形態について説明する。
【0013】
この実施形態が対象とする分析システム及び、本発明の変更対象テーブル検出処理を構成する処理と、これらの間のデータの流れを図1に示す。
【0014】
本実施形態では、リレーショナル・データベースと多次元データベースを併用した分析システムに対して、特定のMDスキーマに新たな次元を追加した場合に、MDスキーマ及びRDBスキーマの定義ファイルの変更箇所と変更処理をリストアップする。
【0015】
本実施形態は、以下の処理から構成される。
1)MDスキーマ定義変更処理102:MDスキーマに追加する次元を特定する次元追加情報101を入力して、MDスキーマの定義ファイルを変更し、次元を追加すべきMDスキーマにロードするRDBテーブルの定義ファイルに対するカラム追加情報103を出力する。
【0016】
2)変更候補テーブル抽出処理105:カラム追加情報103と、明細テーブルやマスタテーブルなどからMDスキーマにロードするテーブルを生成するまでの、テーブル間の処理を記述したテーブル関連情報104を入力し、テーブル関連情報104を、変更対象となるロードテーブルから、その生成元となるテーブルを順に辿ることにより、全ての変更候補となるテーブルの組合せをリストアップし、変更候補テーブル情報106として出力する。
【0017】
3)変更対象テーブル決定処理107:変更候補テーブル情報106と、テーブル別レコード数情報108を入力して、全ての変更候補となるテーブルの組合せについて、レコードの総数を計算し、レコードの総数が最小の組合せをテーブル定義変更情報109として出力する。
【0018】
図1に示す分析システムは、図2に示すような定義ファイルにより定義されている。リレーショナル・データベース(RDB)により実装されている部分と、多次元データベース(MDB)により実装されている部分では、その定義方法も異なる。MDスキーマに新たな次元を追加する場合には、図2に示すテーブル定義ファイル201、スキーマ構成次元定義ファイル202、次元定義ファイル203、階層定義ファイル204、マッピング情報ファイル205を修正、または追加することになる。本発明は、上記のファイルの中で、具体的に修正すべきファイルとその変更処理を特定することを目的とする。
【0019】
MDBのスキーマ定義は、スキーマ構成次元定義ファイル202、次元定義ファイル203、階層定義ファイル204、マッピング情報ファイル205から構成される。
【0020】
スキーマ構成次元定義ファイル202には、各MDスキーマを構成する次元が定義される。MDスキーマごとに1ファイルとなる。1行目にMDスキーマ名称、2行目以降にMDスキーマを構成する次元名称と次元属性が記述される。次元属性によって、各次元がキー次元、分析次元のいずれであるかを示す。例えば、図2において、MDスキーマ属性分析は、年月次元、年齢次元、性別次元、趣味次元などから構成される。
【0021】
次元定義ファイル203には、各次元に対応する階層名称が定義される。次元ごとに1ファイルを構成し、各ファイルの1行目に次元名称、2行目に階層名称が記述される。
【0022】
具体的な階層の構成要素は、階層定義ファイル204に定義される。各階層を構成する要素をメンバと呼ぶ。各次元の値は、ここに定義されたメンバのいずれかの値を取る。各階層には、1行目に階層名称、2行目以降に、各階層を構成するメンバが記述され、最下位のメンバを含む全てのメンバが記述される。最下位メンバは、その全ての親メンバと共に記述する。例えば、図2に示す年月階層は、2階層であり、「2000年度」は、「2000/4」及び「2000/5」の親メンバである。
【0023】
すなわち、スキーマ構成次元定義ファイル202には、各スキーマを構成する次元が記述されている。階層定義ファイル204には、階層を構成するメンバが定義されている。次元定義ファイル203には、スキーマを構成する各次元と階層の対応が定義されている。よって、スキーマ構成次元定義ファイル202、次元定義ファイル203、階層定義ファイル204により、MDスキーマを定義できる。
【0024】
マッピング情報ファイル205には、MDスキーマにロードするテーブルと、そのテーブルのカラムと、MDスキーマの次元の対応付けを定義する。MDスキーマごとに1ファイルを構成する。図2に示す例では、1行目にMDスキーマ名称、3行目にロード元のテーブル名称、5行目以降にロードテーブルのカラムと、MDスキーマの次元の対応が記述されている。
【0025】
RDBのスキーマ定義は、テーブル定義ファイルに記述される。1テーブルが1ファイルに記述される。図2に示すとおり、1行目がテーブル名称、2行目以降が、各テーブルを構成するカラムの情報である。各行がカラムに該当し、カラム名称と、データ型が一組を構成する。
マッピング情報ファイル205に記述されるロードテーブルの定義は、必ずテーブル定義ファイルのいずれかに含まれる。
【0026】
図1に示す分析システムにおいて、多次元データベースにより実装された属性分析スキーマに「趣味」をキー次元として追加する場合を例として、本発明の変更対象テーブル検出処理を説明する。
【0027】
本発明の変更対象テーブル検出処理によれば、MDスキーマに軸を追加した場合に、整合性を保つために、リレーショナル・データベースにより実装されたテーブルの中で、カラムを追加すべきテーブルをリストアップする。また、追加すべきテーブルの組合せが2通り以上ある場合には、全ての組合せの中で、変更するテーブルのレコード数の総和が最小、すなわち、必要なディスク容量が最小になる組合せをリストアップする。
【0028】
以下、変更対象テーブル検出処理を構成する各処理について説明する。
【0029】
まず、MDスキーマ定義変更処理102について説明する。
【0030】
MDスキーマ定義変更処理102は、次元追加情報101で指定された次元を、スキーマの定義情報であるスキーマ構成次元定義ファイル202に追加し、指定された次元に関する次元定義ファイル203と階層定義ファイル204を生成する。また、次元を追加するスキーマのマッピング情報ファイル205に追加する次元とロードテーブルのカラムの対応情報を追加する。さらに当該のMDスキーマのロードテーブルに追加するカラムの情報を、カラム追加情報103として出力する。ここで、ロードテーブルとは、図1に示すとおり、MDBに読み込ませるテーブルである。
【0031】
次元追加情報101には、どのMDスキーマに、どのような名称のMDスキーマを追加するのかが記述されている。次元追加情報101は、図1に示すように、No.、MDスキーマ名、次元名、変更処理により構成される。例えば、図1に示す変更処理である、Add_dimension(趣味,char(20))は、MDスキーマに趣味次元を追加し、趣味の各メンバはchar型で、最大20文字であることを示す。
【0032】
カラム追加情報103は、No.、テーブル名、カラム名、変更処理から構成される。次元追加情報101と同様に、1行目がカラム名、2行目以降がデータである。図1に表示しているカラム追加情報103は、データ型がchar型であり、最大20文字の処理カラムを属性ロードテーブルに追加することを意味する。
【0033】
図3に、MDスキーマ定義変更処理102のフローチャートを示す。
【0034】
ステップ301では、スキーマ構成次元ファイル202の中から、1行目のMDスキーマ名称が次元追加情報101に指定されたMDスキーマ名と一致するファイルを検索する。
【0035】
ステップ302では、検索されたスキーマ構成次元ファイル202に、次元追加情報101に指定された次元を追加する。ここで、次元の名称は、次元追加情報101に指定された次元名に「次元」を加えたものである。例えば、属性分析に趣味次元を追加した場合、図2に示すように、属性分析のスキーマ構成次元定義ファイルに「趣味次元,キー」が追加される。ここで、趣味次元がキー次元であることは、次元追加情報101の変更処理において、趣味のデータ型がchar型であることから判断される。
【0036】
ステップ303では、次元情報101に指定された次元に関する次元定義ファイル202を生成する。ここで、次元名称は、スキーマ構成次元定義ファイル202に追加した次元名称と同一であり、階層名称は、次元の名称から「次元」を取り除き、「階層」を加えたものである。
【0037】
ステップ304では、新たに生成した次元定義ファイル202に指定した階層の階層定義ファイル204を生成する。新たに追加する趣味次元に関して、図2に示すようなフォーマットを有する階層定義ファイル204が用意されるものとする。
【0038】
ステップ305では、マッピング情報ファイル205の中から、1行目のMDスキーマ名称が、次元追加情報101に指定されたMDスキーマ名称と一致するファイルを検索する。
【0039】
ステップ306では、検索したマッピング情報ファイルに、次元追加情報101に指定された次元を追加する。ここで、マッピング情報ファイル205には、ロードテーブルのカラム名と次元名称を組にして格納するが、ロードテーブルのカラム名は、次元追加情報101に記述された次元名である。
【0040】
ステップ307では、処理306にて検索したマッピング情報ファイルからカラム追加情報103を生成する。カラム追加情報103は、No.、テーブル名、カラム名、変更処理から構成される。No.はレコードを特定する番号であり、1、2、3、..と昇順に整数値を代入する。テーブル名は、カラムを追加するテーブル名であり、ステップ306にて検索したマッピング情報ファイル205の中のロードテーブル名を代入する。また、ステップ306にて追加したカラム名を、カラム追加情報103のカラム名に代入する。変更処理にはAdd_columnを設定し、括弧内の引数は、次元追加情報101の変更処理の引数を代入する。
【0041】
変更候補テーブル抽出処理105について説明する。変更候補テーブル抽出処理105は、MDスキーマ定義変更処理102から出力されるカラム追加情報103を元に、テーブル関連情報104を用いて、カラムを追加すべきテーブルの組合せを全てリストアップし、変更候補テーブル情報106として出力する。
【0042】
図1に示す通り、テーブル関連情報104は、まず「From」カラム、「To」カラム、「処理」カラムから構成される。「From」カラムは、さらにテーブル名、カラム名の二つのカラムから構成される。「To」カラムも同様に、スキーマ名、カラム名の二つのカラムから構成される。つまり、1行目、2行目がカラム名であり、3行目以降にデータが格納される。「From」カラムのスキーマ名、カラム名のデータに対し、同一レコードに示す処理を施すことにより、「To」カラムのスキーマ名、カラム名のデータが作成される。例えば、テーブル関連情報104の3行目のレコードは、購入実績サマリのカラム「顧客ID」は、買上明細のカラム「顧客ID」にgroup処理を施すことにより生成されることが定義されている。ここでgroup処理とは、「顧客ID」が同一のレコードを1つに集約することを意味する。
【0043】
変更候補テーブル情報106は、一行目がカラム名、二行目以降がデータである。変更候補テーブル情報106のカラムは、カラム追加情報103のカラムに、関連No.カラムと終了フラグカラムを追加したものであり、カラム追加情報103と同様に、各レコードが、一つの表に対する一つのカラムの追加を表す。ここで関連No.とは、変更候補テーブル情報106の中で、当該の変更をおこなう要因となった変更処理のNo.を示す。終了フラグカラムは、他のテーブルの変更の要因になるか否かを示し、他のテーブルの変更の要因になる場合には0、ならない場合には1に設定する。
【0044】
次に、変更候補テーブル抽出処理105の処理フローについて説明する。図4にフローチャートを示す。
【0045】
ステップ401では、カラム追加情報103のレコードを、変更候補テーブル情報106の該当するカラムにコピーする。関連No.及び終了フラグは0に設定する。
【0046】
ステップ402では、変更候補テーブルの中のレコードを特定する変数pを0に初期化する。
【0047】
ステップ403では、変更候補テーブルのレコードの中で、ステップ404以降の処理をおこなっていないレコードが存在するか否か確認する。全てのレコードについて、ステップ404以降の処理を実行している場合には終了し、そうでない場合には、ステップ404に進む。
【0048】
ステップ404では、変数pに1を加え、p番目のレコードを関連調査レコードとして選択する。例えば、No.=1、テーブル名=属性ロードテーブル、カラム名=趣味、変更処理=Add_column(趣味,char(20))、関連No.=0、終了フラグ=0のレコードを、関連調査レコードとして選択したとする。
【0049】
ステップ405では、テーブル関連情報104の中から、Toフィールドのテーブル名が関連調査レコードと一致するレコードを検索し、一致したレコードが検索できた場合には、ステップ406に進む。一致するレコードが検索できなかった場合には、ステップ407に進む。ここでは、テーブル関連情報104の2番目のレコードが検索されるので、ステップ406に進む。
【0050】
ステップ406では、関連テーブルレコードを生成する。ここで、関連テーブルレコードとは、検索したレコードのFromフィールドのテーブルに関連調査レコードのカラム名を追加することを指し示す。これは、変更候補テーブルに対する入力候補レコードである。レコードは、テーブル名、カラム名、変更処理から構成される。ここでは、(顧客属性,趣味,Add_column(趣味,char(20)))が、関連テーブルレコードとなる。
【0051】
ステップ408では、関連テーブルレコードと同一レコードが変更候補テーブル情報106に存在するか否かを確認する。存在しない場合には、ステップ409に進み、存在する場合には、ステップ405に戻る。
【0052】
ステップ409では、関連テーブルレコードを、変更候補テーブル情報106に追加する。ここで、関連No.は、当該の変更をおこなう要因となった変更処理のNo.であるから、関連No.には関連調査レコードのNo.を設定する。終了フラグには0を設定する。また、No.は、1、2、3、…と順に整数値を設定する。ここでは、追加されるレコードは、(2,顧客属性,趣味,Add_column(趣味,char(20),1,0))となる。
【0053】
ステップ410では、選択している関連調査レコードをキーとして、テーブル関連情報の全てのレコードを検索したか否かを確認する。全て検索している場合には、ステップ403に戻る。全て検索していない場合は、ステップ405に戻る。ここでは、選択している関連調査レコードをキーとして、テーブル関連情報の全てのレコードを検索したものとする。この場合、ステップ403に戻る。ステップ409で追加したNo.=2のレコードが存在するため、ステップ404に進みステップ404にてこのレコードが選択される。ステップ405において、テーブル関連情報104の中に、Toカラムのテーブル名が顧客属性であるレコードが存在しないため、ステップ407に進む。
【0054】
ステップ407は、関連調査レコードの終了フラグカラムの値を1に設定する。ここでは、関連調査レコードが、(2,顧客属性,趣味,Add_column(趣味,char(20),1,1))に更新される。
【0055】
引き続き、変更対象テーブル決定処理107について説明する。変更対象テーブル決定処理107は、変更候補テーブル情報106の中から、必要最小限の変更を特定する情報のみを抽出し、テーブル定義変更情報109として出力する。変更候補テーブル情報106には、定義を変更するテーブルの組合せが2通り以上含まれる場合もある。テーブル定義変更情報109には、必要最小限の変更で対応できるテーブルの組合せのみが格納される。
【0056】
テーブルの組合せを選択する基準としては、変更するテーブルのレコード数の総和を利用する。変更するテーブルのレコード数の総和が最小になる組合せを選択する。変更するテーブルのレコード数の総和が最小になることは、新たに必要になるディスク容量が最小になることを意味する。
【0057】
図5に変更対象テーブル決定処理107のフローチャートを示す。
【0058】
ステップ501では、変更レコード総数Nを0に初期化し、最小変更レコード数NminをNmaxに初期化する。ここで変更レコード総数とは、カラム追加情報103の各レコードと関連する一連のテーブルのレコード数の総和である。Nminは、変更レコード総数の最小値である。Nmaxは、テーブル別レコード数108の全テーブルのレコード数の総和に1を加えた値である。例えば、Nmin=Nmax=30,000,000に設定したと仮定する。
【0059】
ステップ502では、変更候補テーブルの中で、終了フラグの値が1であるレコードを検索し、見つかった場合には、ステップ503に進む。見つからなかった場合には、ステップ507に進む。ここでは、No.=2のレコードを検索し、ステップ503に進む。
【0060】
ステップ503では、ステップ502又はステップ504にて検索したテーブルのレコード数を、テーブル別レコード数108を参照し、算出する。算出した結果をnに格納する。また、変更レコード総数Nにnを加える。ここでは、n、N共に1,200,000となる。
【0061】
ステップ504では、ステップ503において、変更レコード数nを算出したレコードの関連No.と一致するレコードを、変更候補テーブル106の中から検索する。レコードが検索された場合には、ステップ503に戻る。関連No.が0である場合には、ステップ505に進む。ここでは、No.=1のレコードが検索されるため、ステップ503に戻る。ステップ503では、n=100,000となり、
N=1,200,000+100,000=1,300,000
となる。再びステップ504に進むと、関連No.が0であるため、ステップ505に進む。
【0062】
ステップ505では、変更レコード総数NがNminよりも小さいか否か検証する。つまり、現在調査しているテーブルの組合せが、それまでに調べたテーブルの組合せのいずれよりも、レコード総数が少ないか否かを検証する。変更レコード総数NがNminよりも小さい場合には、ステップ506に進む。そうでない場合には、ステップ502に戻り、新たなテーブルの組合せについて調べる。N=1,300,000、Nmin=3,000,000であるため、Nmin=1,300,000となる。
【0063】
Nminの初期値はNmaxであるため、最初にステップ505を実行する場合には、必ずステップ506に進み、Nminの値はNに更新される。
【0064】
ステップ507では、変更候補テーブル情報106の中から、変更レコード総数Nが最小となったテーブルの組合せ以外のレコードを削除し、テーブル定義変更情報109として出力する。
【0065】
以上の実施例は以下のように変更して実施することも可能である。
【0066】
第1に、MDスキーマのある次元を削除する場合に、整合性を保つために、リレーショナル・データベースにより実装されたデータモデルの中で、カラムを削除すべきテーブルをリストアップする。
【0067】
削除する次元の情報は、次元追加情報101と同様のフォーマットで記述される。例えば、趣味次元を削除する場合には、変更処理にはDrop_dimension(趣味)と記述される。データベースにより実装されたデータモデルの中で、カラムを削除すべきテーブルを特定するプロセスは、先の実施例で示した変更対象テーブル検出処理とほぼ同様である。ただし、変更候補テーブル抽出処理105を次のように変更する。
【0068】
ステップ405において、テーブル関連情報の中から、Toフィールドのテーブル名とカラム名が、関連調査レコードと一致するレコードを検索する。
【0069】
ステップ406は、検索したレコードのFromフィールドのテーブル及びカラムを関連テーブルレコードに設定する。
【0070】
カラム削除時には、変更候補テーブル抽出処理105をおこなった後に、図6に示す変更対象カラム決定処理をおこなう。変更対象カラム決定処理において、削除するカラムが、他のMDスキーマの生成元となるテーブルのカラムの生成元となっているか否かを確認する。他のスキーマの生成元となるテーブルのカラムの生成元となっている場合には、当該カラムを削除しない。図6のフローチャートについて説明する。
【0071】
ステップ601では、変更候補テーブルのレコードを特定する番号pを0に初期化する。
【0072】
ステップ602では、変更候補テーブルのレコードの中で、ステップ603以降の処理をおこなっていないレコードが存在するか否かを確認する。全てのレコードについて、ステップ603以降の処理を実行している場合には終了し、そうでない場合には、ステップ603に進む。
【0073】
ステップ603では、変更候補テーブルの変数pに1を加え、p番目のレコードを関連調査レコードとして選択する。例えば、No.=2、テーブル名=顧客属性、カラム名=趣味、変更処理=Drop_column(趣味)、関連No.=1、終了フラグ=1のレコードを、関連調査レコードとして選択したとする。
【0074】
ステップ604では、テーブル関連情報104の中から、Fromフィールドのテーブル名とカラム名が関連調査レコードと一致するレコードを検索し、一致したレコードが検索できた場合には、ステップ605に進む。一致するレコードが検索できなかった場合には、ステップ602に進む。ここでは、テーブル関連情報104の2番目のレコードが検索されるので、ステップ605に進む。
【0075】
ステップ605では、関連テーブルレコードを生成する。ここで、関連テーブルレコードは、検索したレコードのToフィールドのカラムに、関連調査レコードの変更処理をほどこすことを示す。レコードは、テーブル名、カラム名、変更処理から構成される。ここでは、(顧客属性,趣味,Drop_column(趣味))が、関連テーブルレコードとなる。
【0076】
ステップ606では、関連テーブルレコードと同一レコードが変更候補テーブル情報106に存在するか否かを確認する。存在しない場合には、ステップ607に進み、存在する場合には、ステップ604に戻る。
【0077】
ステップ607では、関連調査レコードを、変更候補テーブル情報106から削除する。
【0078】
ステップ608では、選択している関連調査レコードをキーとして、テーブル関連情報の全てのレコードを検索したか否かを確認する。全てのレコードを検索している場合には、ステップ602に戻る。全てのレコードを検索していない場合は、ステップ604に戻る。
【0079】
また、次元を削除する場合には、変更対象テーブル決定処理107は実行せず、変更候補テーブル情報106のNo.、テーブル名、カラム名、変更処理が、テーブル定義変更情報109にコピーされる。
【0080】
第2に、MDスキーマのある次元の名称を変更する場合に、整合性を保つために、リレーショナル・データベースにより実装されたデータモデルの中で、名称を変更すべきテーブルとカラムをリストアップする。
【0081】
名称を変更する次元の情報は、次元追加情報101と同様のフォーマットで記述される。例えば、趣味次元の名称を「主な趣味」に変更する場合には、次元名は「主な趣味」となり、変更処理はChange_name(主な趣味)となる。データベースにより実装されたデータモデルの中で、カラムの名称を変更するテーブル及びカラムを特定するプロセスは、先の実施例で示した変更対象テーブル検出処理とほぼ同様である。ただし、変更候補テーブル抽出処理105を次のように変更する。
【0082】
ステップ405において、テーブル関連情報の中から、Toフィールドのテーブル名とカラム名が、関連調査レコードと一致するレコードを検索する。
【0083】
ステップ406は、検索したレコードのFromフィールドのカラム名を関連調査レコードのカラム名に変更するものとし、関連テーブルレコードに設定する。
【0084】
また、次元の名称変更時には、第1の変更例と同様に、変更候補テーブル抽出処理105をおこなった後に、図6に示す変更対象カラム決定処理をおこなう。ここでは、名称を変更するカラムが、他のテーブルの生成と不整合を生じていないかを検証し、不整合が生じている場合には、該当するテーブルのカラムの名称も変更する。
【0085】
変更対象カラム決定処理は、ステップ607のみ、「関連テーブルレコードを変更候補テーブルに追加する」処理に変更する。
【0086】
また第1の変更例と同様に、変更対象テーブル決定処理107は実行せず、変更候補テーブル情報106のNo.、テーブル名、カラム名、変更処理が、テーブル定義変更情報109にコピーされる。
【0087】
第3に、MDスキーマのある次元に関連する階層の最下位メンバの最大文字数を変更する場合に、整合性を保つために、リレーショナル・データベースにより実装されたデータモデルの中で、カラムのレコード長を変更すべきテーブルとカラムをリストアップする。
【0088】
最大文字数を変更する次元の情報は、次元追加情報101と同様のフォーマットで記述される。例えば、趣味次元の最下位メンバの最大文字数を32文字に変更する場合には、変更処理をChange_length(32)に設定する。データベースにより実装されたデータモデルの中で、レコード長を変更すべきテーブル及びカラムを特定するプロセスは、第2の変更例と同様である。
【0089】
以上に述べた本発明の方法を実行するプログラムを、計算機で読み取り可能な記憶媒体に格納し、実行時に、このプログラムをメモリに読み込んで実行することも可能である。
【0090】
【発明の効果】
本発明によれば、データモデルなどの雛型が定まったデータウェアハウス、およびBIシステムに対して、システムの構成要素であるスキーマに新たな次元を追加、削除する場合に、リレーショナル・データベースの中で、カラムを追加、削除すべきテーブルをリストアップできる。また、スキーマの名称を変更する場合に、リレーショナル・データベースの中で、カラムの名称を変更すべきテーブルとカラムをリストアップできる。また、スキーマのある次元に関連する階層の最下位メンバの最大文字数を変更する場合に、リレーショナル・データベースの中で、カラムのレコード長を変更すべきテーブルとカラムをリストアップできる。
【図面の簡単な説明】
【図1】本発明が対象とする分析システムの構成図と本発明の処理フロー図である。
【図2】本発明が対象とする分析システムを構成するスキーマの定義情報を構成図である。
【図3】MDスキーマ定義変更処理のフローチャートである。
【図4】変更候補テーブル抽出処理のフローチャートである。
【図5】変更対象テーブル決定処理のフローチャートである。
【図6】変更対象カラム決定処理のフローチャートである。
【符号の説明】
101…次元追加情報、102…MDスキーマ定義変更処理、103…カラム追加情報、104…テーブル関連情報、105…変更候補テーブル抽出処理、106…変更候補テーブル情報、107…変更対象テーブル決定処理、108…テーブル別レコード数、109…テーブル定義変更情報
201…テーブル定義ファイル、202…スキーマ構成次元定義ファイル、203…次元定義ファイル、204…階層定義ファイル、205…マッピング情報ファイル

Claims (7)

  1. リレーショナル・データベースに蓄積された明細データと属性データを集計して加工する際に、
    データベースの構造を定義したMDスキーマの中で変更すべきファイルとその変更方法をリストアップし、リレーショナル・データベースの中で、カラムを追加すべきロード元テーブルを特定し、
    テーブル間の処理を記述したテーブル関連情報に基づいて、変更対象となるロードテーブルから、その生成元となるテーブルを順に辿ることにより、全ての変更候補となるテーブルの組合せをリストアップし、
    複数の変更候補であるテーブルの組合せの中から、変更すべきレコードの数の総和が最小となるテーブルの組合せを出力することを特徴とする変更対象テーブル自動検出方法。
  2. 前記テーブルの組合せをリストアップする際に、
    次元を追加、削除、変更する分析モデルを生成するためのロードテーブルを特定し、
    前記ロードテーブルをキーとして、リレーショナル・データベース上に定義されたテーブル間の関係を、生成元となるテーブル名及びカラム名、生成されたテーブル名及びカラム名と生成処理を一組のレコードとしたテーブル関連情報の生成されたテーブル名を検索し、検索したレコードの生成元テーブル名を次の検索キーとしてテーブル関連情報を検索する処理を繰り返すことにより、カラムを追加、削除、変更すべきテーブルの組合せをリストアップすることを特徴とする請求項1に記載の変更対象テーブル自動検出方法。
  3. 前記項目を追加すべきテーブルの組合せに対して、レコード数の合計を算出し、該レコード数の合計が最少となるテーブルの組合せを抽出することを特徴とする請求項1及び2に記載の変更対象テーブル自動検出方法。
  4. 前記カラムを削除すべきテーブルの組合せに対して、削除対象となっているカラムが、他のスキーマの生成に利用されているか否かを確認し、他のスキーマの生成に利用されている場合には、削除対象から外すことを特徴とする請求項1及び2に記載の変更対象テーブル自動検出方法。
  5. 前記カラムを変更すべきテーブルの組合せに対して、変更対象となっているカラムが、他のスキーマの生成に利用されているか否かを確認し、他のスキーマの生成に利用されている場合には、当該のスキーマを生成するテーブルに対して、同様の変更を施すことを特徴とする請求項1及び2に記載の変更対象テーブル自動検出方法。
  6. 変更対象テーブル自動検出方法を計算機で実施するプログラムを記憶した記憶媒体であって、前記方法は、
    データベースの構造を定義したMDスキーマの中で変更すべきファイルとその変更方法をリストアップし、リレーショナル・データベースの中で、カラムを追加すべきロード元テーブルを特定し、
    テーブル間の処理を記述したテーブル関連情報に基づいて、変更対象となるロードテーブルから、その生成元となるテーブルを順に辿ることにより、全ての変更候補となるテーブルの組合せをリストアップし、
    複数の変更候補であるテーブルの組合せの中から、変更すべきレコードの数の総和が最小となるテーブルの組合せを出力することを特徴とする記憶媒体。
  7. 変更対象テーブル自動検出システムは、
    データベースの構造を定義したMDスキーマの中で変更すべきファイルとその変更方法をリストアップし、リレーショナル・データベースの中で、カラムを追加すべきロード元テーブルを特定するMDスキーマ定義変更手段、
    テーブル間の処理を記述したテーブル関連情報に基づいて、変更対象となるロードテーブルから、その生成元となるテーブルを順に辿ることにより、全ての変更候補となるテーブルの組合せをリストアップする変更候補テーブル抽出手段、 複数の変更候補であるテーブルの組合せの中から、変更すべきレコードの数の総和が最小となるテーブルの組合せを出力する変更対象テーブル決定手段を有することを特徴とする変更対象テーブル自動検出システム。
JP2002185449A 2002-06-26 2002-06-26 変更対象テーブル自動検出方法 Pending JP2004030221A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2002185449A JP2004030221A (ja) 2002-06-26 2002-06-26 変更対象テーブル自動検出方法
US10/345,260 US7113951B2 (en) 2002-06-26 2003-01-16 Method and system for detecting tables to be modified
US11/518,954 US20070005619A1 (en) 2002-06-26 2006-09-12 Method and system for detecting tables to be modified

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002185449A JP2004030221A (ja) 2002-06-26 2002-06-26 変更対象テーブル自動検出方法

Publications (1)

Publication Number Publication Date
JP2004030221A true JP2004030221A (ja) 2004-01-29

Family

ID=29774109

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002185449A Pending JP2004030221A (ja) 2002-06-26 2002-06-26 変更対象テーブル自動検出方法

Country Status (2)

Country Link
US (2) US7113951B2 (ja)
JP (1) JP2004030221A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007531941A (ja) * 2004-04-02 2007-11-08 セールスフォース ドット コム インコーポレイティッド マルチテナント・データベース・システムにおけるカスタム・エンティティおよびフィールド
US8407205B2 (en) 2008-09-11 2013-03-26 Salesforce.Com, Inc. Automating sharing data between users of a multi-tenant database service
JP2013533995A (ja) * 2010-05-27 2013-08-29 マイクロソフト コーポレーション データ統合のためのスキーマコントラクト
US8639670B2 (en) 2006-01-18 2014-01-28 Fujitsu Limited Data integration apparatus, data integration method, and computer product
JP2016530646A (ja) * 2013-09-06 2016-09-29 トランスメド システムズ, インコーポレイテッド メタデータ自動化システム
JP2016189155A (ja) * 2015-03-30 2016-11-04 新日鉄住金ソリューションズ株式会社 情報処理装置、情報処理システム、情報処理方法及びプログラム
JP2018147508A (ja) * 2018-04-27 2018-09-20 新日鉄住金ソリューションズ株式会社 情報処理装置、情報処理システム、情報処理方法及びプログラム

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4167889B2 (ja) 2002-12-06 2008-10-22 株式会社日立製作所 データ変換方法、および、そのための計算機システム
JP2005011109A (ja) * 2003-06-19 2005-01-13 Hitachi Ltd ジョブ管理方法、情報処理装置、プログラム、および記録媒体
US8135636B2 (en) * 2003-11-25 2012-03-13 International Business Machines Corporation System for metering in an on-demand utility environment
CN102929901B (zh) 2006-06-26 2016-12-14 尼尔森(美国)有限公司 提高数据仓库性能的方法和装置
US8996544B2 (en) 2012-09-28 2015-03-31 Oracle International Corporation Pruning disk blocks of a clustered table in a relational database management system
US9513792B2 (en) * 2012-10-10 2016-12-06 Sap Se Input gesture chart scaling
US10642837B2 (en) 2013-03-15 2020-05-05 Oracle International Corporation Relocating derived cache during data rebalance to maintain application performance
US9384221B2 (en) * 2013-06-25 2016-07-05 Google Inc. Unlimited retroactive data element dimension widening
US10095389B2 (en) * 2014-08-22 2018-10-09 Business Objects Software Ltd. Gesture-based on-chart data filtering
US10303141B2 (en) * 2017-06-14 2019-05-28 Siemens Industry, Inc. Discovery and identification of equipment and operational data in a building automation system
US11086876B2 (en) 2017-09-29 2021-08-10 Oracle International Corporation Storing derived summaries on persistent memory of a storage device
US11947559B1 (en) 2022-10-10 2024-04-02 Bank Of America Corporation Dynamic schema identification to process incoming data feeds in a database system

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5560005A (en) * 1994-02-25 1996-09-24 Actamed Corp. Methods and systems for object-based relational distributed databases
US5584024A (en) * 1994-03-24 1996-12-10 Software Ag Interactive database query system and method for prohibiting the selection of semantically incorrect query parameters
US5717924A (en) * 1995-07-07 1998-02-10 Wall Data Incorporated Method and apparatus for modifying existing relational database schemas to reflect changes made in a corresponding object model
JPH09282330A (ja) * 1996-04-19 1997-10-31 Hitachi Ltd データベース作成方法
US5870743A (en) * 1996-06-24 1999-02-09 Oracle Corporation Method and apparatus for parallelizing operations that create a table
US5893090A (en) * 1997-01-31 1999-04-06 Informix Software, Inc. Method and apparatus for performing an aggregate query in a database system
US6161103A (en) * 1998-05-06 2000-12-12 Epiphany, Inc. Method and apparatus for creating aggregates for use in a datamart
US6714935B1 (en) * 1998-09-21 2004-03-30 Microsoft Corporation Management of non-persistent data in a persistent database
US6484179B1 (en) * 1999-10-25 2002-11-19 Oracle Corporation Storing multidimensional data in a relational database management system
CA2311884A1 (en) * 2000-06-16 2001-12-16 Cognos Incorporated Method of managing slowly changing dimensions

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007531941A (ja) * 2004-04-02 2007-11-08 セールスフォース ドット コム インコーポレイティッド マルチテナント・データベース・システムにおけるカスタム・エンティティおよびフィールド
JP2011134342A (ja) * 2004-04-02 2011-07-07 Salesforce.Com Inc マルチテナント・データベース・システムにおけるカスタム・エンティティおよびフィールド
US8112445B2 (en) 2004-04-02 2012-02-07 Salesforce.Com, Inc. Custom entities and fields in a multi-tenant database system
US9043362B2 (en) 2004-04-02 2015-05-26 Salesforce.Com, Inc. Custom entities and fields in a multi-tenant database system
US10713230B2 (en) 2004-04-02 2020-07-14 Salesforce.Com, Inc. Custom entities and fields in a multi-tenant database system
US8639670B2 (en) 2006-01-18 2014-01-28 Fujitsu Limited Data integration apparatus, data integration method, and computer product
US8407205B2 (en) 2008-09-11 2013-03-26 Salesforce.Com, Inc. Automating sharing data between users of a multi-tenant database service
JP2013533995A (ja) * 2010-05-27 2013-08-29 マイクロソフト コーポレーション データ統合のためのスキーマコントラクト
JP2016530646A (ja) * 2013-09-06 2016-09-29 トランスメド システムズ, インコーポレイテッド メタデータ自動化システム
JP2016189155A (ja) * 2015-03-30 2016-11-04 新日鉄住金ソリューションズ株式会社 情報処理装置、情報処理システム、情報処理方法及びプログラム
JP2018147508A (ja) * 2018-04-27 2018-09-20 新日鉄住金ソリューションズ株式会社 情報処理装置、情報処理システム、情報処理方法及びプログラム

Also Published As

Publication number Publication date
US7113951B2 (en) 2006-09-26
US20070005619A1 (en) 2007-01-04
US20040002983A1 (en) 2004-01-01

Similar Documents

Publication Publication Date Title
US10740396B2 (en) Representing enterprise data in a knowledge graph
US20070005619A1 (en) Method and system for detecting tables to be modified
US10180992B2 (en) Atomic updating of graph database index structures
Lee et al. Progressive partition miner: an efficient algorithm for mining general temporal association rules
CN111459985B (zh) 标识信息处理方法及装置
US6961734B2 (en) Method, system, and program for defining asset classes in a digital library
US20140351241A1 (en) Identifying and invoking applications based on data in a knowledge graph
US20090077074A1 (en) Apparatus, computer program product, and method for supporting construction of ontologies
US20040015486A1 (en) System and method for storing and retrieving data
US7536406B2 (en) Impact analysis in an object model
US20180137115A1 (en) High performance parallel indexing for forensics and electronic discovery
CN101105795A (zh) 基于网络行为的个性化推荐方法和系统
Bleifuß et al. Exploring change: A new dimension of data analytics
US20100017378A1 (en) Enhanced use of tags when storing relationship information of enterprise objects
CN102893281A (zh) 信息搜索设备、信息搜索方法、计算机程序和数据结构
US9158599B2 (en) Programming framework for applications
US9633095B2 (en) Extract, transform and load (ETL) system and method
US7035842B2 (en) Method, system, and program for defining asset queries in a digital library
Tseng Mining frequent itemsets in large databases: The hierarchical partitioning approach
JP2004094425A (ja) データベース構築処理変更方法
JP5844824B2 (ja) Sparqlクエリ最適化方法
US6701328B1 (en) Database management system
KR102153259B1 (ko) 데이터 도메인 추천 방법 및 추천된 도메인을 이용하여 통합 데이터 저장소 관리 시스템을 구축하는 방법
CN111708895B (zh) 一种知识图谱系统的构建方法及装置
Jukic et al. Expediting analytical databases with columnar approach

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050114

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20060419

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080507

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080707

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080916

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090203