WO2002029624A1 - Structure de traitement de donnees - Google Patents

Structure de traitement de donnees Download PDF

Info

Publication number
WO2002029624A1
WO2002029624A1 PCT/AU2001/001250 AU0101250W WO0229624A1 WO 2002029624 A1 WO2002029624 A1 WO 2002029624A1 AU 0101250 W AU0101250 W AU 0101250W WO 0229624 A1 WO0229624 A1 WO 0229624A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
block
nodes
data processing
pointer
Prior art date
Application number
PCT/AU2001/001250
Other languages
English (en)
Inventor
Raymond John Huetter
Original Assignee
Bullant Technology Pty 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 Bullant Technology Pty Ltd filed Critical Bullant Technology Pty Ltd
Priority to AU2001293509A priority Critical patent/AU2001293509A1/en
Publication of WO2002029624A1 publication Critical patent/WO2002029624A1/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9027Trees

Definitions

  • the present invention relates to a data processing structure and, more particularly, to such a data structure suited to simultaneously representing work to do and work done .
  • the structure represents work to do
  • the structure has to be linearly scanned to discover what work to do next;
  • steps 2 & 3 must be repeated is due to the nature/structure of the binary trees and sparse arrays. If an object appears in such a structure it always appears in a particular place.
  • Scanning a binary tree or sparse array can be done depth or breadth first, but there is always some traversal cursor moving through the nodes . If new values are inserted into the binary tree or sparse array (because of processing the handle already in the structure) , they are inserted with indifference to the traversal cursor. The upshot is that the structure must be rescanned until there is no further work.
  • a data processing structure comprising a chain of data blocks containing a binary tree structure; each of said data blocks containing a predetermined number of nodes .
  • a data processing structure comprising one or more node blocks and a control structure; said control structure grouping nodes in said node blocks according to a physical ordering in computer memory.
  • each said node block contains a pointer to the next node block and an array of binary tree nodes .
  • said binary tree node contains a value, a left pointer and a right pointer.
  • control structure includes the following: (a) the number of nodes in a block;
  • a method of storage of a binary tree structure comprising storing nodes of said tree in node arrays; each said node array comprising a predetermined number of node storage locations; said node storage locations of said predetermined number of node storage locations having a predetermined physical ordering in memory.
  • a traversal cursor is utilized to keep track of work done; said cursor being advanced in a linear progression through said data processing structure as each node in said structure is processed whereby nodes through which said cursor has advanced do not require further processing.
  • Fig. 1 represents a binary tree structure to which embodiments of the present invention can be applied;
  • Fig. 2 illustrates an instance of a data processing structure according to a first preferred embodiment
  • Fig. 3 illustrates operations on the data processing structure of Fig. 2;
  • Fig. 4 illustrates in block diagram form further detail of the data processing structure of Fig. 2.
  • a data processing structure 10 comprises logically a binary tree 11 but physically held within a block chain - where each block holds a set of nodes .
  • Fig. 1 assume we have the logical binary tree 11 comprising a plurality of nodes 12-22 as illustrated.
  • structure 10 is such that the nodes have a physical ordering in memory.
  • the structure 10 can be linearly (and efficiently) traversed and while being traversed new values can be added, such that all new values appear physically ahead of a traversal cursor.
  • Values ahead of the traversal cursor represent work to be done, whilst values behind the traversal cursor represent work already done.
  • This property of adding new values ahead of the traversal cursor means the client application (not shown) can add/record further work to do. Advancing the traversal cursor eventually reaches the new work to be done.
  • Having multiple nodes in a block means minimal memory allocation.
  • the structure can be reused by resetting the pointers (thereby keeping the blocks if this is efficient) , or can be deleted outright .
  • the structure is extensible so it can be used to hold an indefinite amount of work.
  • the data processing structure 10 comprises: a . One or more node blocks ; and b. A control structure. Each node block contains : a. A pointer to the next node block (thereby forming a chain of node blocks) ; and b. An array of traditional binary tree nodes (i.e. a value, a left pointer and a right pointer) .
  • the control structure has at least six members: a. The number of nodes in a block; b. A pointer to the first block; c. A pointer to the last block; d. A pointer to the current append block; e. A pointer to last node appended in the current append block; and f . The number of free nodes in the current append block.
  • the data processing structure 10 can allow the following operations :
  • the data processing structure 10 has the following properties:
  • Data processing structure 10 comprises, in this instance, first node block 30, second node block 31 and third node block 32.
  • Each of node blocks 30, 31, 32 comprises an array of four nodes 33 together with a pointer 34 to the next node block.
  • Each node 33 includes a value 35, a left pointer 36 and a right pointer 37.
  • each node block 30, 31, 32 comprises exactly four nodes.
  • a control structure 38 is associated with the data processing structure 10 and includes pointer 39 to first node block 30, pointer 40 to the current append block (in this instance node block 32) , pointer 41 to last node block (in this instance third node block 32) .
  • control structure 38 includes storage location 42 which contains the number of free nodes in the current append block (in this instance there are two spare nodes, namely spare node 42 and spare node 43 in the third node block 32) .
  • a cursor 44 is moved through the control structure 10 starting with the first node of first node block 30, progressing, in this instance, from left to right through all of the nodes in first node block 30, then progressing to the first node of second node block 31, progressing through all the nodes of second node block 31 (again from left to right) and then, finally, in this instance, progressing through the two nodes of third node block 32. If, in the course of progression, the cursor 34 discovers further nodes for processing such nodes are appended to the next available node in the current append block as designated by pointer 40. Because of the structure of data processing structure 10 such additional nodes will always be placed after the current position of the cursor 44.
  • the number of nodes set aside for each node block 30, 31, 32 may be different from node block to node block. However, the number of nodes in any given node block which is set up will always be known in advance of the creation of that node block and as determined by control structure 38. In one typical example the first node block could, in practice, contain 256 nodes with subsequent node blocks each containing double the number of nodes of the previous node block.
  • the binary tree or sparse array implemented as the data processing structure of the preferred embodiment is an extremely useful and efficient structure for representing both work done; work to do and recording further work to do while doing work.

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

La présente invention concerne une structure de traitement de données comprenant une chaîne de blocs de données qui contiennent une structure d'arbre binaire, chacun desdits blocs de données contenant un nombre de noeuds prédéfini.
PCT/AU2001/001250 2000-10-04 2001-10-04 Structure de traitement de donnees WO2002029624A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2001293509A AU2001293509A1 (en) 2000-10-04 2001-10-04 Data processing structure

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US23753000P 2000-10-04 2000-10-04
US60/237,530 2000-10-04

Publications (1)

Publication Number Publication Date
WO2002029624A1 true WO2002029624A1 (fr) 2002-04-11

Family

ID=22894119

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/AU2001/001250 WO2002029624A1 (fr) 2000-10-04 2001-10-04 Structure de traitement de donnees

Country Status (2)

Country Link
AU (1) AU2001293509A1 (fr)
WO (1) WO2002029624A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7512616B2 (en) * 2003-11-20 2009-03-31 International Business Machines Corporation Apparatus, system, and method for communicating a binary code image

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2196764A (en) * 1986-10-30 1988-05-05 Apple Computer Hierarchical file system
WO1994002898A1 (fr) * 1992-07-24 1994-02-03 Microsoft Corporation Procede et systeme informatiques servant a attribuer et a liberer l'espace memoire
US5613105A (en) * 1993-06-30 1997-03-18 Microsoft Corporation Efficient storage of objects in a file system
US5644763A (en) * 1995-06-28 1997-07-01 Sybase, Inc. Database system with improved methods for B-tree maintenance
WO1998026353A2 (fr) * 1996-12-12 1998-06-18 Network Associates, Inc. Systeme de fichiers informatiques reconstituables

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2196764A (en) * 1986-10-30 1988-05-05 Apple Computer Hierarchical file system
WO1994002898A1 (fr) * 1992-07-24 1994-02-03 Microsoft Corporation Procede et systeme informatiques servant a attribuer et a liberer l'espace memoire
US5613105A (en) * 1993-06-30 1997-03-18 Microsoft Corporation Efficient storage of objects in a file system
US5644763A (en) * 1995-06-28 1997-07-01 Sybase, Inc. Database system with improved methods for B-tree maintenance
WO1998026353A2 (fr) * 1996-12-12 1998-06-18 Network Associates, Inc. Systeme de fichiers informatiques reconstituables

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
STORNETTA ET AL: "Implementation of an efficient parallel BDD package", DAC'96, 1996 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7512616B2 (en) * 2003-11-20 2009-03-31 International Business Machines Corporation Apparatus, system, and method for communicating a binary code image

Also Published As

Publication number Publication date
AU2001293509A1 (en) 2002-04-15

Similar Documents

Publication Publication Date Title
US5897636A (en) Distributed object computer system with hierarchical name space versioning
Wormald Generating random regular graphs
Burkhard Interpolation-based index maintenance
Belazzougui Linear time construction of compressed text indices in compact space
US10545915B2 (en) Recursive multi-threaded file system scanner for serializing file system metadata exoskeleton
US10191998B1 (en) Methods of data reduction for parallel breadth-first search over graphs of connected data elements
US5727204A (en) Database organization for rapid multi-set membership determination
WO2013174452A1 (fr) Exportation de données dirigée par méta-modèle depuis une base de données et importation de données dirigée par méta-modèle vers une base de données
EP1971939A2 (fr) Vidage/restauration de systeme de fichiers par numerotage de noeud
US7991976B2 (en) Permanent pool memory management method and system
US20170277687A1 (en) System and methods for searching documents in a relational database using a tree structure stored in a tabular format
US11080334B1 (en) Graph representation system and methods
CN106503186A (zh) 一种数据管理方法、客户端及系统
CN107153692B (zh) 一种字符串匹配的方法及设备
WO2002029624A1 (fr) Structure de traitement de donnees
Gavruskin et al. Dynamic algorithms for monotonic interval scheduling problem
JP2629034B2 (ja) 長さに制限のない識別名をもつデータのファイル管理方式
Naor String matching with preprocessing of text and pattern
CN116186045A (zh) 稀疏矩阵的调整方法、装置、电子设备及存储介质
Andersson et al. Construction of a tree from its traversals in optimal time and space
Evangelista et al. Memory efficient state space storage in explicit software model checking
CN113377364B (zh) 基于节点历史值的树形结构组织编辑操作回撤方法
US20020161758A1 (en) System and method for mining patterns from a dataset
CN108984780B (zh) 基于支持重复键值树数据结构管理磁盘数据的方法和装置
Wald A stack-free traversal algorithm for left-balanced kd trees

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PH PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP