DE19743267C1 - Verfahren zum Aufsuchen einer Adresse in einem teilbesetzten, nicht balancierten Binären Baum - Google Patents
Verfahren zum Aufsuchen einer Adresse in einem teilbesetzten, nicht balancierten Binären BaumInfo
- Publication number
- DE19743267C1 DE19743267C1 DE19743267A DE19743267A DE19743267C1 DE 19743267 C1 DE19743267 C1 DE 19743267C1 DE 19743267 A DE19743267 A DE 19743267A DE 19743267 A DE19743267 A DE 19743267A DE 19743267 C1 DE19743267 C1 DE 19743267C1
- Authority
- DE
- Germany
- Prior art keywords
- entry
- level
- search
- address
- searched
- 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.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3081—ATM peripheral units, e.g. policing, insertion or extraction
- H04L49/309—Header conversion, routing tables or routing tags
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/742—Route cache; Operation thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3009—Header conversion, routing tables or routing tags
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
Der Anmeldungsgegenstand betrifft ein Verfahren zum Aufsuchen
einer Adresse in einem teilbesetzten, nicht-balancierten Bi
nären Baum.
Vor allem im Bereich ATM (Asynchroner Transfer Mode) und
auch des Ethernet Routings muß bei einem großen Adressbereich
(typ. M = 2ˆ33 Adressen) schnell und effizient festgestellt
werden können, ob eine Adresse gültig ist. Die Anzahl gülti
ger Adressen ist hierbei mit N = 2ˆ14 = 16000 meist relativ
klein. Während somit die Speicherung der gültigen Daten mit
wenigen Mbyte Speicher behandelt werden kann, ist eine Be
handlung des gesamten Adressvorrates mit mehreren Gigabyte
Speicher nicht wirtschaftlich möglich. In der Vermittlungs
technik tritt zudem die Anforderung auf, bislang gültige
Adressen zu löschen und neue gültige Adressen einzufügen.
Ein möglicher Ansatz, der aufgezeigten Problematik zu begeg
nen, basiert auf einer Restriktion der Adressvergabe. Es wer
den immer größere Adressbereich auf einmal vergeben. Dies
führt jedoch zu einen schlechten Ausnutzung des verfügbaren
Speicherbereiches, zudem sind nachträgliche Änderungen des
vergebenen Adressbereiches im nachhinein nur noch schwer,
oder nicht mehr möglich.
Ein weiterer Ansatz, der aufgezeigten Problematik zu begegnen,
basiert auf dem Einsatz eines CAM (Content Adressable Memory)
als Hardwarelösung. Dieses ASIC Element ist jedoch kein Stan
dardelement und der Einsatz daher mit relativ hohen Kosten
verbunden. Die derzeit verfügbaren Bausteine unterstützen
meist nur einen Adressbereich für 1k bis 8k Verbindungen.
Ein weiterer Ansatz, der aufgezeigten Problematik zu begegnen,
basiert auf dem Aufbau und der Verwendung eines Suchbaumes
(Binary tree), um iterativ die Adresse zu bestimmen. Die
Suchdauer ist hier von der Höhe des Baumes abhängig. Die mi
nimale Anzahl von Suchzugriffen liegt proportional zu log2N.
Durch Balancierung des Baumes ist eine Minimierung der Baum
struktur erreichbar.
Bisherige Implementierungen eines Suchverfahrens setzen auf
einen Suchbaum über die Zielmenge N auf. Die erreichbare
Suchdauer t = A.1,44.log2N ist zwar minimal (A Dauer eines
Einzelzugriffes, 1,44 Fibonacci Zahl als Limit für AVL Bäume,
3 Zugriffe für Rotations-Dopppelrotationsschritt), die Ba
lancierung benötigt jedoch maximal ca. tN = 3.A.1,44.
log2N = 69.A.
Eine minimale Baumstruktur weist zwar eine minimale Suchzeit
auf, zur Aufrechterhaltung der minimalen Baumstruktur bei Lö
schen oder Einfügen von Adressen ist eine umfangreiche Abar
beitung von Algorithmen erforderlich, die mit einem entspre
chenden Zeitbedarf einhergeht.
Dem Anmeldungsgegenstand liegt das Problem zugrunde, ein Ver
fahren anzugeben, das ein Optimierung der Suche von gültigen
Adressen aufweist.
Das Problem wird bei dem Anmeldungsgegenstand durch die Merk
male des Anspruchs 1 gelöst.
Beim Anmeldungsgegenstand ist der Zeitbedarf für das Aufsu
chen eines Eintrages kürzer oder allenfalls gleich lang als
der Zeitbedarf für das Aufsuchen eines Eintrages in einem ma
ximalen Suchbaum. Darüberhinaus erzielt der Anmeldungsgegen
stand gegenüber Suchverfahren, bei denen jede angesteuerte
Adresse mit der gesuchten Adresse verglichen wird, eine Stei
gerung der Vergleichsgeschwindigkeit mit sich. Der Anmel
dungsgegenstand, der nicht von einer Balancierung und damit
minimaler Suchtiefe (M statt N) ausgeht, weist eine minimier
te Abarbeitungsfunktion auf und bietet somit eine kostengün
stige Implementierung in Hardware (ASIC oder FPGA), wobei
eine Skalierung mit der jeweils verfügbaren Technologie gege
ben ist. Neben dem allgemeinen Suchen erlaubt der Anmeldungs
gegenstand auch das Suchen nach Minima und Maxima. Durch den
Einsatz von RAM-Strukturen und einem benutzerdefinierbaren
Vergleicher ergeben sich weitergehende Möglichkeiten zur Ver
knüpfung mit Statusbits, welche für zusätzliche Selektions
kriterien verwendet werden können.
Gemäß einer besonderen Weiterbildung des Anmeldungsgegenstan
des, die von einer Aufteilung des Suchbaumes in der ersten
Ebene nach Maßgabe des MSB (Most Signifikant Bit) 0 oder 1
ausgeht, erfolgt in der ersten Ebene (level 0) eine Verzwei
gung nach Maßgabe der ersten Bitstelle der gesuchten Adresse.
Diese Maßgabe erlaubt den Einsatz eines besonders einfachen
Hardware (schaltungstechnisch ausgeführten) Komparators.
Gemäß einer besonderen Weiterbildung des Anmeldungsgegenstan
des werden die Einträge der ersten Ebene (level 0) und sich
daran anschließender Ebenen (level I, II, . . .) in einem Bereich
des RAM-Speichers gemappt. Diese Maßnahme bringt durch di
rektes Adressmapping eine Verkürzung des M-Suchbaumes mit
sich.
Der Anmeldungsgegenstand wird im folgenden als Ausführungs
beispiel in einem zum Verständnis erforderlichen Umfang an
hand von Figuren näher beschrieben. Dabei zeigen:
Fig. 1 zeigt den prinzipiellen Aufbau eines Binären Feldes
der Tiefe 4 mit 2ˆ4 = 16 Elementen, also gewissermaßen
den gesamten Wertevorrat.
Fig. 2 zeigt als Beispiel eine Anzahl von 10 gültigen Adres
seinträgen {0, 1, 2, 7, 8, 9, 11, 13, 15, 25}.
Fig. 3 die Adresseinträge aus Fig. 2 in Binärdarstellung
Fig. 4 zeigt den aus Fig. 2 sich ergebenden teilgefüllten
Suchbaum
Fig. 5 zeigt den minimalen, balancierten Suchbaum
Fig. 6 zeigt den Ersetzungsvorgang im teilgefüllten Suchbaum
Fig. 7 zeigt eine Schaltungsanordnung zur Verkürzung des
Suchvorgangs.
In den Figuren bezeichnen gleiche Bezeichnungen gleiche Ele
mente.
Fig. 1 zeigt den prinzipiellen Aufbau eines Binären Feldes mit
den Leveln I, II, III und IV.
Fig. 2 zeigt einen im Beispiel mit 10 gültigen Adresseinträgen
{0, 1, 2, 7, 8, 9, 11, 13, 15, 25} teilbesetzten Suchbaum. Durch die
Verwendung des vollständigen binären Feldes ist die Position
jedes Eintrages genau festgelegt. Die maximale Suchlänge ist
durch die Höhe des Baumes mit H = log2M bestimmt.
Fig. 3 zeigt die Adresseinträge aus Fig. 2 in Binärdarstellung.
Ein Eintrag hat im Prinzip folgenden Aufbau:
In einem Adressraum mit M=2ˆ33 Adressen benötigt die Durch
führung der Suche bei Verwendung der Binären Suche im teilbe
setzten binären Feld bei typ. Anwendungen mit KM = log2M = 33
Zugriffe, statt KN = log2N = 16. Dennoch ist bei einer Verkür
zung des Suchbaumes um z. B. C = 13 Höhen (d. h. 2ˆ13 = 8k direkte
Pointer, 4 Zugriffe für ersten Pointerzugriff) mit tMax = A/2.
(4+log2(M-C)) = 22.A ein günstigeres worst case Zeitverhalten
erreichbar.
Fig. 4 zeigt den aus Fig. 2 sich ergebenden teilgefüllten Such
baum. Der Suchbaum ist zwar in der Höhe nicht minimal, jedoch
ist seine maximale Höhe auf H beschränkt.
Fig. 5 zeigt den minimalen balancierten Suchbaum wie er sich
für das Beispiel aus Fig. 2 ergeben würde. Der balancierte
Suchbaum hat in diesem Falle eine um 1 geringere Höhe als der
in Fig. 4. Um diesen Suchbaum zu erhalten müssen viele Posi
tionen umsortiert werden. U ≈ N.log2N Operationen sind im
schlimmsten anzunehmenden Fall (worst case) notwendig.
Falls nicht alle Binärwurzeln besetzt sind, so ergibt sich
als Resultat stets eine Verkürzung des maximalen Baumes.
Bei der Suche nach einem Eintrag in dem in Fig. 2 bzw. in Fig. 3
dargestellten Suchbaum ist für die Entscheidung in Level 0
lediglich die (2ˆm-0)erste Bitstelle relevant, daher ist die
Breite des Komparators stark reduzierbar. Dies macht sich
insbesondere bei Einsatz eines Hardwarevergleichers
(schaltungstechnisch ausgeführten Vergleichers) vorteilhaft
bemerkbar.
Für die Suche nach Eintrag {25} (Entry{25}) erfolgt der Ver
gleich im i-ten Rekursionsschritt entsprechend an der Bit
stelle <2ˆm-i<. Durch fehlende Einträge in der binären Liste
(missing link) erfolgt hier also die Bewertung ansich an ei
ner nicht zutreffenden Bitposition. Durch Einbeziehung der
bereits abgearbeiteten Stellen mit fehlenden Einträgen in ei
nem parallel durchgeführten Vergleich ist dies erkennbar und
berücksichtigbar, wobei die Pointerselektion (P_lower,
P_upper) gegebenenfalls korrigiert wird. Dies hat jedoch
keinen Einfluß auf die worst case Suchgeschwindigkeit, da in
diesem Falle (mindestens eine Ebene ist nicht besetzt) so
zusagen der Eintrag zu früh erreicht wurde. Der parallele
Vergleich über alle abgearbeiteten Bitpositionen kann eben
falls "langsam" von <i< nach <i+1< erfolgen, da bei einem
Missmatch in V Bitpositionen, folglich V Suchpositionen über
spungen und damit ebensoviele Vergleichsoperationen gespart
wurden.
Fig. 6 zeigt den Ersetzungsvorgang im teilgefüllten Suchbaum.
Soll z. B. der Entry{7} aus einer bestehenden Liste entfernt
werden, so übernimmt der nächstgrößte Entry dessen Position.
Im vorliegenden Falle muß somit bis zum Entry{7} gesucht wer
den, dessen Position wird gespeichert; anschließend wird un
ter Entry{7} - P_upper nach dem kleinsten Entry (am weite
sten links) gesucht, und Entry{15} - P_lower nun neu auf die
Position von Entry{8} gesetzt (Aktion_1). Entry{8} erhält die
gespeicherten Pointer auf Entry{7} - P_lower und Entry{7} -
P_upper (Aktion_2), der Pointer Entry{11} - P_lower erhält
gegebenenfalls noch den Wert Entry{8} - P_upper (Aktion_3).
Der Löschvorgang benötigt also 3 Aktionen mehr, als ein ver
gleichbarer reiner Suchzugriff.
Ein anschließender Einfügevorgang für Entry{7}, mit neuem En
try{7}, Aktualisierung von Entry{9}. P_lower und En
try{15}. P_lower benötigt ebenfalls 3 Aktionen.
Der vorgeschlagene Algorithmus erlaubt nicht nur eine Suche
vergleichbar mit CAM Zugriffen, er bietet ebenso die Möglich
keit sortiert z. B. gezielt auf den kleinsten oder größten
Eintrag zuzugreifen. Ein erweiterter Einsatz z. B. zur Sortie
rung von Datenzellen anhand von Folgenummern (Sequencenumber
oder Timestamp, Ausheilen bei Random Routing) ist unterstütz
bar.
Wie bereits erwähnt benötigt in einem Adressraum mit M=2ˆ33
Adressen die Durchführung der Suche bei Verwendung der Binä
ren Suche im teilbesetzten binären Feld bei typ. Anwendungen
mit KM = log2M= 33 Zugriffe, statt KN = log2N = 16.
Eine Möglichkeit zur Verkürzung des Suchvorganges ist durch
eine Verkürzung der Suchtiefe gegeben. Bei einer Verkürzung
des Suchbaumes um z. B. C = 13 Höhen (d. h. 2ˆ13 = 8k direkte Poin
ter, 4 Zugriffe für ersten Pointerzugriff) mit tMax = A/2.
(4+log2(M-C))=22.A ist ein günstigeres worst case Zeitverhal
ten erreichbar.
Da die Anordnung sortiert erfolgt, kann z. B. der obere Teil
des Suchbaumes direkt in einem RAM (Random Access Memory,
Speicher mit wahlfreiem Zugriff) Bereich gemappt werden. Mit
2ˆn Einträgen muß dann die Suche erst ab Level n beginnen.
Stehen beispielsweise 16k Speicherentries zur Verfügung, redu
ziert sich die Suchtiefe um 14. Alternativ hierzu sind in den
16k DirectMappings auch alle möglichen Entries des Levels n+1
speicherbar. Die Suchtiefe reduziert sich dann um 15; bei ei
ner Suche oberhalb von Level 15 beginnt die Suche bei der Ur
wurzel.
Eine weitere Möglichkeit zur Beschleunigung des Suchvorganges
ist dadurch gegeben, daß das Suchprinzip auf mehr als 2 Poin
ter erweitert wird. Bei Verwendung von zweckmäßigerweise 2ˆi
Pointern ergibt sich eine Baumhöhe von H = log2M/i.
Fig. 7 zeigt eine Hardwarerealisierung für eine Suche mit 4
Pointern, bei der es nicht zwingend notwendig ist, die Poin
terwerte an den Vergleicher heranzuführen.
Ein Entry-RAM wird über einen Tristate Bus von genau der
Pointer RAM aus einer Mehrzahl von Pointer RAM's (Pointer 1
RAM . . . Pointer i RAM) adressiert, deren Ausgang über ein Chip-
Selekt-Signal wirksamgeschaltet ist. Liegen P_upper und
P_lower in der selben Pointer RAM, womit keine Selektion ei
nes Tristate Busses über Chipselekt möglich ist, kann ein ex
terner Multiplexer vorgesehen sein. Der Ausgang des Entry-RAM
ist mit dem Vergleicher verbunden.
Beispiel: stehen wie bei STM1 64 Takte zur Auflösung eines
Entries aus 8k möglichen zur Verfügung, so kann dies durch
Verwendung eines 1Mbit RAMs 32k.32 erreicht werden. In 16k
stehen 32k DirectMappings zur Verfügung (2 Takte); Reduzie
rung der Suchtiefe um 15. Bei 3 Zugriffen zur Bewertung des
Entries (Anlegen Adresse; Lesen Entry; Lesen Pointer) werden
für die Suche in 17 Level 16.3 = 51 Takte benötig. Verbindungs
aufbau und Abbau ist in Leerzyklen möglich, maximal sollten
hierfür 51+2+3=56 Takte erforderlich sein.
Claims (4)
1. Verfahren zum Aufsuchen einer Adresse in einem teilbesetz
ten, nicht-balancierten Binären Baum, demzufolge
- - mit jedem gültigen Eintrag in einem Suchbaum mindestens zwei Zeiger (pointer lower, pointer upper) abspeicherbar sind, die jeweils auf einen gültigen Eintrag einer tieferen Ebene (level 0, I, II, III, IV) verweisen,
- - bei Erreichung eines Eintrags in einer Ebene nach Maßgabe des Vergleichsergebnisses zwischen gesuchter Adresse und vorliegenden Zeigern in Richtung auf den gesuchten Eintrag zu einem Eintrag der nächst tieferen Ebene verzweigt wird,
- - parallel mit dem Verzweigungsvorgang zu einem Eintrag in die nächst tiefere Ebene ein Vergleich des Eintrags mit der gesuchten Adresse auf Übereinstimmung durchgeführt wird.
2. Verfahren nach Anspruch 1,
dadurch gekennzeichnet,
daß in der ersten Ebene (level 0) eine Verzweigung nach Maß
gabe der ersten Bitstelle der gesuchten Adresse erfolgt.
3. Verfahren nach einem der vorstehenden Ansprüche,
dadurch gekennzeichnet, daß
- - die Einträge der ersten Ebene (level 0) und sich daran an schließender Ebenen (level I, II, . . .) in einem Bereich des RAM-Speichers gemappt werden,
- - bei der Suche nach einer Adresse geprüft wird, ob sie sich in einer tieferen Ebene als der, für die die Einträge ge mappt sind, befindet und gegebenenfalls in der entsprechen den Wurzel weitergesucht wird,
- - andernfalls die Suche in der Urwurzel begonnen wird.
4. Verfahren nach einem der vorstehenden Ansprüche,
dadurch gekennzeichnet,
daß für jeden Eintrag mehr als zwei Zeiger abspeicherbar
sind.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19743267A DE19743267C1 (de) | 1997-09-30 | 1997-09-30 | Verfahren zum Aufsuchen einer Adresse in einem teilbesetzten, nicht balancierten Binären Baum |
PCT/DE1998/002550 WO1999017225A1 (de) | 1997-09-30 | 1998-08-31 | Verfahren zum aufsuchen einer adresse in einem teilbesetzten, nicht-balancierten binären baum |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19743267A DE19743267C1 (de) | 1997-09-30 | 1997-09-30 | Verfahren zum Aufsuchen einer Adresse in einem teilbesetzten, nicht balancierten Binären Baum |
Publications (1)
Publication Number | Publication Date |
---|---|
DE19743267C1 true DE19743267C1 (de) | 1998-12-03 |
Family
ID=7844196
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19743267A Expired - Fee Related DE19743267C1 (de) | 1997-09-30 | 1997-09-30 | Verfahren zum Aufsuchen einer Adresse in einem teilbesetzten, nicht balancierten Binären Baum |
Country Status (2)
Country | Link |
---|---|
DE (1) | DE19743267C1 (de) |
WO (1) | WO1999017225A1 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102010061280A1 (de) | 2010-12-16 | 2012-06-21 | Klaus Benecke | Verfahren zur Umstrukturierung von Daten sowie Computerprogramm zu seiner Ausführung |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2367917A (en) | 2000-10-12 | 2002-04-17 | Qas Systems Ltd | Retrieving data representing a postal address from a database of postal addresses using a trie structure |
US7908242B1 (en) | 2005-04-11 | 2011-03-15 | Experian Information Solutions, Inc. | Systems and methods for optimizing database queries |
US8005759B2 (en) | 2006-08-17 | 2011-08-23 | Experian Information Solutions, Inc. | System and method for providing a score for a used vehicle |
US7912865B2 (en) | 2006-09-26 | 2011-03-22 | Experian Marketing Solutions, Inc. | System and method for linking multiple entities in a business database |
US8036979B1 (en) | 2006-10-05 | 2011-10-11 | Experian Information Solutions, Inc. | System and method for generating a finance attribute from tradeline data |
US8606666B1 (en) | 2007-01-31 | 2013-12-10 | Experian Information Solutions, Inc. | System and method for providing an aggregation tool |
US8285656B1 (en) | 2007-03-30 | 2012-10-09 | Consumerinfo.Com, Inc. | Systems and methods for data verification |
WO2008147918A2 (en) | 2007-05-25 | 2008-12-04 | Experian Information Solutions, Inc. | System and method for automated detection of never-pay data sets |
US9690820B1 (en) | 2007-09-27 | 2017-06-27 | Experian Information Solutions, Inc. | Database system for triggering event notifications based on updates to database records |
US8312033B1 (en) | 2008-06-26 | 2012-11-13 | Experian Marketing Solutions, Inc. | Systems and methods for providing an integrated identifier |
US9152727B1 (en) | 2010-08-23 | 2015-10-06 | Experian Marketing Solutions, Inc. | Systems and methods for processing consumer information for targeted marketing applications |
US9147042B1 (en) | 2010-11-22 | 2015-09-29 | Experian Information Solutions, Inc. | Systems and methods for data verification |
US9483606B1 (en) | 2011-07-08 | 2016-11-01 | Consumerinfo.Com, Inc. | Lifescore |
US9853959B1 (en) | 2012-05-07 | 2017-12-26 | Consumerinfo.Com, Inc. | Storage and maintenance of personal data |
US9697263B1 (en) | 2013-03-04 | 2017-07-04 | Experian Information Solutions, Inc. | Consumer data request fulfillment system |
US10102536B1 (en) | 2013-11-15 | 2018-10-16 | Experian Information Solutions, Inc. | Micro-geographic aggregation system |
US9529851B1 (en) | 2013-12-02 | 2016-12-27 | Experian Information Solutions, Inc. | Server architecture for electronic data quality processing |
US10262362B1 (en) | 2014-02-14 | 2019-04-16 | Experian Information Solutions, Inc. | Automatic generation of code for attributes |
US9576030B1 (en) | 2014-05-07 | 2017-02-21 | Consumerinfo.Com, Inc. | Keeping up with the joneses |
US10445152B1 (en) | 2014-12-19 | 2019-10-15 | Experian Information Solutions, Inc. | Systems and methods for dynamic report generation based on automatic modeling of complex data structures |
WO2018039377A1 (en) | 2016-08-24 | 2018-03-01 | Experian Information Solutions, Inc. | Disambiguation and authentication of device users |
CN110383319B (zh) | 2017-01-31 | 2023-05-26 | 益百利信息解决方案公司 | 大规模异构数据摄取和用户解析 |
US10963434B1 (en) | 2018-09-07 | 2021-03-30 | Experian Information Solutions, Inc. | Data architecture for supporting multiple search models |
US11941065B1 (en) | 2019-09-13 | 2024-03-26 | Experian Information Solutions, Inc. | Single identifier platform for storing entity data |
US11880377B1 (en) | 2021-03-26 | 2024-01-23 | Experian Information Solutions, Inc. | Systems and methods for entity resolution |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2117846C (en) * | 1993-10-20 | 2001-02-20 | Allen Reiter | Computer method and storage structure for storing and accessing multidimensional data |
US5664183A (en) * | 1994-04-19 | 1997-09-02 | International Business Machines Corporation | Application of groupware to ISO 9000 registration via facilitated work sessions |
US5644763A (en) * | 1995-06-28 | 1997-07-01 | Sybase, Inc. | Database system with improved methods for B-tree maintenance |
-
1997
- 1997-09-30 DE DE19743267A patent/DE19743267C1/de not_active Expired - Fee Related
-
1998
- 1998-08-31 WO PCT/DE1998/002550 patent/WO1999017225A1/de active Application Filing
Non-Patent Citations (1)
Title |
---|
Six, Hans-Werner: Konzepte imperativer Programmierung, Kurseinheit 4: Programmierkonzepte orientiert an PASCAL (Teil 4),FernUniversität-Gesamtschule in Hagen, 1995, Kap. 6.1 (S. 196-206) * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102010061280A1 (de) | 2010-12-16 | 2012-06-21 | Klaus Benecke | Verfahren zur Umstrukturierung von Daten sowie Computerprogramm zu seiner Ausführung |
Also Published As
Publication number | Publication date |
---|---|
WO1999017225A1 (de) | 1999-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE19743267C1 (de) | Verfahren zum Aufsuchen einer Adresse in einem teilbesetzten, nicht balancierten Binären Baum | |
DE19743266C1 (de) | Verfahren zum Hinzufügen bzw. Entfernen einer Adresse in einem teilbesetzten Suchbaum | |
EP0010195B1 (de) | Vorrichtung zur Adressumwandlung in einer Datenverarbeitungsanlage | |
DE2346525C3 (de) | Virtuelle Speichereinrichtung | |
DE4410060B4 (de) | Übersetzungsvorrichtung zum Umsetzen einer virtuellen Speicheradresse in eine physikalische Speicheradresse | |
DE69701786T2 (de) | Verbesserte indirekte Adressierung für Dateisysteme | |
DE2131066C3 (de) | Anordnung zum Adressieren eines Tabellenspeichers | |
DE3011552C2 (de) | ||
DE69132356T2 (de) | Verfahren und Gerät zur Zeigerkompression in strukturierten Datenbanken | |
DE3833933C2 (de) | Informationsverarbeitungseinrichtung mit einer Adressenerweiterungsfunktion | |
EP0619667A1 (de) | Verfahren zum Zugriff auf Adressmerkmale von Kommunikationsteilnehmern mit einem ersten Adress Bereich, beim Versenden von Datenpaketen | |
DE1956604B2 (de) | Datenverarbeitungsanlage | |
DE69424315T2 (de) | Vorrichtung und verfahren zum abbilden von bits | |
DE2339741A1 (de) | Anordnung zur bildung einer relativen adresse fuer einen speicher | |
DE1499182B2 (de) | Datenspeichersystem | |
DE69629540T2 (de) | Verfahren und Gerät zum Sortieren von Elementen | |
DE69104625T2 (de) | Seitenverwaltungsverfahren mit erweiterungstabellen. | |
DE3025167C2 (de) | Datenverarbeitungseinrichtung | |
DE69126898T2 (de) | Vorrichtung und Verfahren zum Steuern eines Cache-Speichers | |
EP0009625A2 (de) | Datentransferschalter mit assoziativer Adressauswahl in einem virtuellen Speicher | |
DE69132182T2 (de) | System und Verfahren zum Abruf von Zeichenreihen | |
EP0176939B1 (de) | Datenverarbeitungsanlagen mit virtueller Speicheradressierung für eine Vielzahl von Benutzern | |
WO2005093580A1 (de) | Speicherbereinigung (garbage collection) für smart cards | |
DE2816838C2 (de) | Verfahren und Prioritätssteuereinheit zum Zuordnen von Prioritäten | |
DE2246405C3 (de) | Schaltungsanordnung zum Adressieren eines Speichersystems mit logischen Adressen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8100 | Publication of the examined application without publication of unexamined application | ||
D1 | Grant (no unexamined application published) patent law 81 | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |