JP2020155025A - サービス量可視化システムおよびサービス量可視化プログラム - Google Patents

サービス量可視化システムおよびサービス量可視化プログラム Download PDF

Info

Publication number
JP2020155025A
JP2020155025A JP2019055158A JP2019055158A JP2020155025A JP 2020155025 A JP2020155025 A JP 2020155025A JP 2019055158 A JP2019055158 A JP 2019055158A JP 2019055158 A JP2019055158 A JP 2019055158A JP 2020155025 A JP2020155025 A JP 2020155025A
Authority
JP
Japan
Prior art keywords
service amount
parts
service
amount
processing
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
Application number
JP2019055158A
Other languages
English (en)
Other versions
JP7256662B2 (ja
Inventor
紘史 丸山
Hiroshi Maruyama
紘史 丸山
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.)
Mitsubishi Electric Information Network Corp
Original Assignee
Mitsubishi Electric Information Network Corp
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 Mitsubishi Electric Information Network Corp filed Critical Mitsubishi Electric Information Network Corp
Priority to JP2019055158A priority Critical patent/JP7256662B2/ja
Publication of JP2020155025A publication Critical patent/JP2020155025A/ja
Application granted granted Critical
Publication of JP7256662B2 publication Critical patent/JP7256662B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】データ加工のために利用された各部品がどれだけ有効な仕事をしたか確認できるようにする。【解決手段】ツール実行部210は、データ加工に利用される1つ以上の部品のそれぞれを実行する。実行情報取得部220は、前記1つ以上の部品のそれぞれによって実行された加工処理の回数である加工数と、前記1つ以上の部品のそれぞれによって実行された判別処理の回数である判別数とを取得する。サービス量算出部230は、前記1つ以上の部品のそれぞれの加工数と前記1つ以上の部品のそれぞれの判別数とを用いて、前記1つ以上の部品のそれぞれのサービス量を算出する。サービス量可視化部240は、前記1つ以上の部品のそれぞれのサービス量をディスプレイに表示する。【選択図】図1

Description

本発明は、データ加工のために利用された部品のサービス量を可視化する技術に関するものである。
データを加工するためにETLツールが使用されている。
ETLツールは、部品を組み合わせて作成されたデータ加工定義に従って、データを加工するツールである。
ETLツールを使用する場合、加工前データの品質などによって、データの加工処理およびデータの加工時間に大きな影響が出る。
ETLは、Extract/Transform/Loadの略称である。
ETLツールの有効性を確認するためには、ETLツールの部品ごとに、部品がどれだけ有効な仕事をしたか確認する必要がある。
特許第5477099号公報
特許文献1には、ETLツールに関するデータ連携システムが開示されている。
このシステムは、ETLツールの部品に相当する単位処理ごとに、単位データ量当たりの処理量(プログラムのステップ数)にデータ量を掛けて得られる処理量を単位処理の処理量と推定する。
このシステムによってETLツールの部品ごとに部品の処理量を見積ることができたとしても、各部品が実際にどれだけ有効な仕事をしたか確認することはできない。
本発明は、データ加工のために利用された各部品がどれだけ有効な仕事をしたか確認できるようにすることを目的とする。
本発明のサービス量可視化システムは、データ加工に利用される1つ以上の部品のそれぞれのサービス量を可視化するシステムである。
前記サービス量可視化システムは、
前記1つ以上の部品のそれぞれによって実行された加工処理の回数である加工数と、前記1つ以上の部品のそれぞれによって実行された判別処理の回数である判別数と、を取得する実行情報取得部と、
前記1つ以上の部品のそれぞれの加工数と前記1つ以上の部品のそれぞれの判別数とを用いて、前記1つ以上の部品のそれぞれのサービス量を算出するサービス量算出部と、
前記1つ以上の部品のそれぞれのサービス量をディスプレイに表示するサービス量可視化部とを備える。
前記サービス量算出部は、
部品毎に、加工数に対する判別数の割合である判別率を算出し、
部品毎に、判別数と一回当たりの判別処理の計算量と判別率とを用いて、判別処理に対するサービス量を算出し、
部品毎に、加工数と一回当たりの加工処理の計算量とを用いて、加工処理に対するサービス量を算出し、
部品毎に、判別処理に対するサービス量と加工処理に対するサービス量とを用いて、部品のサービス量を算出する。
前記データ加工は、複数回実施され
前記実行情報取得部は、前記データ加工の実施毎に、前記1つ以上の部品のそれぞれの加工数と前記1つ以上の部品のそれぞれの判別数とを取得し、
前記サービス量算出部は、前記データ加工の実施毎に、前記1つ以上の部品のそれぞれのサービス量を算出し、
前記サービス量可視化部は、部品毎に、前記データ加工の実施別のサービス量を示すサービス量グラフを表示する。
前記サービス量可視化部は、
前記1つ以上の部品の実行手順が定義された加工定義データに基づいて、前記1つ以上の部品を表す1つ以上の部品図を含み前記1つ以上の部品の実行手順を示すフロー図を生成し、
生成したフロー図に含まれる各部品図に各部品のサービス量グラフを付加し、
各部品のサービス量グラフが付加されたフロー図を表示する。
本発明のサービス量可視化プログラムは、データ加工に利用される1つ以上の部品のそれぞれのサービス量を可視化するためのプログラムである。
前記サービス量可視化プログラムは、
前記1つ以上の部品のそれぞれによって実行された加工処理の回数である加工数と、前記1つ以上の部品のそれぞれによって実行された判別処理の回数である判別数と、を取得する実行情報取得部と、
前記1つ以上の部品のそれぞれの加工数と前記1つ以上の部品のそれぞれの判別数とを用いて、前記1つ以上の部品のそれぞれのサービス量を算出するサービス量算出部と、
前記1つ以上の部品のそれぞれのサービス量をディスプレイに表示するサービス量可視化部として、コンピュータを機能させる。
本発明によれば、データ加工のために利用された各部品がどれだけ有効な仕事をしたかを示すサービス量を可視化することができる。そのため、利用者は、各部品がどれだけ有効な仕事をしたか確認することができる。
実施の形態1におけるサービス量可視化システム100の構成図。 実施の形態1における記憶部290の構成図。 実施の形態1におけるサービス量可視化方法のフローチャート。 実施の形態1におけるツール実行処理(S110)のフローチャート。 実施の形態1におけるサービス量算出処理(S130)のフローチャート。 実施の形態1における「EXPRESSION」のフローチャート。 実施の形態1における「Filter」のフローチャート。 実施の形態1における「Router」のフローチャート。 実施の形態1における「Sorter」のフローチャート。 実施の形態1における「Sorter」の処理例を示す図。 実施の形態1における「Aggregator」のフローチャート。 実施の形態1における「Aggregator」のフローチャート。 実施の形態1における「Aggregator」の処理例を示す図。 実施の形態1における「Aggregator」の処理例を示す図。 実施の形態1における「Joiner」のフローチャート。 実施の形態1における「Joiner」の処理例を示す図。 実施の形態1における「Joiner」の処理例を示す図。 実施の形態1におけるサービス量データベース291の構成例を示す図。 実施の形態1における残業時間一覧を示す図。 実施の形態1における加工定義データを示す図。 実施の形態1における残業代一覧を示す図。 実施の形態1における「ROUTER1」の説明図。 実施の形態1における「Expression1」の説明図。 実施の形態1における「Expression2」の説明図。 実施の形態1における「UNION1」の説明図。 実施の形態1における加工定義データの変更を示す図。 実施の形態1における「Expression3」の説明図。 実施の形態1における「加工定義1」のサービス量データベース291を示す図。 実施の形態1における「加工定義1」のサービス量の可視化を示す図。 実施の形態1における「加工定義2」のサービス量データベース291を示す図。 実施の形態1における「加工定義2」のサービス量の可視化を示す図。
実施の形態および図面において、同じ要素または対応する要素には同じ符号を付している。説明した要素と同じ符号が付された要素の説明は適宜に省略または簡略化する。図中の矢印はデータの流れ又は処理の流れを主に示している。
実施の形態1.
サービス量可視化システム100について、図1から図31に基づいて説明する。
サービス量可視化システム100は、データ加工に利用される1つ以上の部品のそれぞれのサービス量を可視化するシステムである。
***構成の説明***
図1に基づいて、サービス量可視化システム100の構成を説明する。
サービス量可視化システム100は、サービス量可視化装置200を備える。サービス量可視化装置200は、複数の装置で実現されてもよい。
サービス量可視化装置200は、プロセッサ201とメモリ202と補助記憶装置203と通信装置204と入出力インタフェース205といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
プロセッサ201は、演算処理を行うICであり、他のハードウェアを制御する。例えば、プロセッサ201は、CPU、DSPまたはGPUである。
ICは、Integrated Circuitの略称である。
CPUは、Central Processing Unitの略称である。
DSPは、Digital Signal Processorの略称である。
GPUは、Graphics Processing Unitの略称である。
メモリ202は揮発性の記憶装置である。メモリ202は、主記憶装置またはメインメモリとも呼ばれる。例えば、メモリ202はRAMである。メモリ202に記憶されたデータは必要に応じて補助記憶装置203に保存される。
RAMは、Random Access Memoryの略称である。
補助記憶装置203は不揮発性の記憶装置である。例えば、補助記憶装置203は、ROM、HDDまたはフラッシュメモリである。補助記憶装置203に記憶されたデータは必要に応じてメモリ202にロードされる。
ROMは、Read Only Memoryの略称である。
HDDは、Hard Disk Driveの略称である。
通信装置204はレシーバ及びトランスミッタである。例えば、通信装置204は通信チップまたはNICである。
NICは、Network Interface Cardの略称である。
入出力インタフェース205は、入力装置および出力装置が接続されるポートである。例えば、入出力インタフェース205はUSB端子であり、入力装置はキーボードおよびマウスであり、出力装置はディスプレイである。
USBは、Universal Serial Busの略称である。
サービス量可視化装置200は、ツール実行部210と実行情報取得部220とサービス量算出部230とサービス量可視化部240といった要素を備える。これらの要素はソフトウェアで実現される。
補助記憶装置203には、ツール実行部210と実行情報取得部220とサービス量算出部230とサービス量可視化部240としてコンピュータを機能させるためのサービス量可視化プログラムが記憶されている。サービス量可視化プログラムは、メモリ202にロードされて、プロセッサ201によって実行される。
補助記憶装置203には、さらに、OSが記憶されている。OSの少なくとも一部は、メモリ202にロードされて、プロセッサ201によって実行される。
プロセッサ201は、OSを実行しながら、サービス量可視化プログラムを実行する。
OSは、Operating Systemの略称である。
サービス量可視化プログラムの入出力データは記憶部290に記憶される。
メモリ202は記憶部290として機能する。但し、補助記憶装置203、プロセッサ201内のレジスタおよびプロセッサ201内のキャッシュメモリなどの記憶装置が、メモリ202の代わりに、又は、メモリ202と共に、記憶部290として機能してもよい。
サービス量可視化装置200は、プロセッサ201を代替する複数のプロセッサを備えてもよい。複数のプロセッサは、プロセッサ201の役割を分担する。
サービス量可視化プログラムは、光ディスクまたはフラッシュメモリ等の不揮発性の記録媒体にコンピュータ読み取り可能に記録(格納)することができる。
図2に基づいて、記憶部290の構成を説明する。
記憶部290には、サービス量データベース291およびリポジトリデータベース292などが記憶される。これらのデータについては後述する。
***動作の説明***
サービス量可視化システム100の動作はサービス量可視化方法に相当する。また、サービス量可視化方法の手順はサービス量可視化プログラムの手順に相当する。
図3に基づいて、サービス量可視化方法を説明する。
ステップS110において、ツール実行部210はETLツールを実行する。
ETLツールは、データ加工を行うためのツールである。
図4に基づいて、ツール実行処理(S110)の手順を説明する。
ツール実行処理(S110)は、ETLツールを実行することによって実施される。
ステップS111において、ツール実行部210はパラメータを取得する。
具体的には、パラメータは、開始時刻とワークフロー名と加工定義名である。
例えば、利用者がパラメータをサービス量可視化装置200に入力し、ツール実行部210が入力されたパラメータを受け付ける。
ステップS112において、ツール実行部210は、加工前データを受け付ける。
加工前データは、データ加工の対象となるデータである。
加工前データの形式は、例えば、テーブルである。
例えば、利用者が加工前データをサービス量可視化装置200に入力し、ツール実行部210が入力された加工前データを受け付ける。
ステップS113において、ツール実行部210は、ステップS111で取得した加工定義名で識別される加工定義データをリポジトリデータベース292から取得する。
リポジトリデータベース292には、複数の加工定義データが記憶されている。
加工定義データには、データ加工に利用される1つ以上の部品、および、1つ以上の部品の実行順序が定義されている。
データ加工に利用される1つ以上の部品の具体例について後述する。
ステップS114において、ツール実行部210は、取得した加工定義データに定義された実行順序に従って、次に実行する部品を選択する。
選択される部品を「選択部品」と称する。
ステップS115において、ツール実行部210は選択部品を実行する。
具体的には、選択部品が先頭の部品である場合、ツール実行部210は、加工前データに対して選択部品を実行する。選択部品が2番目以降の部品である場合、ツール実行部210は、前の部品による加工後データに対して選択部品を実行する。
実施の形態1において、各部品には、データ加工のための各処理の他に、実行情報の算出のための処理が実装されている。そのため、各部品は、データ加工のための各処理を実行しながら実行情報を算出する。
実行情報は、加工数および判別数である。
加工数は、データ加工のために実行された加工処理の回数である。
判別数は、データ加工のために実行される判別処理の回数である。
ステップS116において、ツール実行部210は、パラメータと共に選択部品の実行情報をサービス量データベース291に保存する。
サービス量データベース291には、パラメータと各部品の実行情報との組が記憶される。
ステップS117において、ツール実行部210は、取得した加工定義データに定義された実行順序に従って、次に実行する部品があるか判定する。
次に実行する部品がある場合、処理はステップS114に進む。
次に実行する部品がない場合、処理はステップS118に進む。
ステップS118において、ツール実行部210は、取得した加工定義データに定義された1つ以上の部品を実行することによって得られた加工後データを出力する。
例えば、ツール実行部210は、パラメータと共に加工後データを記憶部290に記憶する。
図3に戻り、ステップS120から説明を続ける。
ステップS120において、実行情報取得部220は、加工定義データに定義された1つ以上の部品のそれぞれの実行情報をパラメータと共に、サービス量データベース291から取得する。
ステップS130において、サービス量算出部230は、加工定義データに定義された1つ以上の部品のそれぞれの実行情報を用いて、各部品のサービス量を算出する。
部品のサービス量は、部品によって実行された処理の量に相当する。
図5に基づいて、サービス量算出処理(S130)の手順を説明する。
ステップS131において、サービス量算出部230は、加工定義データに定義された1つ以上の部品から、未選択の部品を1つ選択する。
選択された部品を「選択部品」と称する。
ステップS132において、サービス量算出部230は、選択部品によって実行される加工処理の一回当たりの計算量をリポジトリデータベース292から取得する。
さらに、サービス量算出部230は、選択部品によって実行される判別処理の一回当たりの計算量をリポジトリデータベース292から取得する。
リポジトリデータベース292には、部品毎に、一回当たりの加工処理の計算量と、一回当たりの判別処理の計算量とが記憶されている。
加工処理の計算量は、加工処理内の計算式に含まれる演算子の数と、加工処理内の関数の数との合計に相当する。
判別処理の計算量は、判別処理内の計算式に含まれる演算子の数と、判別処理内の関数の数との合計に相当する。
ステップS133において、サービス量算出部230は、選択部品の加工数と選択部品の判別数とを用いて、選択部品の判別率を算出する。
判別率は、加工数に対する判別数の割合である。
具体的には、サービス量算出部230は、以下の式を計算することによって、判別率を算出する。末尾の「×4」は、判別率の最大を100パーセントにするための係数である。
判別率 = {(加工数÷判別数)×(1−(加工数÷判別数))×4
ステップS134において、サービス量算出部230は、判別数と一回当たりの判別処理の計算量と判別率とを用いて、判別処理に対するサービス量を算出する。
具体的には、サービス量算出部230は、以下の式を計算することによって、判別処理に対するサービス量(判別サービス量)を算出する。一回当たりの判別処理の計算量を「判別計算量」と称する。
判別サービス量 = 判別数×判別計算量×判別率
ステップS135において、サービス量算出部230は、加工数と一回当たりの加工処理の計算量とを用いて、加工処理に対するサービス量を算出する。
具体的には、サービス量算出部230は、以下の式を計算することによって、加工処理に対するサービス量(加工サービス量)を算出する。一回当たりの加工処理の計算量を「加工計算量」と称する。
加工サービス量 = 加工数×加工計算量
ステップS136において、サービス量算出部230は、判別処理に対するサービス量と加工処理に対するサービス量とを用いて、選択部品のサービス量を算出する。
そして、サービス量算出部230は、パラメータと共に
具体的には、サービス量算出部230は、以下の式を計算することによって選択部品のサービス量(部品サービス量)を算出する。判別処理に対するサービス量を「判別サービス量」と称し、加工処理に対するサービス量を「加工サービス量」と称する。
部品サービス量 = 判別サービス量+加工サービス量
ステップS137において、サービス量算出部230は、パラメータと共に選択部品のサービス情報をサービス量データベース291に保存する。
選択部品のサービス情報は、選択部品のサービス量と判別処理に対するサービス量と加工処理に対するサービス量とを含む。
サービス量データベース291には、パラメータと各部品のサービス情報との組が記憶される。
ステップS137において、サービス量算出部230は、加工定義データに定義された1つ以上の部品の中に未選択の部品があるか判定する。
未選択の部品がある場合、処理はステップS131に進む。
未選択の部品がない場合、サービス量算出処理(S130)は終了する。
図3に戻り、ステップS140を説明する。
ステップS140において、サービス量可視化部240は、加工定義データに定義された1つ以上の部品のそれぞれのサービス量をディスプレイに表示する。
例えば、サービス量可視化部240は、各部品のサービス量を表形式またはグラフ形式で表示する。
具体的には、サービス量可視化部240は、各部品のサービス量を以下のように表示する。
ツール実行部210は、同じ加工定義データに基づくデータ加工を複数回実施する(S110)。例えば、ツール実行部210は、データ加工を毎月実施する。
実行情報取得部220は、データ加工の実施毎に、各部品の加工数と各部品の判別数とを取得する(S120)。
サービス量算出部230は、データ加工の実施毎に、各部品のサービス量を算出する(S130)。
サービス量可視化部240は、部品毎にサービス量グラフを生成し、各部品のサービス量グラフを表示する(S140)。
サービス量グラフは、データ加工の実施別のサービス量を示す。例えば、サービス量グラフは、毎月のサービス量の変化を示す折れ線グラフである。
サービス量グラフの具体例について後述する。
サービス量可視化部240は、各部品のサービス量を以下のように表示してもよい。
サービス量可視化部240は、加工定義データに基づいて、フロー図を生成する。
フロー図は、加工定義データに定義された1つ以上の部品を表す1つ以上の部品図を含み、加工定義データに定義された1つ以上の部品の実行順序を示す。
サービス量可視化部240は、フロー図に含まれる各部品図に各部品のサービス量グラフを付加する。
そして、サービス量可視化部240は、各部品のサービス量グラフが付加されたフロー図を表示する。
各部品のサービス量グラフが付加されたフロー図の具体例について後述する。
***実施例の説明***
ETLツールの部品の具体例を説明する。
ETLツールには「Expression」、「Filter」、「Router」、「Sorter」、「Aggregator」および「Joiner」などの部品が存在する。
「Expression」は、行(レコード)ごとに完結する演算処理を行う。
「Filter」は、行を取り除く。
「Router」は、行を振り分ける。
「Sorter」は、データを整列させる。
「Aggregator」は、集計を行う。
「Joiner」は、2つのデータを結合する。
「Expression」は、行(レコード)ごとに完結する演算処理を行う部品である。演算処理の式には計算式または条件式を設定することが可能である。
実施の形態1では、演算処理毎に判別数Dと加工数Pとのそれぞれのカウントが行われる。演算処理の数Nは利用者によって設定されるOUTPUTの数によって決まる。
図6に基づいて、実施の形態1における「Expression」の手順を説明する。
ステップE1において、ツール実行部210はパラメータを取得する。具体的なパラメータは、部品名と各演算処理の処理名である。
ステップE2において、ツール実行部210は、演算処理別の判別数Dと演算処理別の加工数Pとのそれぞれをゼロに初期化する。
ステップE3において、ツール実行部210は、次の行(レコード)を選択する。
ステップE4において、ツール実行部210は、選択した行に対して次の演算処理を実行する。
ステップE5において、ツール実行部210は、演算処理が正常終了したか判定する。演算処理が正常終了した場合、処理はステップE6に進む。演算処理が異常終了した場合、処理はステップE7に進む。
ステップE6において、ツール実行部210は、演算処理の式が計算式であるか判定する。演算処理の式が計算式である場合、処理はステップE7に進む。演算処理の式が条件式である場合、処理はステップE8に進む。
ステップE7において、ツール実行部210は、加工数Pに1を加える。ステップE7の後、処理はステップE10に進む。
ステップE8において、ツール実行部210は、判別数Dに1を加える。
ステップE9において、ツール実行部210は、条件式を満たしたか判定する。条件式を満たした場合、処理はステップE7に進む。条件式を満たさない場合、処理はステップE10に進む。
ステップE10において、ツール実行部210は、全ての演算処理が終了したか判定する。全ての演算処理が終了した場合、処理はステップE11に進む。全ての演算処理が終了していない場合、処理はステップE4に進む。
ステップE11において、ツール実行部210は、全ての行が終了したか判定する。全ての行が終了した場合、処理は終了する。全ての行が終了していない場合、処理はステップE3に進む。
「Filter」は、条件を満たしている行(レコード)のみを残し、条件を満たしていない行を取り除く部品である。
実施の形態1では、各行に対して演算処理を行う毎に判別数Dと加工数Pとのそれぞれのカウントが行われる。演算処理の数は一つである。加工数のカウントはフィルターの条件を満たしているときに行われる。
図7に基づいて、実施の形態1における「Filter」の手順を説明する。
ステップF1において、ツール実行部210はパラメータを取得する。具体的なパラメータは、部品名と演算処理の処理名である。
ステップF2において、ツール実行部210は、判別数Dと加工数Pとのそれぞれをゼロに初期化する。
ステップF3において、ツール実行部210は、次の行(レコード)を選択する。
ステップF4において、ツール実行部210は、選択した行に対して演算処理を実行する。
ステップF5において、ツール実行部210は、演算処理が正常終了したか判定する。演算処理が正常終了した場合、処理はステップF6に進む。演算処理が異常終了した場合、処理はステップF9に進む。
ステップF6において、ツール実行部210は、判別数Dに1を加える。
ステップF7において、ツール実行部210は、条件を満たしたか判定する。条件を満たした場合、処理はステップF8に進む。条件を満たさない場合、処理はステップF9に進む。
ステップF8において、ツール実行部210は、加工数Pに1を加える。
ステップF9において、ツール実行部210は、全ての行が終了したか判定する。全ての行が終了した場合、処理は終了する。全ての行が終了していない場合、処理はステップF3に進む。
「Router」は、条件に合わせて各行(レコード)を次に実行する部品に振り分ける部品である。
実施の形態1では、演算処理毎に判別数Dと加工数Pとのそれぞれのカウントが行われる。演算処理の数Nは、利用者によって設定された分岐の数である。分岐ごとに判別数Dと加工数Pがカウントされる。
図8に基づいて、実施の形態1における「Router」の手順を説明する。
ステップR1において、ツール実行部210はパラメータを取得する。具体的なパラメータは、部品名と各演算処理の処理名である。
ステップR2において、ツール実行部210は、演算処理別の判別数Dと演算処理別の加工数Pとのそれぞれをゼロに初期化する。
ステップR3において、ツール実行部210は、次の行(レコード)を選択する。
ステップR4において、ツール実行部210は、選択した行に対して次の演算処理を実行する。
ステップR5において、ツール実行部210は、演算処理が正常終了したか判定する。演算処理が正常終了した場合、処理はステップR6に進む。演算処理が異常終了した場合、処理はステップR9に進む。
ステップR6において、ツール実行部210は、判別数Dに1を加える。
ステップR7において、ツール実行部210は、条件を満たしたか判定する。条件を満たした場合、処理はステップR8に進む。条件を満たさない場合、処理はステップR9に進む。
ステップR8において、ツール実行部210は、加工数Pに1を加える。
ステップR9において、ツール実行部210は、全ての演算処理が終了したか判定する。全ての演算処理が終了した場合、処理はステップR10に進む。全ての演算処理が終了していない場合、処理はステップR4に進む。
ステップR10において、ツール実行部210は、全ての行が終了したか判定する。全ての行が終了した場合、処理は終了する。全ての行が終了していない場合、処理はステップR3に進む。
「Sorter」は、条件に合わせてデータを整列させる部品である。
実施の形態1では、「Sorter」は次のような処理を繰り返す。まず、「Sorter」は2つの行のキー項目を比較する。そして、条件を満たしていれば、「Sorter」は2つの行を交換する。2つの行の比較が判別処理に相当し、2つの行の交換が加工処理に相当する。比較処理の数は、利用者によって条件として設定された列の数によらず、一つである。
図9に基づいて、実施の形態1における「Sorter」の手順を説明する。
ステップS1において、ツール実行部210はパラメータを取得する。具体的なパラメータは、部品名と演算処理の処理名である。
ステップS2において、ツール実行部210は、判別数Dと加工数Pとのそれぞれをゼロに初期化する。
ステップS3において、ツール実行部210は、次の行(レコード)を選択する。
ステップS4において、ツール実行部210は、選択した行に対して比較処理を実行する。
ステップS5において、ツール実行部210は、比較処理が正常終了したか判定する。比較処理が正常終了した場合、処理はステップS6に進む。比較処理が異常終了した場合、処理はステップS9に進む。
ステップS6において、ツール実行部210は、判別数Dに1を加える。
ステップS7において、ツール実行部210は、条件を満たしたか判定する。条件を満たした場合、処理はステップS8に進む。条件を満たさない場合、処理はステップS9に進む。
ステップS8において、ツール実行部210は、加工数Pに1を加える。
ステップS9において、ツール実行部210は、全ての行が終了したか判定する。全ての行が終了した場合、処理は終了する。全ての行が終了していない場合、処理はステップS3に進む。
図10に基づいて、「Sorter」の処理の具体例を説明する。
第1行の列A「1」と第3行の列A「2」を比較すると条件を満たさない。そのため、第1行と第3行との交換は行われない。
第4行の列A「9」と第5行の列A「4」を比較すると条件を満たす。そのため、第4行と第5行とが交換される。
「Aggregator」は、条件に合わせて行(レコード)を集計する部品である。
実施の形態1では、「Aggregator」は、行ごとに集計キーが集計済みのキーでるかチェックする。そして、集計キーが集計済みのキーでない場合、「Aggregator」は集計処理を行い、一行ずつ条件を満たしているか確認する。一行ずつ条件を満たしているか確認する処理の回数が判別数に相当し、条件を満たしているときにカウントされる数が加工数に相当する。集計処理の数は、利用者によって条件に設定される列の数によらず、一つである。
図11および図12に基づいて、実施の形態1における「Aggregator」の手順を説明する。
ステップA1において、ツール実行部210はパラメータを取得する。具体的なパラメータは、部品名と演算処理の処理名である。
ステップA2において、ツール実行部210は、判別数Dと加工数Pとのそれぞれをゼロに初期化する。
ステップA3において、ツール実行部210は、次の行(レコード)を選択する。
ステップA4において、ツール実行部210は、選択した行に対して集計処理を実行する。
ステップA5において、ツール実行部210は、集計処理が正常終了したか判定する。集計処理が正常終了した場合、処理はステップA6に進む。集計処理が異常終了した場合、処理はステップA11に進む。
ステップA6において、ツール実行部210は、集計キーが集計済みのキーであるか判定する。集計キーが集計済みのキーである場合、処理はステップA11に進む。集計キーが集計済みのキーでない場合、処理はステップA7に進む。
ステップA7において、ツール実行部210は、次の比較対象を確認する。
ステップA8において、ツール実行部210は、判別数Dに1を加える。
ステップA9において、ツール実行部210は、集計キーと比較対象のキーが同じであるか判定する。集計キーと比較対象のキーが同じである場合、処理はステップA10に進む。集計キーと比較対象のキーが異なる場合、処理はステップA11に進む。
ステップA10において、ツール実行部210は、加工数Pに1を加える。
ステップA11において、ツール実行部210は、全ての比較対象の確認が終了したか判定する。全ての比較対象の確認が終了した場合、処理はステップA12に進む。
ステップA12において、ツール実行部210は、全ての行が終了したか判定する。全ての行が終了した場合、処理は終了する。全ての行が終了していない場合、処理はステップA3に進む。
図13および図14に基づいて、「Aggregator」の処理の具体例を説明する。
図13において、第1行に対する集計処理の際に第1行の集計キー「A」は集計済みのキーではない。図14において、第2行と第3行とのそれぞれの集計キー「A」が確認され、集計キー「A」が同じであるため条件を満たし、第1行から第3行の列Bが合計される。また、第4行と第5行とのそれぞれの集計キー「B」が確認され、集計キー「A」「B」が異なるため条件を満たさない。
図13において、第2行に対する集計処理の際に第2行の集計キー「A」は集計済みのキーである。また、第3行に対する集計処理の際に第3行の集計キー「A」は集計済みのキーである。
図13において、第4行に対する集計処理の際に第4行の集計キー「B」は集計済みのキーではない。第5行に対する集計処理の際に第5行の集計キー「B」は集計済みのキーである。
「Joiner」は、二つの入力のデータを条件に合わせて結合する部品である。
実施の形態1では、「Joiner」は、一行ずつ比較して条件を満たす場合に結合処理を行う。一行ずつ比較する処理の回数が判別数に相当し、条件を満たした回数が加工数に相当する。結合処理の数は、利用者によって条件に設定された列の数によらず、一つである。
図15に基づいて、実施の形態1における「Joiner」の手順を説明する。
ステップJ1において、ツール実行部210はパラメータを取得する。具体的なパラメータは、部品名と演算処理の処理名である。
ステップJ2において、ツール実行部210は、判別数Dと加工数Pとのそれぞれをゼロに初期化する。
ステップJ3において、ツール実行部210は、入力1(第1テーブル)における次の行(レコード)を選択する。
ステップJ4において、ツール実行部210は、入力2(第2テーブル)における次の行を選択する。
ステップJ5において、ツール実行部210は、入力1の行と入力2の行とに対する比較処理を実行する。
ステップJ6において、ツール実行部210は、比較処理が正常終了したか判定する。比較処理が正常終了した場合、処理はステップJ7に進む。比較処理が異常終了した場合、処理はステップJ10に進む。
ステップJ7において、ツール実行部210は、判別数Dに1を加える。
ステップJ8において、ツール実行部210は、結合条件を満たす判定する。結合条件を満たす場合、処理はステップJ9に進む。結合条件を満たさない場合、処理はステップJ10に進む。
ステップJ9において、ツール実行部210は、加工数Pに1を加える。
ステップJ10において、ツール実行部210は、入力2の全ての行が終了したか判定する。入力2の全ての行が終了した場合、処理はステップJ11に進む。入力2の全ての行が終了していない場合、処理はステップJ4に進む。
ステップJ11において、ツール実行部210は、入力1の全ての行が終了したか判定する。入力1の全ての行が終了した場合、処理は終了する。入力1の全ての行が終了していない場合、処理はステップJ3に進む。
図16および図17に基づいて、「Joiner」の処理の具体例を説明する。
図16において、入力1の第1行の列Aを入力2の第2行の列Aと比較すると値「A」が同じであるため結合条件を満たす。そのため、入力2の第2行は入力1の第1行と結合される。同じく、入力2の第4行は入力1の第1行と結合される。
図17において、入力1の第1行の列Aを入力2の第1行の列Aと比較すると値「A」「F」が異なるため結合条件を満たさない。そのため、入力2の第1行は入力1の第1行と結合されない。同じく、入力2の第3行と入力2の第5行とのそれぞれは入力1の第1行と結合されない。
図18に基づいて、サービス量データベース291の構成の具体例を説明する。
サービス量データベース291は、1つ以上のレコードを有する。
各レコードは、開始時間とワークフロー名と加工定義名と部品名と判別数と加工数とサービス量とを互いに対応付ける。
サービス量の欄には、判別処理に対するサービス量と加工処理に対するサービス量と部品のサービス量とが含まれる。
以下に、サービス量の活用例として、ETLツールによって残業代を算出する例を説明する。
本ETLツールを活用している会社では、みなし残業制を導入しており、以下の残業代計算ルールに従って運用していた。
残業代計算ルール(現在)
1.実残業時間がみなし残業時間(30)を超えない限り、みなし残業代(30000)を支払う。
2.実残業時間がみなし残業時間(30)を超えている場合、みなし残業代(30000)に追加して、みなし残業時間を超過した実残業時間に対して一時間ごとに一定額(1500)を支払う。
しかし、来年度からみなし残業制をやめることになり、残業代計算ルールが変更されることになった。
残業代計算ルール(今後)
1.実残業時間に対して一時間ごとに一定額(1500)を支払う。
図19に、残業時間一覧を示す。
図20に、現在の加工定義データを示す。
図21に、残業代一覧を示す。
残業時間一覧を現在の加工定義データに従って加工することによって、現在の残業代計算ルールに基づく残業代一覧が得られる。
今後の残業代計算ルールに合わせて現在の加工定義データを変更することによって、今後の残業代計算ルールに基づく残業代一覧を得ることが可能となる。
なお、使用されるETLツールは、高速処理を実現するために複数の部品を並列に実行する。
現在の加工定義データ(図20参照)に定義された各部品について説明する。
便宜上、出力の変数は入力の変数名を用いて「OUTPUT_変数名」と表記する。
図22に基づいて、「ROUTER1」を説明する。
「ROUTER1」は、実残業時間が「30」より大きい行(レコード)をExpression1に振り分け、実残業時間が「30」以下の行をExpression2に振り分ける。
「Expression1に行く分岐」と「Expression2に行く分岐」とのそれぞれの計算数は「1」である。
図23に基づいて、「Expression1」を説明する。
「Expression1」は、みなし残業時間(30)より多くの残業が行われた場合に[計算式A]によって残業代を算出する。
[計算式A]は、「{(実残業時間−30)×11500}+30000」である。
「OUTPUT_No」と「OUTPUT_氏名」とのそれぞれの計算数は「1」である。「OUTPUT_残業代」の計算数は「4」である。
図24に基づいて、「Expression2」を説明する。
「Expression2」は、みなし残業時間(30)内で残業が行われた場合にみなし残業代(30000)を残業代にする。
「OUTPUT_No」と「OUTPUT_氏名」と「OUTPUT_残業代」とのそれぞれの計算数は「1」である。
図25に基づいて、「UNION1」を説明する。
「UNION1」は、複数の入力を一つの出力にする部品であり、SQL文の「UNION ALL」に類似している。「UNION1」は、どの部品から送られてくるかは関係なく、送られてきたすべての行をそのまま次の部品へ送る。判別処理はないため判別数はない。送られてきた行と行に含まれる列との乗算が加工数になる。
「OUTPUT_No」と「OUTPUT_氏名」と「OUTPUT_残業代」とのそれぞれの計算数は「1」である。
「SOUTER1」を説明する。
ETLツールは、複数の部品を並列で実行する。そして、「Expression1」の処理速度と「Expression2」の処理速度が異なる。そのため、残業時間一覧の「No」の昇順に処理を実行しても、「UNION1」の実行後に入力順が「No」の昇順になることが保証されない。
そこで、「SOUTER1」は、最後に出力が「No」の昇順になるようにソートを実行する。
図26に基づいて、加工定義データの変更を説明する。
残業代計算ルールの変更に伴い、データ加工の定義は「加工定義1」から「加工定義2」に変更される。「加工定義1」と「加工定義2」は破線内の部分が異なる。
残業代計算ルールが2つのルールから1つのルールに変更されたため、「ROUTER1」と「UNION1」が不要になった。また、残業代の計算式が1つになったため、「Expression」の数が1つに削減された。
図27に基づいて、「Expression3」を説明する。
「Expression3」は、残業が行われた場合に[計算式B]によって残業代を算出する。
[計算式B]は、「実残業時間×1500」である。
「OUTPUT_No」と「OUTPUT_氏名」とのそれぞれの計算数は「1」である。「OUTPUT_残業代」の計算数は「2」である。
図28に、「加工定義1」が実施された場合のサービス量データベース291を示す。
「加工定義1」は、2019年3月15日以前の毎月15日に実施された。残業時間一覧の入力データは毎月1000行である。なお、実施期間において社員数が変わらなかったとする。
図29に、「加工定義1」のフロー図を示す。
「加工定義1」のフロー図は、「ROUTER1」と「Expression1」と「Expression2」と「UNION1」と「SORTER1」との実行順序を示している。また、「加工定義1」のフロー図において、各部品を表す部品図(部品名付きの長方形)にはサービス量グラフが付加されている。各サービス量グラフは、2019年3月15日以前の毎月15日のサービス量を折れ線で示している。
「加工定義1」の各部品のサービス量を確認すると、すべての部品においてサービス量があり、すべての部品が仕事を行っていることがわかる。
図30に、「加工定義2」が実施され場合のサービス量データベース291を示す。
「加工定義2」は、2019年4月15日以降の毎月15日、具体的には、2019年4月15日と2019年5月15日に実施された。残業時間一覧の入力データは毎月1000行である。なお、実施期間において社員数が変わらなかったとする。
図31に、「加工定義2」のフロー図を示す。
「加工定義2」のフロー図は、「Expression3」と「SORTER1」との実行順序を示している。また、「加工定義2」のフロー図において、各部品を表す部品図(部品名付きの長方形)にはサービス量グラフが付加されている。各サービス量グラフは、2019年4月15日と2019年5月15日とのそれぞれのサービス量を折れ線で示している。
「加工定義2」の各部品のサービス量を確認すると、「Expression3」はサービス量があり、「Expression3」は有効であることがわかる。しかし、「SORTER1」はサービス量がない。
今回の加工定義の変更の際に、「SORTER1」は残業代の計算に関係する部分ではなかったため変更されなかった。
「加工定義1」では、「Expression1」と「Expression2」とが並列で実行されて「UNION1」に対する入力順が「No」の昇順から変わってしまうため、「SORTER1」によって出力を「No」の昇順にソートした。しかし、「加工定義2」では、部品の並列処理が不要になったため、入出力の順番が「No」の昇順から崩れなくなった。そのため、「SORTER1」によるソートが不要となり、「SORTER1」のサービス量がゼロになった。
このように、加工定義が実際の処理に適していない場合に、実施の形態1によって、有効でない部品を見つけることが可能である。
***変形例の説明***
サービス量可視化システム100は、部品毎のサービス量を可視化するだけでなく、各部品の処理毎のサービス量を可視化してもよい。
***実施の形態1の効果***
実施の形態1により、データ加工のために利用された各部品がどれだけ有効な仕事をしたかを示すサービス量を可視化することができる。そのため、利用者は、各部品がどれだけ有効な仕事をしたか確認することができる。
サービス量が少ない部品は、有効に活用されることが少ないため、加工定義から削除しやすい。複雑に見える加工定義でも、各部品のサービス量を確認することで、どの部品が多く使われているか把握できる。場合によっては、不要な部品を見つけて加工定義から削除することにより、データ加工を簡略化および高速化することが可能になる。
***実施の形態の補足***
実施の形態は、好ましい形態の例示であり、本発明の技術的範囲を制限することを意図するものではない。実施の形態は、部分的に実施してもよいし、他の形態と組み合わせて実施してもよい。フローチャート等を用いて説明した手順は、適宜に変更してもよい。
サービス量可視化装置200の各要素は、ソフトウェア、ハードウェア、ファームウェアまたはこれらの組み合わせのいずれで実現されてもよい。
サービス量可視化装置200の要素である「部」は、「処理」または「工程」と読み替えてもよい。
100 サービス量可視化システム、200 サービス量可視化装置、201 プロセッサ、202 メモリ、203 補助記憶装置、204 通信装置、205 入出力インタフェース、210 ツール実行部、220 実行情報取得部、230 サービス量算出部、240 サービス量可視化部、290 記憶部、291 サービス量データベース、292 リポジトリデータベース。

Claims (5)

  1. データ加工に利用される1つ以上の部品のそれぞれのサービス量を可視化するサービス量可視化システムであって、
    前記1つ以上の部品のそれぞれによって実行された加工処理の回数である加工数と、前記1つ以上の部品のそれぞれによって実行された判別処理の回数である判別数と、を取得する実行情報取得部と、
    前記1つ以上の部品のそれぞれの加工数と前記1つ以上の部品のそれぞれの判別数とを用いて、前記1つ以上の部品のそれぞれのサービス量を算出するサービス量算出部と、
    前記1つ以上の部品のそれぞれのサービス量をディスプレイに表示するサービス量可視化部と、
    を備えるサービス量可視化システム。
  2. 前記サービス量算出部は、
    部品毎に、加工数に対する判別数の割合である判別率を算出し、
    部品毎に、判別数と一回当たりの判別処理の計算量と判別率とを用いて、判別処理に対するサービス量を算出し、
    部品毎に、加工数と一回当たりの加工処理の計算量とを用いて、加工処理に対するサービス量を算出し、
    部品毎に、判別処理に対するサービス量と加工処理に対するサービス量とを用いて、部品のサービス量を算出する
    請求項1に記載のサービス量可視化システム。
  3. 前記データ加工は、複数回実施され
    前記実行情報取得部は、前記データ加工の実施毎に、前記1つ以上の部品のそれぞれの加工数と前記1つ以上の部品のそれぞれの判別数とを取得し、
    前記サービス量算出部は、前記データ加工の実施毎に、前記1つ以上の部品のそれぞれのサービス量を算出し、
    前記サービス量可視化部は、部品毎に、前記データ加工の実施別のサービス量を示すサービス量グラフを表示する
    請求項1または請求項2に記載のサービス量可視化システム。
  4. 前記サービス量可視化部は、
    前記1つ以上の部品の実行手順が定義された加工定義データに基づいて、前記1つ以上の部品を表す1つ以上の部品図を含み前記1つ以上の部品の実行手順を示すフロー図を生成し、
    生成したフロー図に含まれる各部品図に各部品のサービス量グラフを付加し、
    各部品のサービス量グラフが付加されたフロー図を表示する
    請求項3に記載のサービス量可視化システム。
  5. データ加工に利用される1つ以上の部品のそれぞれのサービス量を可視化するためのサービス量可視化プログラムであって、
    前記1つ以上の部品のそれぞれによって実行された加工処理の回数である加工数と、前記1つ以上の部品のそれぞれによって実行された判別処理の回数である判別数と、を取得する実行情報取得部と、
    前記1つ以上の部品のそれぞれの加工数と前記1つ以上の部品のそれぞれの判別数とを用いて、前記1つ以上の部品のそれぞれのサービス量を算出するサービス量算出部と、
    前記1つ以上の部品のそれぞれのサービス量をディスプレイに表示するサービス量可視化部として、
    コンピュータを機能させるためのサービス量可視化プログラム。
JP2019055158A 2019-03-22 2019-03-22 サービス量可視化システムおよびサービス量可視化プログラム Active JP7256662B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019055158A JP7256662B2 (ja) 2019-03-22 2019-03-22 サービス量可視化システムおよびサービス量可視化プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019055158A JP7256662B2 (ja) 2019-03-22 2019-03-22 サービス量可視化システムおよびサービス量可視化プログラム

Publications (2)

Publication Number Publication Date
JP2020155025A true JP2020155025A (ja) 2020-09-24
JP7256662B2 JP7256662B2 (ja) 2023-04-12

Family

ID=72559409

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019055158A Active JP7256662B2 (ja) 2019-03-22 2019-03-22 サービス量可視化システムおよびサービス量可視化プログラム

Country Status (1)

Country Link
JP (1) JP7256662B2 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004102868A (ja) * 2002-09-12 2004-04-02 Fuji Xerox Co Ltd ユーザビリティ評価支援装置
JP2008165597A (ja) * 2006-12-28 2008-07-17 Hitachi Consulting Co Ltd 業務パラメータ決定システム
JP2009070193A (ja) * 2007-09-13 2009-04-02 Chihiro Suematsu 企業活動の有効性評価装置、企業活動の有効性評価方法、企業活動の有効性評価プログラムおよびそれを記録したコンピュータ読み取り可能な記録媒体
JP2010097251A (ja) * 2008-10-14 2010-04-30 Nec Corp エラートレース簡略化システム、エラートレース簡略化方法、及びプログラム
JP5477099B2 (ja) * 2010-03-24 2014-04-23 日本電気株式会社 データ連携定義作成装置
JP2015215672A (ja) * 2014-05-08 2015-12-03 株式会社野村総合研究所 分析装置およびコンピュータプログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004102868A (ja) * 2002-09-12 2004-04-02 Fuji Xerox Co Ltd ユーザビリティ評価支援装置
JP2008165597A (ja) * 2006-12-28 2008-07-17 Hitachi Consulting Co Ltd 業務パラメータ決定システム
JP2009070193A (ja) * 2007-09-13 2009-04-02 Chihiro Suematsu 企業活動の有効性評価装置、企業活動の有効性評価方法、企業活動の有効性評価プログラムおよびそれを記録したコンピュータ読み取り可能な記録媒体
JP2010097251A (ja) * 2008-10-14 2010-04-30 Nec Corp エラートレース簡略化システム、エラートレース簡略化方法、及びプログラム
JP5477099B2 (ja) * 2010-03-24 2014-04-23 日本電気株式会社 データ連携定義作成装置
JP2015215672A (ja) * 2014-05-08 2015-12-03 株式会社野村総合研究所 分析装置およびコンピュータプログラム

Also Published As

Publication number Publication date
JP7256662B2 (ja) 2023-04-12

Similar Documents

Publication Publication Date Title
CN107798592B (zh) 计算佣金的方法及设备
Kyprianou et al. Perpetual options and Canadization through fluctuation theory
CN110688433B (zh) 一种基于路径的特征生成方法及装置
CN109615492B (zh) 一种记账凭证生成方法和系统
Falk et al. Economics of NFTs: The value of creator royalties
JP7256662B2 (ja) サービス量可視化システムおよびサービス量可視化プログラム
CN106775962B (zh) 一种规则执行方法及装置
CN111161063A (zh) 基于图计算的资金账号识别方法及计算机可读存储介质
CN106600402B (zh) 一种基于交易所公布案例改进的异常交易风险监控系统
CN114417089A (zh) 查询方法、装置、终端设备及计算机可读存储介质
JP2019135602A (ja) 情報管理システムおよび情報管理方法
JP7433096B2 (ja) 業務可視化装置、業務可視化方法、及びプログラム
JP2008129796A (ja) 電話番号に基づいて電話契約者の信用度を推定するコンピュータシステム
CN114387085A (zh) 流水数据处理方法、装置、计算机设备和存储介质
CN113902433A (zh) 一种用于企业的客户账单逾期分析方法及系统
CN113760994A (zh) 资金回流借款人风险的预警方法、装置、设备和存储介质
CN111881146A (zh) 用于收取费用的方法、计算设备和介质
JP2006195570A (ja) 会計伝票の按分処理システム、同按分処理方法、同按分プログラム
CN110956552A (zh) 保险问题处理方法、装置、设备及存储介质
Quittard-Pinon et al. How to price efficiently European options in some geometric levy processes models?
CN113592529B (zh) 债券产品的潜在客户推荐方法和装置
JP2019145060A (ja) 仮想通貨管理システム
Fulop Exploring Determinants of Transfer Pricing Practices Among Romanian Publicly Traded Companies
Johnson et al. Current replacement costs: a qualified opinion
CN115063217B (zh) 预算管理方法、装置、设备及介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220111

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221213

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230110

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230328

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230331

R150 Certificate of patent or registration of utility model

Ref document number: 7256662

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150