JP6197578B2 - 情報処理装置、情報処理方法およびプログラム - Google Patents
情報処理装置、情報処理方法およびプログラム Download PDFInfo
- Publication number
- JP6197578B2 JP6197578B2 JP2013221305A JP2013221305A JP6197578B2 JP 6197578 B2 JP6197578 B2 JP 6197578B2 JP 2013221305 A JP2013221305 A JP 2013221305A JP 2013221305 A JP2013221305 A JP 2013221305A JP 6197578 B2 JP6197578 B2 JP 6197578B2
- Authority
- JP
- Japan
- Prior art keywords
- information processing
- processes
- tuple
- unit
- processing apparatus
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
タプルに含まれる複数の属性データを属性ごとに異なる複数のテーブルとして保持する記憶部と、
複数のタプルを前記複数のテーブルに挿入する第1の処理を、属性を単位として複数の第2の処理に分割し、前記複数の第2の処理の処理順序を決定する順序決定部と、
前記処理順序に従って前記複数の第2の処理をパイプライン方式で実行するパイプライン処理部と、を備える。
情報処理装置が、タプルに含まれる複数の属性データを属性ごとに異なる複数のテーブルとして記憶部に保持する工程と、
複数のタプルを前記複数のテーブルに挿入する第1の処理を、属性を単位として複数の第2の処理に分割する工程と、
前記複数の第2の処理の処理順序を決定する工程と、
前記処理順序に従って前記複数の第2の処理をパイプライン方式で実行する工程と、を含む。
情報処理装置が、タプルに含まれる複数の属性データを属性ごとに異なる複数のテーブルとして記憶部に保持する処理と、
複数のタプルを前記複数のテーブルに挿入する第1の処理を、属性を単位として複数の第2の処理に分割する処理と、
前記複数の第2の処理の処理順序を決定する処理と、
前記処理順序に従って前記複数の第2の処理をパイプライン方式で実行する処理と、をコンピュータに実行させる。
なお、プログラムは、非一時的なコンピュータ可読記録媒体(non-transitory computer-readable storage medium)に記録されたプログラム製品として提供することができる。
次に、第1の実施形態に係る情報処理装置について、図面を参照して詳細に説明する。本実施形態では、情報処理装置は、複数属性から成るタプルを属性毎にまとめて格納する。
図3および図4は、本実施形態に係る情報処理装置110(図2)の動作を一例として示すフロー図である。図2ないし図4を参照して、データが空の状態の情報処理装置110に、図11に示す複数属性から成るタプルデータを格納する動作について説明する。図11では、タプル識別子TID=1、2、3までのタプルデータを示しているが、以下では、タプル識別子TID=1、2、3、4を持つタプルを格納するものとする。タプルを格納でする際には、異なるタプル識別子のデータが混合されないようにし、処理の独立性を保つ必要がある。
パイプライン処理の準備について、図3を参照して説明する。まず、順序決定部10は、タプルデータの格納処理を複数のステージに分割する(ステップA1)。ここでは、一例として、3列から成るタプルの格納を、列毎に3つのステージに分割する場合を考える。各ステージにおける処理は、記憶部30中の列毎のデータ領域に1つの列データを格納する処理となる。
次に、実際にデータを格納する様子について、図2および図4を参照して説明する。まず、処理の識別子がステージ実行部22Pのキュー24Pに格納される(ステップB1)。この場合の、処理の識別子は、ColAの格納処理であることと、処理対象のタプルデータを特定するものである。本実施形態では、処理の識別子として、格納対象タプルの識別子であるTIDを用いるものとし、TIDの小さい順に格納されるものとする。なお、本実施形態におけるタプルの格納順序は例示に過ぎず、本発明はこれに限定されない。
次に、第2の実施形態に係る情報処理装置について、図面を参照して説明する。本実施形態においても、情報処理装置は、複数属性から成るタプルを属性毎にまとめて格納する。
図6および図7は、本実施形態の情報処理装置120の動作を一例として示すフロー図である。図5ないし図7を参照して、データが空の状態の情報処理装置120に、図11に示す複数属性から成るタプルデータを格納する動作について説明する。図11にはタプル識別子TID=1、2、3までのタプルデータを示している。以下では、タプル識別子TID=1、2、3、4を持つタプルを格納するものとする。タプル格納では、異なるタプル識別子のデータが混合されないようにし、処理の独立性を保つ必要がある。
パイプライン処理の準備については、第1の実施形態に係る情報処理装置110と同様であることから、説明を省略する。
実際にデータを格納する動作について、図6を参照して説明する。まず、処理の識別子がステージ実行部22Pのキュー24Pに格納される(ステップC1)。この場合の処理の識別子は、ColAの格納処理であることと、処理対象のタプルデータを特定するものである。本実施形態では、処理の識別子として、格納対象タプルの識別子であるTIDを用いることとし、TIDは小さい順に格納されるものとする。なお、本実施形態におけるタプルの格納順序は例示に過ぎず、本発明はこれに限定されない。
次に、図5の状態において、データを参照する処理について、図7を参照して説明する。ここでは、参照処理の一例として、ColBの値が2013以下であるタプルの属性「ColA」の値を取得する処理を考える。
次に、第3の実施形態に係る情報処理装置について、図面を参照して説明する。
次に、第4の実施形態に係る情報処理装置について、図面を参照して説明する。
[形態1]
上記第1の視点に係る情報処理装置のとおりである。
[形態2]
前記パイプライン処理部は、前記複数の第2の処理をパイプライン方式で実行する複数のステージ実行部を備え、
前記順序決定部は、前記複数の第2の処理を前記処理順序に従って前記複数のステージ実行部に割り当てる、形態1に記載の情報処理装置。
[形態3]
前記複数のステージ実行部は、前記複数の第2の処理のうちの割り当てられた処理を、前記複数のタプルについて同一の順序で実行する、形態2に記載の情報処理装置。
[形態4]
前記複数のステージ実行部は、タプルを識別する識別子を保持するキューと、
前記キューからデキューした識別子が示すタプルに含まれる属性データを、前記複数のテーブルのうちの該当するテーブルに挿入するデータ処理部と、を有する、形態3に記載の情報処理装置。
[形態5]
前記データ処理部は、前記キューから識別子をデキューすると、デキューした識別子を後段のステージ実行部に設けられたキューにエンキューする、形態4に記載の情報処理装置。
[形態6]
前記記憶部は、前記複数のタプルのうちの最終段のステージ実行部が処理したタプルの個数を表すカウント値を保持する、形態2ないし5のいずれか1項に記載の情報処理装置。
[形態7]
前記最終段のステージ実行部に設けられたデータ処理部は、前記キューから識別子をデキューすると、デキューした識別子が示すタプルに含まれる属性データを前記複数のテーブルのうちの該当するテーブルに挿入し、前記記憶部が保持するカウント値を更新する、形態6に記載の情報処理装置。
[形態8]
前記順序決定部は、前記第1の処理の分割数を受け付け、受け付けた分割数に応じて前記第1の処理を前記複数の第2の処理に分割する、形態1ないし7のいずれか1項に記載の情報処理装置。
[形態9]
前記順序決定部は、前記複数のタプルに含まれる複数の属性の前記複数の第2の処理への割当てを受け付け、受け付けた割当てに応じて前記複数の属性を前記複数の第2の処理に割り当てる、形態8に記載の情報処理装置。
[形態10]
上記第2の視点に係る情報処理方法のとおりである。
[形態11]
前記複数の第2の処理をパイプライン方式で処理する複数のステージ実行部に対して、前記複数の第2の処理を前記処理順序に従って割り当てる工程を含む、形態10に記載の情報処理方法。
[形態12]
前記複数のステージ実行部は、前記複数の第2の処理のうちの割り当てられた処理を、前記複数のタプルについて同一の順序で実行する、形態11に記載の情報処理方法。
[形態13]
前記複数のステージ実行部が、タプルを識別する識別子をキューに保持する工程と、
前記キューからデキューした識別子が示すタプルに含まれる属性データを、前記複数のテーブルのうちの該当するテーブルに挿入する工程と、を含む、形態12に記載の情報処理方法。
[形態14]
前記複数のステージ実行部は、前記キューから識別子をデキューすると、デキューした識別子を後段のステージ実行部に設けられたキューにエンキューする、形態13に記載の情報処理方法。
[形態15]
前記記憶部が、前記複数のタプルのうちの最終段のステージ実行部が処理したタプルの個数を表すカウント値を保持する工程を含む、形態11ないし14のいずれか1項に記載の情報処理方法。
[形態16]
前記最終段のステージ実行部は、前記キューから識別子をデキューすると、デキューした識別子が示すタプルに含まれる属性データを前記複数のテーブルのうちの該当するテーブルに挿入し、前記記憶部が保持するカウント値を更新する、形態15に記載の情報処理方法。
[形態17]
上記第3の視点に係るプログラムのとおりである。
[形態18]
前記複数の第2の処理をパイプライン方式で実行する複数のステージ実行部に対して、前記複数の第2の処理を前記処理順序に従って割り当てる処理を、前記コンピュータに実行させる、形態17に記載のプログラム。
[形態19]
前記複数の第2の処理のうちの割り当てられた処理を、前記複数のタプルについて同一の順序で実行する処理を、前記複数のステージ実行部に実行させる、形態18に記載のプログラム。
[形態20]
タプルを識別する識別子をキューに保持する処理と、
前記キューからデキューした識別子が示すタプルに含まれる属性データを、前記複数のテーブルのうちの該当するテーブルに挿入する処理と、を前記複数のステージ実行部に実行させる、形態19に記載のプログラム。
[形態21]
前記キューから識別子をデキューすると、デキューした識別子を後段のステージ実行部に設けられたキューにエンキューする処理を、前記複数のステージ実行部に実行させる、形態20に記載のプログラム。
20 パイプライン処理部
22P、22Q、22R、…、22X ステージ実行部
24P、24Q、24R キュー
26P、26Q、26R データ処理部
30、70 記憶部
32P、32Q、32R、34 領域
40 データ参照部
50 ユーザインタフェース
60P、60Q、60R 計算機
72P、72Q、72R 記憶ノード
52、54、56P、56Q、56R、58P、58Q、58R 領域
100、110、120、140 情報処理装置
Claims (10)
- タプルに含まれる複数の属性データを属性ごとに異なる複数のテーブルとして保持する記憶部と、
複数のタプルを前記複数のテーブルに挿入する第1の処理を、属性を単位として複数の第2の処理に分割し、前記複数の第2の処理の処理順序を決定する順序決定部と、
前記処理順序に従って前記複数の第2の処理をパイプライン方式で実行するパイプライン処理部と、を備える、情報処理装置。 - 前記パイプライン処理部は、前記複数の第2の処理をパイプライン方式で実行する複数のステージ実行部を備え、
前記順序決定部は、前記複数の第2の処理を前記処理順序に従って前記複数のステージ実行部に割り当てる、請求項1に記載の情報処理装置。 - 前記複数のステージ実行部は、前記複数の第2の処理のうちの割り当てられた処理を、前記複数のタプルについて同一の順序で実行する、請求項2に記載の情報処理装置。
- 前記記憶部は、前記複数のタプルのうちの最終段のステージ実行部が処理したタプルの個数を表すカウント値を保持する、請求項3に記載の情報処理装置。
- 前記複数のステージ実行部は、タプルを識別する識別子を保持するキューと、
前記キューからデキューした識別子が示すタプルに含まれる属性データを、前記複数のテーブルのうちの該当するテーブルに挿入するデータ処理部と、を有する、請求項4に記載の情報処理装置。 - 前記データ処理部は、前記キューから識別子をデキューすると、デキューした識別子を後段のステージ実行部に設けられたキューにエンキューする、請求項5に記載の情報処理装置。
- 前記最終段のステージ実行部に設けられたデータ処理部は、前記キューから識別子をデキューすると、デキューした識別子が示すタプルに含まれる属性データを前記複数のテーブルのうちの該当するテーブルに挿入し、前記記憶部が保持するカウント値を更新する、請求項5又は6に記載の情報処理装置。
- 情報処理装置が、タプルに含まれる複数の属性データを属性ごとに異なる複数のテーブルとして記憶部に保持する工程と、
複数のタプルを前記複数のテーブルに挿入する第1の処理を、属性を単位として複数の第2の処理に分割する工程と、
前記複数の第2の処理の処理順序を決定する工程と、
前記処理順序に従って前記複数の第2の処理をパイプライン方式で実行する工程と、を含む、情報処理方法。 - 前記複数の第2の処理をパイプライン方式で処理する複数のステージ実行部に対して、前記複数の第2の処理を前記処理順序に従って割り当てる工程を含む、請求項8に記載の情報処理方法。
- 情報処理装置が、タプルに含まれる複数の属性データを属性ごとに異なる複数のテーブルとして記憶部に保持する処理と、
複数のタプルを前記複数のテーブルに挿入する第1の処理を、属性を単位として複数の第2の処理に分割する処理と、
前記複数の第2の処理の処理順序を決定する処理と、
前記処理順序に従って前記複数の第2の処理をパイプライン方式で実行する処理と、をコンピュータに実行させる、プログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013221305A JP6197578B2 (ja) | 2013-10-24 | 2013-10-24 | 情報処理装置、情報処理方法およびプログラム |
US15/030,473 US20160253287A1 (en) | 2013-10-24 | 2014-06-06 | Information processing device, information processing method, and recording medium |
PCT/JP2014/065117 WO2015059952A1 (ja) | 2013-10-24 | 2014-06-06 | 情報処理装置、情報処理方法およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013221305A JP6197578B2 (ja) | 2013-10-24 | 2013-10-24 | 情報処理装置、情報処理方法およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015082293A JP2015082293A (ja) | 2015-04-27 |
JP6197578B2 true JP6197578B2 (ja) | 2017-09-20 |
Family
ID=52992563
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013221305A Active JP6197578B2 (ja) | 2013-10-24 | 2013-10-24 | 情報処理装置、情報処理方法およびプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US20160253287A1 (ja) |
JP (1) | JP6197578B2 (ja) |
WO (1) | WO2015059952A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107357535A (zh) * | 2017-07-20 | 2017-11-17 | 郑州云海信息技术有限公司 | 一种确定数据冷热等级的方法及装置 |
US11516152B2 (en) * | 2019-09-28 | 2022-11-29 | Tencent America LLC | First-in first-out function for segmented data stream processing |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5873075A (en) * | 1997-06-30 | 1999-02-16 | International Business Machines Corporation | Synchronization of SQL actions in a relational database system |
US9626421B2 (en) * | 2007-09-21 | 2017-04-18 | Hasso-Plattner-Institut Fur Softwaresystemtechnik Gmbh | ETL-less zero-redundancy system and method for reporting OLTP data |
JP5256685B2 (ja) * | 2007-10-18 | 2013-08-07 | 日本電気株式会社 | 情報処理装置 |
US20110264667A1 (en) * | 2010-04-27 | 2011-10-27 | Stavros Harizopoulos | Column-oriented storage in a row-oriented database management system |
JP5999351B2 (ja) * | 2012-03-26 | 2016-09-28 | 日本電気株式会社 | データベース処理装置、方法、プログラム及びデータ構造 |
-
2013
- 2013-10-24 JP JP2013221305A patent/JP6197578B2/ja active Active
-
2014
- 2014-06-06 WO PCT/JP2014/065117 patent/WO2015059952A1/ja active Application Filing
- 2014-06-06 US US15/030,473 patent/US20160253287A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
JP2015082293A (ja) | 2015-04-27 |
US20160253287A1 (en) | 2016-09-01 |
WO2015059952A1 (ja) | 2015-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20160188669A1 (en) | Partitioning and repartitioning for data parallel operations | |
JP5730386B2 (ja) | 計算機システム及び並列分散処理方法 | |
US9195701B2 (en) | System and method for flexible distributed massively parallel processing (MPP) database | |
CN104615736B (zh) | 基于数据库的大数据快速解析存储方法 | |
WO2015027425A1 (zh) | 存储数据的方法和装置 | |
JP5939123B2 (ja) | 実行制御プログラム、実行制御方法および情報処理装置 | |
JP2011039820A (ja) | ストリームデータ処理方法及び装置 | |
CN110955732B (zh) | 一种用于在Spark环境中实现分区负载均衡的方法和系统 | |
CN114756629B (zh) | 基于sql的多源异构数据交互分析引擎及方法 | |
CN107633001A (zh) | 哈希分区优化方法和装置 | |
US20230342399A1 (en) | System, method, and apparatus for data query using network device | |
JP6197578B2 (ja) | 情報処理装置、情報処理方法およびプログラム | |
CN112000845B (zh) | 一种基于gpu加速的超空间哈希索引方法 | |
WO2021004266A1 (zh) | 数据插入方法、装置、设备和储存介质 | |
US9317809B1 (en) | Highly scalable memory-efficient parallel LDA in a shared-nothing MPP database | |
Glatter et al. | Scalable data servers for large multivariate volume visualization | |
WO2014051071A1 (ja) | 分散ストレージ装置、ストレージノード、データ提供方法およびプログラム | |
JP5464017B2 (ja) | 分散メモリデータベースシステム、データベースサーバ、データ処理方法およびそのプログラム | |
AU2020200649A1 (en) | Apparatus and method for managing storage of primary database and replica database | |
CN102087655A (zh) | 一种能体现人际关系网的网站系统 | |
Fukuda et al. | Improving response time for Cassandra with query scheduling | |
US10019472B2 (en) | System and method for querying a distributed dwarf cube | |
CN107784032A (zh) | 一种数据查询结果的渐进式输出方法、装置及系统 | |
CN106570038A (zh) | 一种分布式数据处理方法及系统 | |
CN117827848B (zh) | 哈希连接方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160906 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170509 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170710 |
|
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: 20170725 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170807 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6197578 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |