JP2016091317A - データ管理システム及びデータ管理方法 - Google Patents

データ管理システム及びデータ管理方法 Download PDF

Info

Publication number
JP2016091317A
JP2016091317A JP2014225368A JP2014225368A JP2016091317A JP 2016091317 A JP2016091317 A JP 2016091317A JP 2014225368 A JP2014225368 A JP 2014225368A JP 2014225368 A JP2014225368 A JP 2014225368A JP 2016091317 A JP2016091317 A JP 2016091317A
Authority
JP
Japan
Prior art keywords
data
file
unit
date
imported
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
JP2014225368A
Other languages
English (en)
Inventor
弘孝 船山
Hirotaka Funayama
弘孝 船山
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2014225368A priority Critical patent/JP2016091317A/ja
Publication of JP2016091317A publication Critical patent/JP2016091317A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】ETL処理をしてデータを提供するデータ管理システムからデータを取得する際に、データの取得単位に関わらず効率的なデータ取得を可能とする。【解決手段】インポートされたファイルと、インポートされて修正されたファイルとを第1の管理手段で管理し、インポートされたファイル及び修正されたファイルについての第1の管理手段におけるファイルパスをインポートの日時を示すフォルダ階層に配置すると共に、修正されたファイルのファイルパスを修正後のインポートの日時を示すフォルダ階層にも配置したリストファイルを第2の管理手段で管理し、外部システムから取得要求されたファイルをリストファイルを用いて検索し、検索結果に対応するファイルパスを用いて第1の管理手段から前記ファイルを取得し、取得したファイルを外部システムに提供することによって課題を解決する。【選択図】図6

Description

本発明は、データ管理システム及びデータ管理方法に関する。
近年、PCの処理能力の向上やサーバー仮想化技術の発展により、アプリケーションのログデータや画像形成装置に取り付けられたセンサーデータのような、いわゆるビッグデータを積極的に分析・活用しようとする動きが活発化している。
ビッグデータ分析に関して、大規模データを安価に保持するデータウェアハウスから、分析者又はユースケース(UC)システムが必要なデータのみを取得して分析する構成が考えられる。例えば、画像形成装置が、自身のセンサーデータを定期的(1日1回等)にデバイス管理装置に対して送信する。そして、データウェアハウスが、それらのセンサーデータをデバイス管理装置から取得してその日のデータとして公開する。
特許文献1では、Webページを更新するタイミングで、ファイル名に更新時点の日付を付加した検索用ファイルとしてWebページを保存し、クライアントからの要求に応じて指定された日時のWebページを検索してクライアントに返却する技術が開示されている。
特開2000−347925号公報
ここで、ビッグデータ分析に利用するデータ(例えば上述のセンサーデータ)を、毎日データソース(例えば上述のデバイス管理装置)からインポートし、UCシステムにデータを公開するデータ蓄積システム(例えば上述のデータウェアハウス)を想定する。データ蓄積システムが公開するデータは、上述のセンサーデータ以外にも種々のデータが考えられる。例えば人手を介して作成されるデータの場合は、入力ミスによるエラーを含むデータである可能性があるため、これらのエラーデータをフィルタ処理し、フィルタ処理により抽出したエラーデータを修正するフローが必要である。また、システムが自動作成したデータであっても、システムのバグ等によりエラーを含む可能性もある。即ち、データ蓄積システムは、正しいデータのみを公開するために、インポートしたデータにエラーが含まれているかどうかを判定してフィルタ処理を行う必要がある。データ蓄積システムは、フィルタ処理により抽出したエラーデータを一時領域に退避させ、そのエラーデータを正しく修正した上で、再度フィルタ処理を行う。このようにして、データ蓄積システムは、エラーを含まないデータについてはインポートした日付を示す日付フォルダに格納し、エラーデータについては修正してインポートが完了した日付を示す日付フォルダに格納して公開可能とする。この処理は、ETL(Extract/Transform/Load)処理と呼ばれる。
ここで、各UCシステムがデータ蓄積システムからデータを取得する方法として、「(1)定期的にデータを取得する方法(例えば1日間隔)」と、「(2)インポート日時が特定期間(例えば2014年7月)のデータを一括取得する方法」との2種類が考えられる。言い換えれば、(1)の取得方法は「インポート完了日付単位でのデータの取得方法」であり、(2)の取得方法は「インポート日付単位でのデータの取得方法」である。例えば(2)の取得方法で2014年7月のデータを取得する場合は、2014年7月以降のフォルダに2014年7月にインポートされて修正されたデータが含まれる可能性があるため、2014年7月以降の日付フォルダを全てチェックする必要がある。このように、従来の技術では、特定期間のデータを取得するために特定期間以降の日付フォルダを全てチェックする必要があるため、UCシステム側の計算コストが高くなるという課題がある。また、特許文献1で開示されている技術を適用したとしても、データ蓄積システム側に膨大な数のデータから検索する仕組みを組み込む必要があるため、データ蓄積システム側の計算コストが高くなるという課題がある。即ち、従来の技術では、データ蓄積システムからデータを取得する際の取得単位によっては効率的なデータ取得が困難となる場合がある。
本発明は、ETL処理をしてデータを提供するデータ管理システムからデータを取得する際に、データの取得単位に関わらず効率的なデータ取得を可能とすることを目的とする。
そこで、本発明のデータ管理システムは、インポートされたファイルと、インポートされて修正されたファイルとを管理する第1の管理手段と、前記インポートされたファイル及び前記修正されたファイルについての前記第1の管理手段におけるファイルパスをインポートの日時を示すフォルダ階層に配置すると共に、前記修正されたファイルの前記ファイルパスを修正後のインポートの日時を示すフォルダ階層にも配置したリストファイルを管理する第2の管理手段と、外部システムから受け付けたファイルの取得要求に対して、前記取得要求に対応するファイルを前記リストファイルを用いて検索する検索手段と、前記検索手段による検索の結果に対応するファイルパスを用いて、前記第1の管理手段で管理されているファイルを取得する取得手段と、前記取得手段により取得されたファイルを、前記取得要求の応答として前記外部システムに提供する提供手段と、を有することを特徴とする。
本発明によれば、ETL処理をしてデータを提供するデータ管理システムからデータを取得する際に、データの取得単位に関わらず効率的なデータ取得を可能とすることができる。
従来のデータ蓄積システムにおけるフォルダ構成の一例を示す図である。 システム構成の一例を示す図である。 ハードウェア構成の一例を示す図である。 実施形態1におけるソフトウェア構成の一例を示す図である。 実施形態1におけるフォルダ構成等の一例を示す図である。 実施形態1における処理の一例を示すフローチャートである。 実施形態2におけるソフトウェア構成の一例を示す図である。 実施形態2におけるフォルダ構成等の一例を示す図である。 実施形態2における処理の一例を示すフローチャートである。
以下、本発明を実施するための形態について図面を用いて説明する。
<実施形態1>
まず、本実施形態の詳細について説明する前に、上述した従来のデータ蓄積システムが公開するデータと、そのデータを格納するフォルダ構成とについて説明する。図1は、従来のデータ蓄積システムにおけるフォルダ構成等の一例を示す図である。従来のデータ蓄積システムは、ルートフォルダ301とルートフォルダ301以下の日付フォルダ302〜306とを有し、日付フォルダ302〜306以下に、その日にインポートが完了(成功)したデータを格納する。
従来のデータ蓄積システムは、インポートしたデータにエラーが含まれていない場合は、そのままデータを公開する。このデータに対応するのが、ファイル321〜326、及びファイル329〜332であり、以降の説明ではOKデータと呼ぶことにする。一方、インポートしたデータにエラーが含まれている場合は、ルートフォルダ301以下に格納せず(即ちデータを公開せず)、一時領域に退避させておき、退避させたデータを正しく修正した上で、再度フィルタ処理を行う。修正後にフィルタ処理を通過したデータを、以降の説明ではFIXEDデータと呼ぶことにする。このデータに対応するのが、ファイル327、328、333である。また、一時領域に退避させたエラーを含むデータを、以降の説明ではNGデータと呼ぶことにする。
例えばファイル327は、2014年7月29日にインポートしようとしたデータにエラーが含まれていたため、一時領域に退避させ、2014年7月31日の処理時点でデータのエラーが訂正され、公開されたデータである。以降の説明では、データ蓄積システムが、データソースからデータをインポートした日付を「インポート日付」と呼び、実際にインポートが完了し、各UCシステムに公開した日付を「インポート完了日付」と呼ぶことにする。例えばファイル327の場合は、インポート日付が2014年7月29日であり、インポート完了日付が2014年7月31日である。上述したように、エラーを含まないデータについてはインポートした日付を示す日付フォルダに格納し、エラーデータについては修正してインポートが完了した日付を示す日付フォルダに格納して公開可能とする処理は、ETL処理と呼ばれる。なお、ETLは、Extract/Transform/Loadの略称である。
上述したように、各UCシステムがデータ蓄積システムからデータを取得する方法としては以下の2つの方法が考えられる。一つ目の方法が、「(1)定期的にデータを取得する方法(例えば1日間隔)」、換言するならば、「インポート完了日付単位(インポート完了日時単位)でのデータの取得方法」である。そして二つ目の方法が、「(2)インポート日時が特定期間(例えば2014年7月のデータ)のデータを一括取得する方法」、換言するならば、「インポート日付単位(インポート日時単位)でのデータの取得方法」である。(1)の取得方法の場合、例えば1日間隔で日付フォルダ302〜306の各フォルダ内のデータを順に取得すればよい。例えば2014年7月29日にデータ取得する場合は、日付フォルダ302内のデータを取得すればよい。一方、(2)の取得方法で2014年7月のデータを取得したい場合は、2014年7月以降のフォルダに2014年7月のFIXEDデータが含まれる可能性があるため、2014年7月以降の日付フォルダを全てチェックする必要がある。例えば、ファイル333のように、2014年7月29日のデータが2020年1月1日にFIXEDデータとして公開されるような場合が該当する。
そのため、このような従来の技術では、データ蓄積システムからデータを取得する際の取得単位によっては、効率的にデータを取得することが困難になる場合があるという課題が生じる。
以下、上述の内容を踏まえて本実施形態の詳細について説明する。
図2は、本実施形態におけるビッグデータ活用システムのシステム構成の一例を示す図である。図2において、クライアント端末110〜113、データ分析装置115、116、デバイス管理装置131、データ蓄積装置132、画像形成装置121〜123、出動履歴管理装置133は、ネットワーク101〜109を介して通信可能に接続されている。ネットワーク101〜109は、例えば、インターネット等のLAN、WAN、電話回線、専用デジタル回線、ATMやフレームリレー回線、ケーブルテレビ回線、データ放送用無線回線等の何れか、又はこれらの組み合わせにより実現される、いわゆる通信ネットワークである。ネットワーク101〜109は、データの送受信が可能であればどのような形態でもよい。本実施形態におけるネットワーク106、107は、インターネットである。また、本実施形態におけるネットワーク101〜105、108、109は、企業内ネットワークやサービスプロバイダーのネットワークである。
デバイス管理装置131、データ蓄積装置132、データ分析装置115、116、出動履歴管理装置133は、サーバーコンピュータ(以下、単にサーバーという)の一例である。デバイス管理装置131は、画像形成装置121〜123で発生するエラー履歴データ、各種カウンタデータ、各種センサーデータ等を収集し、収集した各種データをデータ蓄積装置132に対して提供する。出動履歴管理装置133は、サービスマンによる画像形成装置121〜123に対する部品交換等の各種メンテナンスデータを管理し、各種メンテナンスデータをデータ蓄積装置132に提供する。データ蓄積装置132は、デバイス管理装置131、出動履歴管理装置133から取得したデータ及び画像形成装置121〜123から受信したデータを蓄積する。なお、データ蓄積装置132は、データを管理するデータ管理システムの一例である。データ分析装置115、116は、データ蓄積装置132から各ユースケースに必要なデータのみを取得し、必要なETL処理、クレンジング処理を行うことで、データを分析しやすい形に整形して保存する。上述したサーバーのそれぞれの機能は、単体のサーバー又は単体の仮想サーバーによって実現されてもよいし、複数のサーバー又は複数の仮想サーバーによって実現されてもよい。また、複数の仮想サーバーが単体のサーバー上で実行される構成としてもよい。
クライアント端末110〜113は、例えばデスクトップパソコン、ノートパソコン、モバイルパソコン、PDA(パーソナルデータアシスタント)等から成るが、プログラムの実行環境が内蔵された携帯電話、タブレット端末であってもよい。クライアント端末110〜113は、Webブラウザやデータ分析ツール等のプログラムを実行する環境を内蔵している。サービスマンは、クライアント端末112、113にインストールされたWebブラウザを用いて、出動履歴管理装置133にアクセスし、各種メンテナンスデータを手動で入力する。また、ビッグデータ活用を行うユーザは、クライアント端末110、111にインストールされたデータ分析ツールを用いて、データ分析装置115、116に保存されているデータを取得し、分析する。
図3は、本実施形態に係るクライアント端末110〜113、デバイス管理装置131、データ蓄積装置132、データ分析装置115、116、出動履歴管理装置133のハードウェア構成の一例を示す図である。図3において、Central Processing Unit(CPU)202は、装置全体の制御を行う。CPU202は、Hard Disc Drive(HDD)205等に格納されているアプリケーションプログラム、OSプログラム等をRandam Access Memory(RAM)203に展開して実行する。Read Only Memory(ROM)204は、基本I/Oプログラム等の各種データを記憶する。RAM203は、CPU202の主メモリ、ワークエリア等として機能する。HDD205は、大容量メモリとして機能し、Webブラウザ等のアプリケーションプログラム、サービスサーバー群のプログラム、OS、関連プログラム等を格納している。ディスプレイ206は、キーボード207から入力されたコマンド等を含む各種の情報、画面を表示する。インターフェース208は、外部装置I/Fであり、プリンタ、USB機器、周辺機器と自装置とを接続する。キーボード207は、入力操作を介してユーザからの指示を受け付ける。システムバス201は、装置内におけるデータの流れを司る。Network Interface Card(NIC)209は、ネットワーク101〜109を介して外部装置とのデータのやり取りを行う。
上述のコンピュータの構成は一例であり、図3の構成例に限定されるものではない。例えば、データやプログラムの格納先は、その特徴に応じてROM204、RAM203、HDD205等で変更することも可能である。また、CPU202がHDD205に記憶されているプログラムに基づき処理を実行することによって、図4等に示されるような各装置のソフトウェア構成及び後述するフローチャートの各ステップの処理が実現される。
図4(A)は、本実施形態に係るクライアント端末110、111のソフトウェア構成の一例を示す図である。データ分析を行うユーザは、図4(A)におけるデータ分析ツール211を利用することで、データ分析装置115、116へのデータ取得リクエスト等の送信を行い、レスポンスの表示等を行うことでデータを分析する。
図4(B)は、本実施形態に係るクライアント端末112、113のソフトウェア構成の一例を示す図である。サービスマンは、図4(B)におけるWebブラウザ212を利用することで、出動履歴管理装置133に対してデータ更新リクエスト等の送信を行い、出動履歴管理装置133で管理されるデータを更新する。
図4(C)は、本実施形態に係るデータ蓄積装置132のソフトウェア構成の一例を示す図である。データ蓄積装置132は、データ収集部401、リスト取得部402、データ取得部403、バックグラウンド部404、記憶領域部405を有する。データ収集部401、リスト取得部402、データ取得部403がバックグラウンド部404や記憶領域部405へアクセスすることで、データ蓄積装置132が動作する。
データ収集部401は、データソースからデータを収集する機能を有する。ここで、データソースとは、ビッグデータ分析を行うユーザが利用したいデータを保持しているシステム、即ち、デバイス管理装置131及び出動履歴管理装置133である。例えば、データ収集部401は、定期的にデバイス管理装置131にて保持されている、画像形成装置121〜123のエラー履歴データ等を取得する。表1は、デバイス管理装置131にて保持されている、画像形成装置121〜123で発生したエラー履歴データのテーブルの一例である。
表1の各カラムの意味について説明する。「機種」カラムは、画像形成装置121〜123の機種名を表す。また、「機種番号」カラムは、画像形成装置121〜123の機種番号を表し、各画像形成装置に対してユニークな値である。「エラーコード」カラムは、発生したエラーの各現象に対応するコードを表し、エラーの各現象に対してユニークな値である。「エラー発生日時」カラムは、「機種番号」で特定される画像形成装置が「エラーコード」で表されるエラーを発生させた日時を表す。
デバイス管理装置131は、表1のエラー履歴データ等をcsv(comma separated value)形式のファイルに変換して保持する。そして、データ収集部401は、変換されたcsvファイルをデバイス管理装置131から取得する。データ収集部401がデバイス管理装置131から取得するデータとして、他には画像形成装置121〜123のカウンタデータ、センサーデータ等がある。データ収集部401は、これらのデータについてもエラー履歴データと同様に、デバイス管理装置131で保持されているcsv形式のファイルを取得する。
同様に、データ収集部401は、定期的に出動履歴管理装置133からサービスマンのメンテナンスデータ等を取得する。表2は、出動履歴管理装置133にて保持されている、画像形成装置121〜123に対してサービスマンがメンテナンスを行ったメンテナンスデータに関するメンテナンスデータ管理テーブルの一例である。
表2の各カラムの意味について説明する。「機種」カラム、「機種番号」カラムは表1と同様である。サービスマンは、「機種番号」で特定される画像形成装置に対してメンテナンス作業を行い、クライアント端末112、113内のWebブラウザ212を利用して出動履歴管理装置133にアクセスすることで、表2の情報を入力する。「作業コード」カラムは、メンテナンス作業対象の画像形成装置に対してサービスマンが行ったメンテナンスの種類を識別するコードを表し、「作業概要」カラムがその概要を表している。「作業概要」カラムには、サービスマンが行ったメンテナンス作業を自由に入力することができる。「作業開始日時」カラム、「作業終了日時」カラムは、それぞれメンテナンス作業対象の画像形成装置に対してメンテナンスを開始した日時、終了した日時を表している。「カウンタA」カラムは、サービスマンがメンテナンスを開始した時点でのメンテナンス作業対象の画像形成装置が保持しているカウンタAの値を表している。サービスマンはカウンタAの値を画像形成装置から取得して入力する。出動履歴管理装置133は、表2の出動履データをcsv形式のファイルに変換して保持する。そして、データ収集部401は、変換されたcsvファイルを出動履歴管理装置133から取得する。
データ収集部401は、例えば1日1回、デバイス管理装置131及び出動履歴管理装置133の各データソースからデータを取得する。
次に、データ蓄積装置132が、データ収集部401により各データソースから取得したデータを公開する手順、即ち、データ分析装置115〜116がデータ蓄積装置132からビッグデータ分析に利用するデータを取得できる状態にする手順について説明する。以降の説明では、データ収集部401がデータソースから取得したcsvファイルを「オリジナルデータ」と呼ぶことにする。
データ収集部401は、データソースからオリジナルデータを取得後、データ保存処理部411に対してデータ保存要求を行う。データ収集部401は、データ保存処理部411に対するデータ保存要求と共に、データ保存処理部411に対してオリジナルデータを送信する。データ保存処理部411は、データ収集部401からのデータ保存要求を受け付けると、フィルタ処理部414に対してフィルタ処理要求を行う。データ保存処理部411は、フィルタ処理部414に対するフィルタ処理要求と共に、フィルタ処理部414に対してオリジナルデータを送信する。フィルタ処理部414は、データ保存処理部411からフィルタ処理要求を受け付けると、オリジナルデータに対してフィルタ処理を行う。フィルタ処理とは、例えばオリジナルデータのcsvファイルのデータ構成が数値型のみ許可するカラムを含むデーブルである場合に、そのカラムに文字列データが入っている行がある場合は、その行を除外する処理である。オリジナルデータのうち、フィルタ処理で除外されなかった行は上述のOKデータに対応し、除外された行は上述のNGデータに対応する。OKデータ及びNGデータは共にcsv形式のファイルである。フィルタ処理部414は、フィルタ処理完了後、OKデータとNGデータとをそれぞれデータ保存処理部411に対して返却する。
次に、データ保存処理部411は、フィルタ処理部414から返却されたOKデータを公開用ファイル格納部422に保存し、NGデータを一時退避ファイル格納部423に保存する。公開用ファイル格納部422のフォルダ構成、OKデータのファイル名については後述する。次に、データ保存処理部411は、リストファイル作成部416に対して、OKデータの公開用ファイル格納部422におけるパス一覧と共に、OKデータのリストファイル作成要求を行う。リストファイル作成部416は、公開用ファイル格納部422のパス一覧を受け付け、パス一覧が記載されたファイル(リストファイル)を作成する。リストファイル作成部416によるリストファイル作成に係る処理の流れについては後述する。データ保存処理部411は、リストファイル作成部416から返却されたリストファイルをリストファイル格納部421に保存する。リストファイル格納部421のファイル・フォルダ構成については後述する。
次に、前日までに一時退避ファイル格納部423に退避させたNGデータを公開する手順について説明する。
NGデータ収集部415は、定期的に一時退避ファイル格納部423に保存された前日までのNGデータを取得し、データ保存処理部411に対してデータ保存要求を行う。NGデータ収集部415は、データ保存処理部411に対するデータ保存要求と共に、データ保存処理部411に対してNGデータを送信する。データ保存処理部411は、NGデータ収集部415からのデータ保存要求を受け付けると、フィルタ処理部414に対してフィルタ処理要求を行う。データ保存処理部411は、フィルタ処理部414に対するフィルタ処理要求と共に、フィルタ処理部414に対してNGデータを送信する。フィルタ処理部414は、データ保存処理部411からフィルタ処理要求を受け付けると、フィルタ処理を行う。フィルタ処理で除外されなかった行は上述のFIXEDデータに対応し、除外された行はNGデータに対応する。FIXEDデータ及びNGデータは共にcsv形式のファイルである。フィルタ処理部414は、フィルタ処理完了後、FIXEDデータとNGデータとをそれぞれデータ保存処理部411に対して返却する。
次に、データ保存処理部411は、フィルタ処理部414から返却されたFIXEDデータを公開用ファイル格納部422に保存し、NGデータを一時退避ファイル格納部423に保存する。公開用ファイル格納部422のフォルダ構成、FIXEDデータのファイル名については後述する。次に、データ保存処理部411は、リストファイル作成部416に対して、FIXEDデータの公開用ファイル格納部422におけるパス一覧と共に、FIXEDデータのリストファイル作成要求を行う。データ保存処理部411は、リストファイル作成部416から返却されたリストファイルをリストファイル格納部421に保存する。
次に、公開用ファイル格納部422及びリストファイル格納部421のファイル・フォルダ構成について、図5を用いて説明する。
図5(A)は、公開用ファイル格納部422のファイル・フォルダ構成の一例を示す図である。各日付のOKデータであるファイル551〜556、559〜562及びFIXEDデータであるファイル557〜558、563の各ファイルがフォルダ541以下にフラットに格納されている。本実施形態では各ファイルをフォルダ541以下にフラットに格納する階層構造のない構成としたが、フォルダ階層の構造は任意である。また、フォルダ541に相当するフォルダは、各データソースから取得したデータ種別毎に存在する。OKデータであるファイル551〜556、559〜562の拡張子を除くファイル名は、「20140729_01」のように「日付_ファイル番号」とし、ファイル番号はインポート日付毎に連番とする。例えば、ファイル551、552は、共にインポート日付が2014年7月29日であったことを表す。また、FIXEDデータであるファイル557〜558、563の拡張子を除くファイル名は、「20140729_01_01」のように「日付_ファイル番号_fixed番号」とする。OKデータとFIXEDデータとで「日付_ファイル番号」部分が同じとなるデータは1つのオリジナルデータ(1つのcsvファイル)であったことを表す。例えば、OKデータであるファイル551、FIXEDデータであるファイル557、563は、1つのオリジナルデータであったことを表す。また、fixed番号は、1つのオリジナルデータから派生したFIXEDデータに対して連番とする。
図5(B)は、リストファイル格納部421のファイル・フォルダ構成の一例を示す図である。リストファイル格納部421には、フォルダ501以下に日付毎のOKフォルダ502〜506及びFIXEDフォルダ511〜512の各フォルダがある。OKフォルダとは、フォルダ名が「20140729_OK」のように「日付_OK」のフォルダである。FIXEDフォルダとは、フォルダ名が「20140729_FIXED」のように「日付_FIXED」のフォルダである。以降の説明では、OKフォルダ502〜506以下に保存されるリストファイルをOKリスト、FIXEDフォルダ511〜512以下に保存されるリストファイルをFIXEDリストと呼ぶことにする。また、OKリスト及びFIXEDリストの2つをまとめてリストファイルと呼ぶことにする。リストファイルには、フォルダ541以下のOKデータ及びFIXEDデータについてパスが記載され、フォルダ501に相当するフォルダはフォルダ541同様、各データソースから取得したデータ種別毎に存在する。
次に、図6を用いて、リストファイル作成部416がリストファイルを作成するフロー及びリストファイルに記載するパスについて説明する。図6は、本実施形態における処理の一例を示すフローチャートである。リストファイル作成部416は、データ保存処理部411からOKデータ又はFIXEDデータのパス一覧と共にリストファイル作成要求を受け付けると、パス一覧の各パスに対して、ステップS601〜ステップS606の処理を繰り返す。
リストファイル作成部416は、ステップS602にて、パスで表されるデータがFIXEDデータか否かを判定する。判定にはパスで表されるデータの拡張子を除くファイル名を利用し、リストファイル作成部416は、ファイル名が「日付_ファイル番号_FIXED番号」であるものをFIXEDデータと判定する。ステップS602でFIXEDデータでなかった(OKデータであった)と判定した場合、ステップS603にて、リストファイル作成部416は、インポート完了日付のOKリストに前記パスを追加する。一方、ステップS602でFIXEDデータであったと判定した場合、ステップS604にて、リストファイル作成部416は、インポート完了日付のFIXEDリストに前記パスを追加する。更に、ステップS605にて、リストファイル作成部416は、インポート日付のOKリストに前記パスを追加する。このように、リストファイル作成部416は、対象とするファイルのファイルパスを前記ファイルに応じたフォルダ階層に配置したリストファイルを作成する。
例えば、2014年7月31日において、データ収集部401がデータソースからデータを取得したタイミングでは、データ保存処理部411がファイル555〜556をOKデータとして公開用ファイル格納部422に保存する。続いて、データ保存処理部411は、リストファイル作成部416に対して、ファイル555〜556の公開用ファイル格納部422におけるパスと共にリストファイル作成要求を行う。リストファイル作成部416は、ステップS603にてOKデータであるファイル555〜556へのファイルパスが記載されたOKリスト526を作成する。
また、2014年7月31日において、NGデータ収集部415が一時退避ファイル格納部423からデータを取得したタイミングでは、データ保存処理部411がファイル557〜558をFIXEDデータとして公開用ファイル格納部422に保存する。続いて、データ保存処理部411は、リストファイル作成部416に対して、FIXEDデータであるファイル557〜558の公開用ファイル格納部422におけるパスと共にリストファイル作成要求を行う。リストファイル作成部416は、ステップS604にてファイル557〜558へのファイルパスが記載されたFIXEDリストを作成する。加えて、リストファイル作成部416は、ステップS605にてFIXEDデータであるファイル557へのファイルパスが記載されたOKリスト522を作成する。更に、リストファイル作成部416は、ステップS606にてFIXEDデータであるファイル558へのファイルパスが記載されたOKリスト525を作成する。
リスト取得部402は、データ分析装置115、116からリストファイル取得要求を受け付ける。なお、データ分析装置115、116は外部システムの一例である。リストファイル取得要求には、データ分析装置115、116がデータを取得したい日付(以降、取得対象日付と呼ぶ)についての情報及び取得したいリストファイルの種類(OKリスト又はFIXEDリスト)についての情報が含まれる。リストファイル取得要求を受け付けたリスト取得部402は、リスト取得処理部412を介してリストファイル格納部421から取得対象日付において指定された種類のリストファイルを取得してデータ分析装置115、116に返却する。データ取得部403は、データ分析装置115、116から、公開用ファイル格納部422のパスを指定したデータ取得要求を受け付ける。そして、データ取得要求を受け付けたデータ取得部403は、データ取得処理部413を介して公開用ファイル格納部422から指定されたパスのファイルを検索して取得し、前記データ取得要求に対する応答としてデータ分析装置115又は116に返却する。
このようにして、データ分析装置115、116は、リスト取得部402から所望のリストファイルを取得した後、取得したリストファイル内に記載されている公開用ファイル格納部422のパスを用いてデータ取得部403から所望のファイルを取得する。
以上、本実施形態によれば、「インポート完了日付単位でのデータの取得」及び「インポート日付単位でのデータの取得」が容易に可能となる。言い換えれば、インポート完了日付及びインポート日付の両方でデータを管理することができる。即ち、ETL処理をしてデータを提供するデータ管理システムからデータを取得する際に、データの取得単位に関わらず効率的にデータを取得可能とする技術を提供することができる。
その結果、インポート完了日付単位でのデータ(例えば2014年7月31日のデータ)を取得したい場合、データ分析装置115又は116は、リスト取得部402を介して2014年7月31日のOKリスト526及びFIXEDリスト531を取得すればよい。一方、インポート日付単位でのデータ(例えば2014年7月のデータ)を取得したい場合、データ分析装置115又は116は、リスト取得部402を介して2014年7月1日〜2014年7月31日のOKリスト521〜526を取得すればよい。なお、図5の例では、2014年7月1日〜2014年7月28日のリストは省略している。
また、「インポート完了日付」と「インポート日付」とでデータを2重管理する必要があるが、実体ファイルは2重持ちしておらず、2重管理しているリストファイルの容量はほぼ無視できるので、記憶領域部405の容量を圧迫しないという副次的効果もある。
<実施形態2>
実施形態1のデータ蓄積装置132では、リストファイルを用いることでデータを2重持ちする必要がないため、記憶領域部405の容量を圧迫することなく「インポート日付」、「インポート完了日付」の各単位でデータを管理することができた。しかしながら、記憶領域部405に安価な外部ストレージを利用している場合等は、リストファイルを用いるまでもなくデータを2重持ちする方法で、「インポート日付」、「インポート完了日付」の各単位でデータを管理するようにしてもよい。本実施形態では、データを2重持ちする方法で「インポート日付」、「インポート完了日付」の各単位でデータを管理する方法について説明する。なお、本実施形態におけるシステム構成及び各装置のハードウェア構成については、実施形態1と同様である。
図7は、本実施形態におけるデータ蓄積装置132のソフトウェア構成の一例を示す図である。データ収集部701は、実施形態1におけるデータ収集部401と同様の機能を有する。また、フィルタ処理部714、データ取得処理部713、NGデータ収集部715、一時退避ファイル格納部723も、実施形態1におけるフィルタ処理部414、データ取得処理部413、NGデータ収集部415、一時退避ファイル格納部423とそれぞれ同様の機能を有する。
次に、データ保存処理部711に関して、実施形態1と異なる点について説明する。データ収集部701がデータソースからオリジナルデータを取得したタイミングでは、データ保存処理部711は、フィルタ処理部714から返却されたOKデータを公開用ファイル格納部722に格納し、返却されたNGデータを一時退避ファイル格納部723に格納する。また、NGデータ収集部715が一時退避ファイル格納部723から取得したタイミングでは、データ保存処理部711は、フィルタ処理部714から返却されたFIXEDデータを公開用ファイル格納部722に格納し、返却されたNGデータを一時退避ファイル格納部723に格納する。
次に、公開用ファイル格納部722のファイル・フォルダ構成について、図8を用いて説明する。図8は、公開用ファイル格納部722のファイル・フォルダ構成の一例を示す図である。本実施形態における公開用ファイル格納部722のファイル・フォルダ構成は、図5(B)にて説明した実施形態1におけるリストファイル格納部421のファイル・フォルダ構成に類似している。公開用ファイル格納部722には、フォルダ801以下に日付毎のOKフォルダ802〜806及びFIXEDフォルダ811〜812の各フォルダがある。OKフォルダとは、フォルダ名が「20140729_OK」のように「日付_OK」のフォルダである。FIXEDフォルダとは、フォルダ名が「20140729_FIXED」のように「日付_FIXED」のフォルダである。フォルダ801に相当するフォルダは、各データソースから取得したデータ種別毎に存在する。
次に、図9を用いて、データ保存処理部711がファイルを保存するフロー及び保存するファイルに記載するパスについて説明する。図9は、本実施形態における処理の一例を示すフローチャートである。データ保存処理部711は、フィルタ処理部714によるフィルタ処理が正常終了したファイル(OKデータ又はFIXEDデータ)のそれぞれに対して、ステップS901〜ステップS906の処理を繰り返す。
データ保存処理部711は、ステップS902にて、各ファイルがFIXEDデータか否かを判定する。ここで、データ保存処理部711は、ファイル名が「日付_ファイル番号_FIXED番号」であるものをFIXEDデータと判定する。ステップS902でFIXEDデータでなかった(OKデータであった)と判定した場合、ステップS903にて、データ保存処理部711は、公開用ファイル格納部722のインポート完了日時のOKフォルダに前記ファイルを保存する。一方、ステップS902でFIXEDデータであったと判定した場合、ステップS604にて、データ保存処理部711は、公開用ファイル格納部722のインポート完了日付のFIXEDフォルダに前記ファイルを保存する。更に、ステップS605にて、データ保存処理部711は、公開用ファイル格納部722のインポート日付のOKフォルダに前記ファイルを保存する。
例えば、2014年7月31日において、データ収集部701がデータソースからデータを取得したタイミングでは、データ保存処理部711は、ステップS903にてOKフォルダ804以下にOKデータであるファイル828、829を保存する。また、2014年7月31日において、NGデータ収集部715が一時退避ファイル格納部723から取得したタイミングでは、データ保存処理部711は、ステップS904にてFIXEDフォルダ811以下にFIXEDデータであるファイル841、842を保存する。加えて、データ保存処理部711は、ステップS905にてFIXEDデータであるファイル841と同ファイルをOKフォルダ802以下にファイル823として保存する。更に、データ保存処理部711は、ステップS905にてFIXEDデータであるファイル842と同ファイルをフォルダ803以下にファイル827として保存する。
データ取得部703は、データ分析装置115、116からデータ取得要求を受け付ける。データ取得要求には、取得対象日付についての情報及び取得したいデータの種類(OKデータ又はFIXEDデータ)についての情報が含まれる。データ取得要求を受け付けたデータ取得部703は、データ取得処理部713を介して公開用ファイル格納部722から取得対象日付において指定されたデータの種類のファイルを取得してデータ分析装置115、116に返却する。
以上、本実施形態によれば、リストファイルを用いなくても実施形態1と同様に「インポート完了日付単位でのデータの取得」及び「インポート日付単位でのデータの取得」が容易に可能となる。言い換えれば、インポート完了日付及びインポート日付の両方でデータを管理することができる。
その結果、インポート完了日付単位でのデータ(例えば2014年7月31日のデータ)を取得したい場合、データ分析装置115、116は、データ取得部703を介して2014年7月31日のOKフォルダ804及びFIXEDフォルダ811内のデータを取得すればよい。一方、インポート日付単位でのデータ(例えば2014年7月のデータ)を取得したい場合、データ分析装置115、116は、データ取得部703を介して2014年7月1日〜2014年7月31日のOKフォルダ802〜804内のデータを取得すればよい。なお、図8の例では、2014年7月1日〜2014年7月28日のフォルダは省略している。
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
以上、上述した各実施形態によれば、ETL処理をしてデータを提供するデータ管理システムからデータを取得する際に、データの取得単位に関わらず効率的なデータ取得を可能とすることができる。
以上、本発明の好ましい形態について詳述したが、本実施形態は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
110〜113 クライアント装置、115〜116 データ分析装置、121〜123 画像形成装置、131 デバイス管理装置、132 データ蓄積装置、133 出動履歴管理装置

Claims (6)

  1. インポートされたファイルと、インポートされて修正されたファイルとを管理する第1の管理手段と、
    前記インポートされたファイル及び前記修正されたファイルについての前記第1の管理手段におけるファイルパスをインポートの日時を示すフォルダ階層に配置すると共に、前記修正されたファイルの前記ファイルパスを修正後のインポートの日時を示すフォルダ階層にも配置したリストファイルを管理する第2の管理手段と、
    外部システムから受け付けたファイルの取得要求に対して、前記取得要求に対応するファイルを前記リストファイルを用いて検索する検索手段と、
    前記検索手段による検索の結果に対応するファイルパスを用いて、前記第1の管理手段で管理されているファイルを取得する取得手段と、
    前記取得手段により取得されたファイルを、前記取得要求の応答として前記外部システムに提供する提供手段と、
    を有することを特徴とするデータ管理システム。
  2. 前記インポートされたファイルは、デバイスのカウンタデータ、センサーデータ、エラー履歴データ、メンテナンスデータのうち少なくとも何れかのデータに関するファイルであることを特徴とする請求項1に記載のデータ管理システム。
  3. 前記インポートされたファイルのデータ構成が数値型のみ許可するカラムを含むテーブルである場合に、前記カラムに文字列データを含む行がある場合は、前記行に係るデータがフィルタ処理により除外されて修正されることを特徴とする請求項1又は2に記載のデータ管理システム。
  4. 前記第1の管理手段は、インポートされたデータのうちフィルタ処理で除外されなかったデータに関するファイルと、前記フィルタ処理で除外されて修正されたデータに関するファイルとを管理することを特徴とする請求項1乃至3の何れか1項に記載のデータ管理システム。
  5. 前記検索手段は、前記外部システムから受け付けたインポート日時単位又はインポート完了日時単位でのファイルの取得要求に対して、前記第2の管理手段で管理されているリストファイルから該当するファイルのファイルパスを検索することを特徴とする請求項1乃至4の何れか1項に記載のデータ管理システム。
  6. データ管理システムが実行するデータ管理方法であって、
    インポートされたファイルと、インポートされて修正されたファイルとを第1の管理手段に保存して管理する第1の管理ステップと、
    前記インポートされたファイル及び前記修正されたファイルについての前記第1の管理手段におけるファイルパスをインポートの日時を示すフォルダ階層に配置すると共に、前記修正されたファイルの前記ファイルパスを修正後のインポートの日時を示すフォルダ階層にも配置したリストファイルを第2の管理手段に保存して管理する第2の管理ステップと、
    外部システムから受け付けたファイルの取得要求に対して、前記取得要求に対応するファイルを前記リストファイルを用いて検索する検索ステップと、
    前記検索ステップによる検索の結果に対応するファイルパスを用いて、前記第1の管理手段で管理されているファイルを取得する取得ステップと、
    前記取得ステップにより取得されたファイルを、前記取得要求の応答として前記外部システムに提供する提供ステップと、
    を含むデータ管理方法。
JP2014225368A 2014-11-05 2014-11-05 データ管理システム及びデータ管理方法 Pending JP2016091317A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014225368A JP2016091317A (ja) 2014-11-05 2014-11-05 データ管理システム及びデータ管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014225368A JP2016091317A (ja) 2014-11-05 2014-11-05 データ管理システム及びデータ管理方法

Publications (1)

Publication Number Publication Date
JP2016091317A true JP2016091317A (ja) 2016-05-23

Family

ID=56019374

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014225368A Pending JP2016091317A (ja) 2014-11-05 2014-11-05 データ管理システム及びデータ管理方法

Country Status (1)

Country Link
JP (1) JP2016091317A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021135916A (ja) * 2020-02-28 2021-09-13 キヤノン株式会社 情報処理システム、情報処理装置、情報処理方法、及びプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021135916A (ja) * 2020-02-28 2021-09-13 キヤノン株式会社 情報処理システム、情報処理装置、情報処理方法、及びプログラム
JP7562269B2 (ja) 2020-02-28 2024-10-07 キヤノン株式会社 情報処理システム及び情報処理方法

Similar Documents

Publication Publication Date Title
Poorthuis et al. Making big data small: strategies to expand urban and geographical research using social media
EP2954403B1 (en) Cloud-based streaming data receiver and persister
US9141680B2 (en) Data consistency and rollback for cloud analytics
US11765176B2 (en) Method, apparatus, and computer program product for managing access permissions for a searchable enterprise platform
US20140108087A1 (en) Log management system and log management method
EP3161610B1 (en) Optimized browser rendering process
US11531645B2 (en) Method, apparatus and computer program product for improving data indexing in a group-based communication platform
US20130066869A1 (en) Computer system, method of managing a client computer, and storage medium
CN108021673A (zh) 一种用户兴趣模型生成方法、职位推荐方法及计算设备
WO2022165168A1 (en) Configuring an instance of a software program using machine learning
CN103810272A (zh) 一种数据处理方法和系统
US20220164703A1 (en) Model acceptance determination support system and model acceptance determination support method
US10033737B2 (en) System and method for cross-cloud identity matching
JP2014179000A (ja) 情報管理システム及びプログラム
US10311160B2 (en) Cloud search analytics
JP2016024486A (ja) データ活用システム及びその制御方法
US12111836B2 (en) Generating consolidated visual representations for user journeys via profile tracing
JP2016091317A (ja) データ管理システム及びデータ管理方法
US11487708B1 (en) Interactive visual data preparation service
JPWO2016067391A1 (ja) 電子機器、システムおよび方法
CN113468110A (zh) 一种文件管理方法、装置、电子设备及存储介质
JP5989600B2 (ja) 出力装置、出力方法及び出力プログラム
JP5899587B2 (ja) ファイルの検索方法、ファイル検索装置及びプログラム
US10389834B2 (en) Automated collaborative environment site viewer system
US20240296166A1 (en) Deep Connectivity Between Disparate Database Systems