(57)【要約】【課題】選択リストを条件として指定し時系列データ群から所定最大数までの新着順リストを得る処理について、冗長なデータ保持無しに負荷を軽減する。【解決手段】選択リストに基づく新着順リストの最大数にあたる発生時刻を最古時刻として、選択リストごとに記憶しておくことにより、次回その選択リストについて新着順リストを得るときは、対応する最古時刻までに処理対象を限定できる。このため、選択リストを条件として指定し時系列データ群から所定最大数までの新着順リストを得る処理について、冗長なデータ保持無しに負荷を軽減することができる。【選択図】図２
2012038178.tif 000002
【特許請求の範囲】
【請求項１】
属性を伴うレコードを発生時刻と共に時系列データとして記憶したデータ記憶手段と、
前記レコードにおける所定の属性について一又は二以上の値を選択している選択リストを記憶している選択リスト記憶手段と、
指定された前記選択リストに基づいて、前記時系列データから所定最大数までのレコードを抽出し新着順リストとして出力する抽出手段と、
前記新着順リストとして出力された最古の前記レコードの前記発生時刻を最古時刻として、前記選択リストごとに対応付けて所定の最古時刻記憶手段に記憶させる時刻処理手段と、
を有し、
前記抽出手段は、前記指定された前記選択リストに対応する前記最古時刻が前記最古時刻記憶手段に記憶されている場合、その最古時刻以降の新しいレコードを対象として前記抽出を行う
ことを特徴とするデータ処理装置。
【請求項２】
前記時刻処理手段は、前記選択リストに対応付けて前記最古時刻記憶手段に記憶されている前記最古時刻に基づいて前記抽出手段によりレコードが抽出され新着順リストとして新たに出力された場合、新たに出力された最古の前記レコードの前記発生時刻により、前記最古時刻記憶手段に記憶されているその選択リストに対応する最古時刻を更新することを特徴とする請求項１記載のデータ処理装置。
【請求項３】
コンピュータが、属性を伴うレコードを発生時刻とともに時系列データとして記憶したデータ記憶手段と、前記レコードにおける所定の属性について一又は二以上の値を選択している選択リストを記憶している選択リスト記憶手段と、を実現し、
コンピュータが、指定された前記選択リストに基づいて、前記時系列データから所定最大数までのレコードを抽出し新着順リストとして出力する抽出ステップと、
コンピュータが、前記新着順リストとして出力された最古の前記レコードの前記発生時刻を最古時刻として、前記選択リストごとに対応付けて所定の最古時刻記憶手段に記憶させる時刻処理ステップと、
を含み、
コンピュータが、前記抽出ステップに際し、前記指定された前記選択リストに対応する前記最古時刻が前記最古時刻記憶手段に記憶されている場合、その最古時刻以降の新しいレコードを対象として前記抽出を行う
ことを特徴とするデータ処理方法。
【請求項４】
コンピュータを制御することによりデータ処理を行わせるデータ処理プログラムであって、
コンピュータに、属性を伴うレコードを発生時刻とともに時系列データとして記憶したデータ記憶手段と、前記レコードにおける所定の属性について一又は二以上の値を選択している選択リストを記憶している選択リスト記憶手段と、を実現させ、
コンピュータに、指定された前記選択リストに基づいて、前記時系列データから所定最大数までのレコードを抽出し新着順リストとして出力させ、
コンピュータに、前記新着順リストとして出力された最古の前記レコードの前記発生時刻を最古時刻として、前記選択リストごとに対応付けて所定の最古時刻記憶手段に記憶させ、
コンピュータに、前記指定された前記選択リストに対応する前記最古時刻が前記最古時刻記憶手段に記憶されている場合、その最古時刻以降の新しいレコードを対象として前記抽出を行わせる
ことを特徴とするデータ処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、時系列データの抽出処理に関する。
【背景技術】
【０００２】
従来から、大規模データを扱うデータベースの技術が多様な分野で活用されているが（例えば、特許文献１参照）、その一分野として、Twitter（非特許文献１参照）等のミニブログがある。
【０００３】
その典型例では、ミニブログの各ユーザがＰＣ等のクライアントシステムからサーバに、所定文字数までのメッセージ（「つぶやき」「ツイート」などと呼ばれる）を入力することで投稿者として投稿すると、投稿された各メッセージは時間順の時系列データとして蓄積される。各ユーザが、自分がメッセージを読みたい他の投稿者を「お気に入り」のように選択リストに対象者として登録（フォロー）しておくと、以降のサーバアクセス時や更新時に、蓄積されている時系列データの中から、対象者が投稿したメッセージがデータ抽出され、時系列（タイムライン）の形で表示される。
【０００４】
より一般的にいえば、上記のような抽出の対象となる時系列データでは、時間の経過とともに任意のタイミングでレコード（例えばメッセージ）が追加され得る（追加は必須ではない）。メッセージは、発生時刻と、属性として投稿者（属性値は例えば「甲」又は「乙」など）とを伴う。抽出条件として、メッセージが持つ属性の取りうるいくつかの値（例えば投稿者が甲と丙など）を選択し保持している投稿者の選択リストが、ユーザごとに存在する。抽出結果のソート基準としては、選択リストに該当する全てのメッセージが発生時刻の最新順にソートされ、所定の最大数まで新着順リストとして表示される。
【０００５】
上記のようなミニブログのサービスで、例えば、１０万人の投稿者がいて、投稿者あたりのメッセージすなわちつぶやきが１０００件あり、お気に入りの表示対象者を１００人登録しているユーザに、投稿時刻すなわち発生時刻の新着順で表示対象者のつぶやきをリストとして表示する場合を想定する。この場合、つぶやき総数１億件から抽出される１００人分のつぶやき
つぶやき１０００件×対象者数１００人＝１０万件
のうち、新着を所定の最大数５００件、表示するケースを考える。
【０００６】
このような処理を効率よく行う一手法として、データベース（ＤＢ）にインデックスという検索用辞書を作成するアプローチが存在する。このインデックスは、特に「選択」および「ソート」の２つの用途で処理を高速化させるために利用できる。インデックスの構築には多くの場合、Ｂ−Ｔｒｅｅ（バランス木）が利用される。Ｂ−Ｔｒｅｅは、保持するリーフ（レコード）の数をｎとした場合に、木構造のルートからリーフまで到達するのにｌｏｇ（ｎ）オーダ前後の回数でたどりつけることを全てのリーフに対して保証する。このことにより、インデックスはリーフを「選択」する処理の高速化に使用できる。また、木構造であるがゆえに、枝探索アルゴリズムを使うことで「ソート」された順序にリーフを取得することができる。
【０００７】
インデックスはＤＢのレコードに対して、特定の属性を基準に生成される。この基準はレコードに含まれる属性に基づくが、単一の属性でも良いし、複数の属性でも良い。例えば、ある属性１と属性２という順序を基準としてインデックスを作成した場合、属性１が同一のレコードは、同一のノードの下の部分木に属し、更に属性２の値に従ってリーフが割り当てられる。このインデックスを枝探索することで、属性１、属性２の順序でソートされたレコードが取得できる。例えばトランプで属性１をスート（ハート、ダイヤなど）、属性２を数字とした場合、スペードのエース、スペードの２、スペードの３…クラブのエース、クラブの２、クラブの３…といった順序であれば効率よくレコードを取得できる。
【先行技術文献】
【非特許文献】
【０００８】
【非特許文献１】Twitter,  Inc.、「Twitter」、［online］、［2010年6月9日検索］、インターネット〈URL:  http://twitter.com/>
【特許文献】
【０００９】
【特許文献１】特開平３−１０８０６４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかし、上記のような従来技術では、大量のデータからある第一の条件（例えば投稿者）で抽出したデータを、第一の条件とは関連性がない別のソート基準（例えば時刻順すなわち投稿順）でソートして所定の最大数まで表示したいという一般的なケースで、処理負荷が増大する場合があった。特に、レコードが任意のタイミングで発生するとき、該当があれば所定最大数まで表示させるという条件を満たすには、遡って検索すべき時間的範囲を判断して限定できないため負荷が過大になる問題があった。
【００１１】
例えば、前述のミニブログのサービスで、投稿時刻の最新順にお気に入り投稿者のメッセージをリスト表示する場合、（１）「投稿時刻」、（２）「投稿者」という順序の属性で、上記のインデックスを作成すれば、投稿時刻順にソートされ、お気に入り投稿者に該当するつぶやきを効率よく取得できるように思われるが、実はそうではない。なぜなら、つぶやきは１０万人のユーザがそれぞれ１０００件投稿しているため、１億件のつぶやきを先頭から順番に検索していくことになるからである。
【００１２】
したがって、例えば仮に、サービス以来経過した期間の半ばあたりでつぶやきをやめてしまった投稿者だけをお気に入りしているユーザがいたとしたら、そのユーザのお気に入りの新着を表示するためには、現在から過去に向かってインデックスを５０００万件ほど辿らなくてはならず、過大な負荷となる。
【００１３】
逆に、（１）「投稿者」、（２）「投稿時刻」という属性順でインデックスを作成した場合を考えると、前述のとおり、お気に入り１００件についてつぶやき１０００件、合わせて１０万件のつぶやきを取得することになる。しかし、インデックスの最初の属性は「投稿者」となっている。ひとりの投稿者であれば、その中で２番目の属性の「投稿時刻」に基づいて順番にインデックスからつぶやきを取得できるが、お気に入りが複数件あれば、取得してきたつぶやきを時刻順に再度ソートしなければ新着順に出すことはできない。つまり、１０万件をソートする必要が発生する。これも非常に負荷の高い処理である。
【００１４】
他のアプローチとして、ユーザごとの表示対象者を指定している選択リストごとに、選択リストに該当する新着順リストそのものを最大数Ｎ件ずつ保持することも考えられる。しかし、これは、ユーザごとにお気に入りの投稿者の最新のつぶやきを例えば５００件ずつ保持することを意味し、そのデータが冗長で、必要な記憶容量の大きさが負担となる問題があった。
【００１５】
上記の課題に対し、本発明の目的は、選択リストを条件として指定し時系列データ群から所定最大数までの新着順リストを得る処理について、冗長なデータ保持無しに負荷を軽減することである。
【課題を解決するための手段】
【００１６】
上記の目的をふまえ、本発明の一態様（１）であるデータ処理装置は、属性を伴うレコードを発生時刻とともに時系列データとして記憶したデータ記憶手段と、前記レコードにおける所定の属性について一又は二以上の値を選択している選択リストを記憶している選択リスト記憶手段と、指定された前記選択リストに基づいて、前記時系列データから所定最大数までのレコードを抽出し新着順リストとして出力する抽出手段と、前記新着順リストとして出力された最古の前記レコードの前記発生時刻を最古時刻として、前記選択リストごとに対応付けて所定の最古時刻記憶手段に記憶させる時刻処理手段と、を有し、前記抽出手段は、前記指定された前記選択リストに対応する前記最古時刻が前記最古時刻記憶手段に記憶されている場合、その最古時刻以降の新しいレコードを対象として前記抽出を行うことを特徴とする。
【００１７】
本発明の他の態様（３）であるデータ処理方法は、上記態様を方法のカテゴリで捉えたもので、コンピュータが、属性を伴うレコードを発生時刻とともに時系列データとして記憶したデータ記憶手段と、前記レコードにおける所定の属性について一又は二以上の値を選択している選択リストを記憶している選択リスト記憶手段と、を実現し、コンピュータが、指定された前記選択リストに基づいて、前記時系列データから所定最大数までのレコードを抽出し新着順リストとして出力する抽出ステップと、コンピュータが、前記新着順リストとして出力された最古の前記レコードの前記発生時刻を最古時刻として、前記選択リストごとに対応付けて所定の最古時刻記憶手段に記憶させる時刻処理ステップと、を含み、コンピュータが、前記抽出ステップに際し、前記指定された前記選択リストに対応する前記最古時刻が前記最古時刻記憶手段に記憶されている場合、その最古時刻以降の新しいレコードを対象として前記抽出を行うことを特徴とする。
【００１８】
本発明の他の態様（４）は、上記態様をコンピュータ・プログラムのカテゴリで捉えたもので、コンピュータを制御することによりデータ処理を行わせるデータ処理プログラムであって、コンピュータに、属性を伴うレコードを発生時刻とともに時系列データとして記憶したデータ記憶手段と、前記レコードにおける所定の属性について一又は二以上の値を選択している選択リストを記憶している選択リスト記憶手段と、を実現させ、コンピュータに、指定された前記選択リストに基づいて、前記時系列データから所定最大数までのレコードを抽出し新着順リストとして出力させ、コンピュータに、前記新着順リストとして出力された最古の前記レコードの前記発生時刻を最古時刻として、前記選択リストごとに対応付けて所定の最古時刻記憶手段に記憶させ、コンピュータに、前記指定された前記選択リストに対応する前記最古時刻が前記最古時刻記憶手段に記憶されている場合、その最古時刻以降の新しいレコードを対象として前記抽出を行わせることを特徴とする。
【００１９】
このように、選択リストに基づく新着順リストの最大数にあたる発生時刻を最古時刻として、選択リストごとに記憶しておくことにより、次回その選択リストについて新着順リストを得るときは、対応する最古時刻までに処理対象を限定できる。このため、選択リストを条件として指定し時系列データ群から所定最大数までの新着順リストを得る処理について、冗長なデータ保持無しに負荷を軽減することができる。
【００２０】
本発明の他の態様（２）は、上記いずれかの態様において、前記時刻処理手段は、前記選択リストに対応付けて前記最古時刻記憶手段に記憶されている前記最古時刻に基づいて前記抽出手段によりレコードが抽出され新着順リストとして新たに出力された場合、新たに出力された最古の前記レコードの前記発生時刻により、前記最古時刻記憶手段に記憶されているその選択リストに対応する最古時刻を更新することを特徴とする。
【００２１】
このように、記憶している最古時刻を利用して新たに新着順リストを出力した場合に最古時刻を更新することにより、メッセージなどのレコードが増えてゆく際に、古い最古時刻に基づいて余分なレコードを処理する無駄が回避できる。
【００２２】
なお、上記の各態様とは異なるカテゴリ（装置に対し方法、方法に対しプログラムなど）や、以下に説明するさらに具体的な各態様も本発明に含まれる。異なるカテゴリについては、「手段」を「処理」又は「ステップ」のように適宜読み替えるものとする。
【発明の効果】
【００２３】
本発明によれば、選択リストを条件として指定し時系列データ群から所定最大数までの新着順リストを得る処理について、冗長なデータ保持無しに負荷を軽減することが可能となる。
【図面の簡単な説明】
【００２４】
【図１】本発明の実施形態の構成を示す機能ブロック図。
【図２】本発明の実施形態で用いる情報（データ）を例示する図。
【図３】本発明の実施形態における処理手順を示すフローチャート。
【図４】本発明の実施形態における画面表示例を示す図。
【発明を実施するための形態】
【００２５】
次に、本発明を実施するための形態（「実施形態」と呼ぶ）について、図に沿って説明する。なお、背景技術や課題などで既に述べた内容と共通の前提事項については適宜省略する。
【００２６】
〔構成〕
本実施形態は、図１に示すデータ処理装置１（以下「本装置１」又は「本装置」と略称する）に関するもので、本装置１は、通信ネットワークＷ経由で、ユーザが用いる端末Ｔからのアクセスに応じ、ミニブログのメッセージについて入力を受け付け、表示を行うウェブサーバ装置である。
【００２７】
本装置１は、一般的なコンピュータの構成として少なくとも、ＣＰＵなどの演算制御部６と、外部記憶装置（ＨＤＤ等）や主メモリ等の記憶装置７と、通信ネットワークＷ（インターネット、携帯電話網、ＬＡＮなど）との通信手段８（ＬＡＮアダプタなど）と、を有する。また、端末Ｔは、パーソナル・コンピュータ（ＰＣ）、スマートフォンや携帯電話端末装置など、ユーザの用いる情報処理装置で、図１では一つを模式的に例示するが、実際は多数存在する。
【００２８】
そして、本装置１では、記憶装置７に予め記憶（インストール）した図示しない所定のコンピュータ・プログラムが演算制御部６を制御することで、図１に示す各手段などの要素（１０，２０など）を実現する。これら各要素のうち、情報の記憶手段は、記憶装置７において各種のデータベース（「ＤＢ」とも表す）やファイル、配列等の変数、各種スタックやレジスタ、システム設定値など任意の形式で実現できる。
【００２９】
このような記憶手段のうち、データ記憶手段１０は、図２（１）に例示するように、ミニブログのメッセージＭを、属性（投稿者：甲、乙など）を伴うレコードとして、発生時刻Ｂ（図の例では日時）とともに時系列データとして記憶する手段である。また、選択リスト記憶手段１５は、ミニブログのサービスのユーザごとに、ユーザがメッセージを読みたいお気に入りの表示対象者として登録した他の投稿者を、選択リストとして記憶している手段である。
【００３０】
例えば、図２（２）に例示する選択リストＡは、ミニブログのユーザごとに（例では丙）、前記時系列データのレコードにおける所定の属性（投稿者）について一又は二以上の値（例えば、甲、乙・・・）を列挙する形で選択している。なお、記憶手段以外の各手段は、以下のような情報処理の機能・作用を実現・実行する処理手段である。
【００３１】
〔基本的作用効果〕
上記のように構成した本装置１の動作手順を図３のフローチャートに示す。まず、ユーザからのアクセスによる表示要求が有った場合（ステップＳ１）、そのユーザが表示対象者を登録した選択リストが指定されたことになる。そして、抽出手段２０は、指定された選択リストに対応する最古時刻が最古時刻記憶手段３５に記憶されているか判断するが（ステップＳ２）、その選択リストについて初めて新着順リストを出力する場合は、最古時刻の記憶は無い（ステップＳ２：「ＮＯ」）。
【００３２】
この場合（ステップＳ２：「ＮＯ」）、抽出手段２０は、指定された選択リストに基づいて、データ記憶手段１０に記憶されている時系列データから所定最大数までのレコードを抽出するが（ステップＳ３）、選択リストに含まれる表示対象者のメッセージがどの程度の頻度や割合で時系列データに含まれるかは未知である。このため、データ記憶手段１０に記憶されている最新のメッセージを起点として過去に向かって、相当余裕を見た十分な件数まで抽出の対象とするか、もしくは表示対象者に該当する抽出件数を確認しながら所定量ずつ抽出の処理を進める。
【００３３】
この際、表示対象者のメッセージの数や割合が少なく所定の最大数になかなか達しなければ、投稿者を表示対象者と照合する処理を、サービス開始以来の全てのメッセージに亘って行うこととなる。図２（２）の選択リストでは、ユーザ丙は、表示対象者として甲と乙を指定しており（図中、破線の楕円）、この選択リストに基づいて、図２（１）の時系列データから、投稿者が甲と乙（図２（１）でも破線の楕円で示す）のレコードが抽出される（図２（４））。
【００３４】
上記のように抽出された抽出データは、図２（４）の例では破線の楕円で示すように、投稿者（甲、乙）ごとに整列していて、発生時刻順になっていない。そして、このように抽出した表示対象者のメッセージのレコード（例えば、図２（４））を所定の最大数Ｎまで発生時刻順にソートすることによって（ステップＳ４。例えば図２（５））、図４に例示するように、ミニブログの新着順リストとして出力する（ステップＳ４）。
【００３５】
続いて、時刻処理手段３０は、新着順リストとして出力された最古の（すなわち最大数Ｎ件目にあたる）レコードの発生時刻Ｂを最古時刻Ｚとして、選択リストごとに対応付けて所定の最古時刻記憶手段３５に記憶させる（ステップＳ６。例えば図２（３））。図２の例では、選択リスト記憶手段１５内の選択リストＡと最古時刻記憶手段３５内の最古時刻Ｚを別々に図示しているが、ユーザごとに、表示対象者と、最古時刻Ｚと、を対応付けるなどして、選択リスト記憶手段１５と最古時刻記憶手段３５は一体に構成してもよい。
【００３６】
そして、抽出手段２０は、指定された選択リストに対応する最古時刻Ｚが最古時刻記憶手段３５に記憶されている場合（ステップＳ２：「ＹＥＳ」）、その最古時刻以降の新しいレコードを対象として前記抽出を行う（ステップＳ５）。
【００３７】
以上のように、選択リストＡに基づく新着順リストの最大数（Ｎ件目）にあたる発生時刻Ｂを最古時刻Ｚとして、選択リストＡごとに記憶しておくことにより（図３のステップＳ６）、次回その選択リストＡについて新着順リストを得るときは、対応する最古時刻Ｚまでに処理対象を限定できる（ステップＳ５）。このため、選択リストを条件として指定し時系列データ群から所定最大数までの新着順リストを得る処理について、冗長なデータ保持無しに負荷を軽減することができる。
【００３８】
〔ＳＱＬの例〕
上記のような最古時刻を用いたレコード抽出の処理（ステップＳ５）を実現する一態様として、次のようなＳＱＬが考えられる。但し、時系列データに含まれる各メッセージＭのレコードが、属性Ｐである投稿者、発生時刻Ｂの各フィールドを含むとする。但しこのＳＱＬは、正確な記述例ではなく概念的な例を示すもので、実際には、システムやデータベースの表、フィールドなどの構成に応じた記述を用いる。
＜ＳＱＬ１＞
SELECT  メッセージ.発生時刻Ｂ,  メッセージ.内容
FROM  選択リストＡ  INNNER  JOIN  メッセージＭ
ON  選択リストＡ.属性Ｐ  =  メッセージＭ.属性Ｐ
WHERE  選択リストＡ.セット  =  （セットの指定）
AND  メッセージＭ.発生時刻Ｂ  >=  最古時刻Ｚ
【００３９】
上記ＳＱＬ１の結果はまだ発生時刻Ｂの順序に整列されていないが（例えば図２（４））、メッセージＭに「属性Ｐ」・「発生時刻Ｂ」をインデックスで設定しておけば、メッセージＭの中から選択リスト中にある属性Ｐごとに発生時刻Ｂが最古時刻Ｚよりも新しいメッセージＭをインデックスを参照しながら効率よく取得することができる。
【００４０】
なぜなら、インデックスのＢ−Ｔｒｅｅを枝探索する際に、属性Ｐ中のリーフは発生時刻Ｂの最新順に取得でき、最古時刻Ｚよりも古いリーフに出会ったらその属性Ｐの部分木の探索を終わらせて、次の属性Ｐの部分木の探索を始められるため、および、選択リスト中に無い属性Ｐの部分木に出会ったら、部分木ごと無視して次の属性Ｐの部分木の枝探索に移ることができるためである。最古時刻Ｚが適切であれば、このＳＱＬ１の結果、取得されるメッセージＭの件数は最大数Ｎ件となる。
【００４１】
〔ＳＱＬによるソートの例〕
上記ＳＱＬ１による抽出結果に対して、ＤＢにおいて改めて発生時刻順のソートを実行する場合は、ＳＱＬ１の後に下記のように記述することになる。
＜ＳＱＬ２＞
（ＳＱＬ１）  ORDER  BY  メッセージＭ.発生時刻Ｂ  DESC
ここで、一般的にＤＢは、ソートする件数が小さければオンメモリでソートを実行するため、最大数Ｎが十分に小さければＳＱＬ２で十分な処理速度が出る。しかし、最大数Ｎが大きくなるとＤＢサーバはソートする前にレコードをディスクに書き込み始めるため、処理速度が落ちてしまう。
【００４２】
上記のケースに対処するためには、ＳＱＬ１で実行した結果を、例えば本実施形態の機能を実現するアプリケーション・プログラム側でメモリに保持し、このアプリケーション・プログラム側で発生時刻Ｂに従ってオンメモリでソートを行うことが考えられる。オンメモリでソートさせるのに妥当な件数までは最大数Ｎを大きくすることができる。
【００４３】
〔最古時刻の更新〕
また、メッセージＭは不定期に追加されるため、最古時刻Ｚはなんらかのタイミングで初期化および更新されることが望ましい。そのタイミングは自由に選択できるが、最も好ましいタイミングは、図３のフローチャートに示すように、新着順リストを新たに取得するタイミングである。このタイミングで選択リストに基づく最新の新着順リストが取得でき、最大数Ｎ番目の発生時刻Ｂを知ることができ、最古時刻Ｚを更新することができる。
【００４４】
すなわち、この場合、時刻処理手段３０は、選択リストに対応付けて最古時刻記憶手段３５に記憶されている最古時刻に基づいて（ステップＳ２：「ＹＥＳ」）抽出手段２０によりレコードが抽出され（ステップＳ５）新着順リストとして新たに出力された場合（ステップＳ４）、新たに出力された最古のレコードの発生時刻を最古時刻として記憶することにより、最古時刻記憶手段３５に記憶されているその選択リストに対応する最古時刻を更新する（ステップＳ６）。
【００４５】
このように、記憶している最古時刻を利用して新たに新着順リストを出力した場合に最古時刻を更新することにより、メッセージなどのレコードが増えてゆく際に、最古時刻に基づいて余分なレコードを処理する無駄が回避できる。
【００４６】
〔他の実施形態〕
なお、上記各実施形態は例示に過ぎず、本発明は、以下に例示するものやそれ以外の他の実施態様も含むものである。例えば、本発明の適用対象はミニブログに限らず、電子掲示板、ＳＮＳ（ソーシャル・ネットワーキング・サービス）、災害用等の音声伝言システム、各種の電子商取引やセキュリティの管理など、任意に定めることができる。
【００４７】
また、手段などの各要素は、コンピュータの演算制御部に限らず、ワイヤードロジック等に基づく電子回路など他の情報処理機構で実現してもよい。また、各構成図、データの図、フローチャートの図などは例示に過ぎず、各要素の有無、その順序や具体的内容などは適宜変更可能である。例えば、本発明の装置は、サーバなどの装置を複数用いて実現してもよく、個々の記憶手段を別個独立のサーバ装置やシステムで実現する構成も一般的である。また、機能によっては、外部のプラットフォーム等をＡＰＩ（アプリケーション・プログラム・インタフェース）やネットワークコンピューティング（いわゆるクラウドなど）で呼び出して実現するなど、構成は柔軟に変更できる。
【符号の説明】
【００４８】
１  データ処理装置
６  演算制御部
７  記憶装置
８  通信手段
１０  データ記憶手段
１５  選択リスト記憶手段
２０  抽出手段
３０  時刻処理手段
３５  最古時刻記憶手段
Ａ  選択リスト
Ｂ  発生時刻
Ｍ  メッセージ
Ｗ  通信ネットワーク
Ｐ  属性
Ｔ  端末
Ｚ  最古時刻
【図１】
2012038178.tif 000003
【図２】
2012038178.tif 000004
【図３】
2012038178.tif 000005
【図４】
2012038178.tif 000006