You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »


Table of Contents


Data Structure Approaches

 

 

  In-memory Processing   
Triple Store Data StructureIn-memory Data StructureDirect
access
at
loaded
position
Direct
access
URI as ID
Iteration
foward

Iteration
backward

Append
after
last
loaded

Append
after
global
last
Insert
after
loaded
item
Insert
before
loaded
item
Insert
after
loaded
position
Insert
before
loaded
position
Delete
loaded
item
Delete
from
loaded
position
Fetch
one by
global
position

Fetch
one by URI

Fetch
range
Fetch
next
range
Persist
one at
global
position
Persist
one by
URI
Persist
range
IssuesORE ComplianceComments
singly linked list                       
 singly linked listNONOFASTNOSLOWSLOWFASTSLOWNONOSLOWNONOFASTSLOWSLOWNOFASTSLOW   
 convert to array on fetchFASTNOFASTFASTFASTSLOWFASTFASTFASTFASTFASTFASTNOFASTSLOWSLOWNOFASTSLOW   
 convert to hash (key=proxy URI) on fetchNOFASTFASTNOFASTSLOWFASTFASTNONOFASTNONOFASTSLOWSLOWNOFASTSLOW   
 header info + singly linked list                      
 header info + convert to array on fetch                      
 header info + convert to hash (URI key) on fetch                      
singly linked list + order index                       
 singly linked listNO                     
 convert to array on fetch                      
 convert to hash (URI key) on fetch                      
 header info + singly linked list                      
 header info + convert to array on fetch                      
 header info + convert to hash (URI key) on fetch                      
doubly linked list                       
 doubly linked list                      
 convert to array on fetch                      
 convert to hash (URI key) on fetch                      
 header info + singly linked list                      
 header info + convert to array on fetch                      
 header info + convert to hash (URI key) on fetch                      
doubly linked list + order index                       
 doubly linked list                      
 convert to array on fetch                      
 convert to hash (URI key) on fetch                      
 header info + singly linked list                      
 header info + convert to array on fetch                      
 header info + convert to hash (URI key) on fetch                      

 

List Header Info

Lists with headers will hold the following information.

  example value typesComments
keydescription of valuesingly
linked
singly
linked
+ order
doubly
linked
doubly
linked
+ order
arrayhash 
firstpointer to first item in listURI of first proxyURI of first proxyURI of first proxyURI of first proxyURI of first proxyURI of first proxy 
lastpointer to last item in list XXURI of last proxyURI of last proxyURI of last proxyURI of last proxy 
countcount of all items in listXXXXXX 
first_loadedpointer to first item in loaded range of itemsitemitemitemitemarray[0]URI of proxy 
last_loadedpointer to last item in loaded range of itemsXXitemitemarray[size of array]URI of proxy 
count_loadedcount of items in currently loaded rangeXXX=position of last
- position of first
size of arraysize of hash 
resume_tokenpointer to item after last_loadedURI of proxyURI of proxyURI of proxyURI of proxyURI of proxyURI of proxy 
loaded_itemspointer to loaded itemsuse first_loadeduse first_loadeduse first_loadeduse first_loadedarrayhash 

 

List Item Info

  example value types 
keydescription of valuesingly
linked
singly
linked
+ order
doubly
linked
doubly
linked
+ order
arrayhashComments
uriURI of proxy for this itemURI of this proxyURI of this proxyURI of this proxyURI of this proxyURI of this proxyURI of this proxyThis is the hash key for loaded_items when the list is implemented as a hash.
prevpointer to previous item in listXXURI of prev proxyURI of prev proxy= p - 1URI of prev proxy 
nextpointer to next item in listURI of next proxyURI of next proxyURI of next proxyURI of next proxy= p + 1URI of next proxy 
prev_loadedpointer to previous item in loaded range of itemsXXprev itemprev item= pl - 1URI of prev proxy 
next_loadedpointer to next item in loaded range of itemsnext itemnext itemnext itemnext item= pl + 1URI of next proxy 
proxyForURI of list item being aggregatedURIURIURIURIURIURI 
proxyInURI of list aggregationURI of
aggregation
URI of
aggregation
URI of
aggregation
URI of
aggregation
URI of
aggregation
URI of
aggregation
 
proxyIn_loadedpointer to List Headerheaderheaderheaderheaderheaderheader 
position (p)position in full listXpXppX 
position_loaded (pl)position in loaded range of itemsXplXplplX 

 

 


 

 

 

  • No labels