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 Baum

Info

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
Application number
DE19743267A
Other languages
English (en)
Inventor
Roland Dipl Ing Brueckner
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Priority to DE19743267A priority Critical patent/DE19743267C1/de
Priority to PCT/DE1998/002550 priority patent/WO1999017225A1/de
Application granted granted Critical
Publication of DE19743267C1 publication Critical patent/DE19743267C1/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3081ATM peripheral units, e.g. policing, insertion or extraction
    • H04L49/309Header conversion, routing tables or routing tags
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/742Route cache; Operation thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3009Header 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.
DE19743267A 1997-09-30 1997-09-30 Verfahren zum Aufsuchen einer Adresse in einem teilbesetzten, nicht balancierten Binären Baum Expired - Fee Related DE19743267C1 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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