Segment bitmap encoding and transcoding

The multi-component system with bitmap encoding and metadata association addresses storage and computational challenges in identity graphs, achieving efficient and scalable segmentation by reducing storage requirements and processing latency.

WO2026064232A1PCT designated stage Publication Date: 2026-03-26LIVERAMP
View PDF 3 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-09-15
Publication Date
2026-03-26

AI Technical Summary

Technical Problem

Traditional segmentation approaches for identity graphs face significant computational and storage limitations when dealing with petabyte-scale datasets, leading to cost-prohibitive deployment across multiple cloud regions and operational inefficiencies.

Method used

A multi-component system utilizing bitmap encoding and metadata association for efficient segment representation and storage, where each bit in a binary string corresponds to a unique segment, accompanied by a metadata table for comprehensive descriptive information, enabling rapid membership verification and dynamic updates.

Benefits of technology

The system achieves remarkable storage optimization (100x reduction) and processing latency improvement (from days to minutes), allowing deployment across complex cloud networks and reducing environmental impact.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure US2025046347_26032026_PF_FP_ABST
    Figure US2025046347_26032026_PF_FP_ABST
Patent Text Reader

Abstract

A multi-component system for identity resolution and customer segmentation utilizes bitmap encoding to overcome storage and processing limitations of traditional approaches. The system comprises a bitmap encoding processor that associates binary strings with user identities in an identity graph, where each bit corresponds to a unique segment and indicates user membership through bit state. A metadata association table stores descriptive information for each segment and dynamically links to the encoding processor for automatic updates. The binary strings serve dual purposes as both segment representations and user identifiers, eliminating separate identifier systems. The system can be implemented as a software development kit and deployed across various hardware architectures, making previously cost-prohibitive large-scale segmentation operations computationally feasible.
Need to check novelty before this filing date? Find Prior Art

Description

Attorney Docket No. RAMP-00300-WOSEGMENT BITMAP ENCODING AND TRANSCODINGCROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This application claims priority to US Provisional Patent App. No. 63 / 697,862, filed on September 23, 2024. Such application is incorporated by reference in its entirety.BACKGROUN D OF TH E INVENTION

[0002] Personally Identifiable Information (PH) refers to data that can be used to identify, contact, or locate a specific individual or user. This includes direct identifiers such as names, addresses, and social security numbers, as well as indirect identifiers that can be combined with other information to identify a person.

[0003] Identity resolution is the process of combining multiple identifiers and data points across various touchpoints to create a unified, accurate profile of an individual user. It involves linking disparate pieces of information from different sources to form a cohesive view of a person's identity across digital online and offline interactions. Often, an identifier of some sort will be associated with a resolved identity in order to refer to that identity in later processing.

[0004] Data as just described may be stored in an identity graph. An identity graph is a database that connects various data connected to a single user profile, enabling organizations to track and understand user behavior across different platforms and devices. The identifiers that are matched to resolved identities form a part of the identity graph. Identity graphs may be logically arranged as a collection of nodes interconnected by vertices, with data concerning users being stored as nodes and vertices connecting data that person to the same individual user. Various other types of data, such as touchpoints and devices, may also be stored as nodes within the identity graph.Attorney Docket No. RAMP-00300-WO

[0005] Identity graphs are often differentiated as being first-party, second-party, or third-party graphs. A first-party identity graph is one that is created and owned by a single organization using data collected directly from the users with which it interacts. A second-party identity graph is the first-party graph of a different organization; data may be shared from second-party identity graphs through a partnership between two or more organizations sharing their first- party data with each other. Third-party identity graphs contain data compiled by data aggregators using data from multiple sources, generally without direct relationships with the users about whom they collect data. The owners of these third-party identity graphs may provide services to the owners of first-party graphs, whereby the first-party graphs are improved in various ways using data from the provider's more comprehensive third-party graph.

[0006] The consolidation of an individual user's PH, touchpoints, and devices used by the individual into data graphs is a central aspect to effective messaging. To further support such messaging, user data may be divided into segments. Segmentation refers to the process of dividing a broad user base into smaller, more distinct groups of users based on shared characteristics. These groups, or segments, typically share similar needs, preferences, behaviors, or demographic traits.

[0007] Segments may be based on, for example, demographics (age, gender, income, education, etc.); psychographics (lifestyle, values, interests, etc.); behavioral patterns (purchasing habits, brand loyalty, etc.); and geographic location (city, state, country, etc.). Traditionally, segmentation has been achieved in a number of different ways, including cluster analysis, decision trees, neural networks, and rule-based segmentation.

[0008] Traditional segmentation approaches rely on storing data flat, leading to storage bottlenecks and query performance limitations, especially for large and diverse user bases. Furthermore, adapting such systems to evolving messaging strategies and user audienceAttorney Docket No. RAMP-00300-WO segmentations can be cumbersome and resource-intensive. Given the size of the underlying data in many practical applications, often on the order of petabytes, bringing prior solutions to all clouds and regions in a complex system is simply cost prohibitive. Improved systems and methods that make such a solution computationally feasible are therefore desired.SUMMARY OF THE INVENTION

[0009] The present invention is directed to a multi-component system to store and retrieve segment data per identifier for a user whose data is stored in an identity graph. The segmentation system leverages bitmap encoding and metadata association to enhance efficiency, flexibility, and scalability. The system utilizes compact binary strings for segment representation, offering significant storage savings and rapid membership verification for large user bases. A comprehensive metadata association table provides a detailed context for each segment, enabling audience-specific tailoring and dynamic attribute retrieval. The system and methods using this system render such operations computationally feasible even when using extremely large data sets stored in identity graphs.

[0010] The present invention addresses fundamental challenges in modern identity resolution and customer segmentation systems that process massive datasets containing personally identifiable information (PH). Traditional segmentation approaches suffer from significant computational and storage limitations when dealing with petabyte-scale identity graphs, making deployment across multiple cloud regions cost-prohibitive and operationally inefficient.

[0011] In certain embodiments, the invention introduces a revolutionary multi-component segmentation system built around two primary components. The first component comprises a bitmap encoding processor that associates each user identity within an identity graph with a compact binary string, where each bit position corresponds to a unique segment within the universe of all possible user segments. The presence or absence of a user in any given segmentAttorney Docket No. RAMP-00300-WO is represented by the corresponding bit state, creating an extraordinarily efficient storage mechanism that dramatically reduces memory requirements compared to traditional flat data storage approaches.

[0012] The second component in such embodiments comprises a metadata association table that stores comprehensive descriptive information for each segment, including the segment's purpose and definition, membership criteria and rules, user audience-specific contextual details, and dynamic attribute information. The metadata table is dynamically linked to the bitmap encoding processor, ensuring automatic updates to segment definitions are reflected in realtime across the segment-mapping process.

[0013] In such embodiments, the system achieves remarkable storage optimization, reducing storage requirements by approximately lOOx in practical implementations. In documented prototype testing, the system compressed 40 petabytes of pre-segmented data into a manageable format, with identity membership information stored in just 40 gigabytes of cloud storage compared to 4 terabytes required by comparable traditional systems.

[0014] While conventional segmentation systems require days or weeks for processing operations, this bitmap-based approach in certain embodiments delivers equivalent functionality in minutes, representing orders-of-magnitude improvement in processing latency. The compact nature of the encoded data enables deployment to edge locations closer to customer and partner environments in complex cloud computing networks, facilitating distributed processing and reducing network latency.

[0015] An important innovation of the present invention in certain embodiments is the dual use of bitmap encodings as both segment representations and unique user identifiers within the identity resolution system. This eliminates the need for separate identifier management systems, reducing complexity and maintenance overhead while ensuring consistency across theAttorney Docket No. RAMP-00300-WO identity graph. The system incorporates optional encryption capabilities for the binary strings before their use as identifiers. Using common encryption algorithms, encrypted versions can be recreated on-demand at any location from the base binary string, enabling secure remote matching in distributed computing environments.

[0016] The invention in certain embodiments can be packaged as a comprehensive software development kit (SDK) that abstracts the complexity of bitmap encoding and decoding operations. The SDK facilitates seamless integration with existing client systems, automated encoding when clients send data to solution providers, efficient decoding of bitmap-formatted data received from providers, multi-language support for popular development platforms, and cloud function integration for developer convenience.

[0017] The encoded binary strings in certain embodiments can serve as a ubiquitous transaction medium throughout identity resolution ecosystems, allowing customers and partners to operate directly on the encoded format rather than relying on third-party identifier resolution systems. Beyond technical benefits, the system contributes to environmental sustainability by dramatically reducing computational resource requirements and associated carbon footprint across the entire industry.

[0018] The system in certain embodiments supports implementation across various hardware and software architectures, from single-processor systems to distributed multi-node cloud environments. The modular design allows for deployment on commodity servers or specialized hardware, integration with existing database and storage systems, network-based service implementations, and API-driven integration with external systems. The system fundamentally transforms the economics of large-scale identity resolution and segmentation by making previously cost-prohibitive operations computationally and economically feasible.Organizations can now deploy comprehensive segmentation capabilities across globalAttorney Docket No. RAMP-00300-WO infrastructure without the traditional barriers of storage costs and processing delays, enabling more sophisticated and responsive customer engagement strategies.

[0019] In one aspect, the invention is directed to a system for identity resolution, comprising a bitmap encoding processor configured to associate a binary string with each identity for a user within an identity graph, wherein each bit within the binary string corresponds to a unique segment within a universe of all possible segments to which a user may belong, a metadata association table configured to store descriptive information for each segment, and wherein the binary string associated with each identity is used as an identifier for resolving user identity within the system.

[0020] In another aspect, the invention is directed to a method for identity resolution comprising the steps of associating a binary string with each identity for a user within an identity graph to create an encoded binary string, wherein each bit within the encoded binary string corresponds to a unique segment within a universe of all possible segments to which a user may belong, storing descriptive information for each segment in a metadata association table, and using the encoded binary string associated with each identity as an identifier for resolving user identity within a system.

[0021] In another aspect, the invention is directed to a non-transitory computer-readable storage medium storing program instructions that, when executed by a processor, cause the processor to perform a method for identity resolution, the method comprising associating a binary string with each identity for a user within an identity graph, wherein each bit within the binary string corresponds to a unique segment within a universe of all possible segments to which a user may belong, storing descriptive information for each segment in a metadata association table, and using the binary string associated with each identity as an identifier for resolving user identity within a system.Attorney Docket No. RAMP-00300-WO

[0022] These and other features, objects and advantages of the present invention will become better understood from a consideration of the following detailed description of the preferred embodiments and appended claims in conjunction with the drawings as described following:BRIEF DESCRIPTION OF DRAWINGS

[0023] Fig. 1 is a diagram for an overall architecture of an embodiment of the present invention.

[0024] Fig. 2 is a schematic for a computing component of a computing cluster for implementing an embodiment of the present invention.DETAILED DESCRIPTION OF THE INVENTION

[0025] Before the present invention is described in further detail, it should be understood that the invention is not limited to the particular embodiments described, and that the terms used in describing the particular embodiments are for the purpose of describing those particular embodiments only, and are not intended to be limiting, since the scope of the present invention will be limited only by the claims.

[0026] As shown in Fig. 1, an embodiment of the invention is implemented as a multicomponent customer segmentation system in communication with an identity graph 16. A first component is the bitmap encoding processor 12, and a second component is the metadata association table 14.

[0027] Each identity for a user within the identity graph 16 is associated with a binary string10. Each bit within the binary string 10 corresponds with a unique segment within a universe of all possible segments to which a user may belong. The presence or absence of a user in a specific segment is indicated by the state of the corresponding bit. For example, a "1" value at a particular location of binary string 10 may represent inclusion of the user in that particularAttorney Docket No. RAMP-00300-WO segment corresponding to the bit, while a "0" value may represent exclusion of the user from that particular segment. This segment representation method dramatically reduces storage requirements compared to traditional methods, in which the entire segment data is stored for each user.

[0028] The bitmap encoding processor 12 manages segment-to-bit position assignments through a centralized segment registry that maintains a consistent mapping across the entire system. When the system is initialized, existing segments are assigned sequential bit positions starting from position zero, with each segment receiving a unique identifier that corresponds to its bit position within the binary string. As new segments are created, the system dynamically extends the binary string length by appending additional bit positions to accommodate the expanded segment universe. The segment registry maintains a hash table or similar data structure in other embodiments that maps segment identifiers to their corresponding bit positions, enabling rapid lookup during encoding and decoding operations. When segments are deprecated or removed, their corresponding bit positions may be marked as unused in the registry, though the binary strings retain their length to maintain consistency with existing encoded identifiers.

[0029] The metadata association table 14 stores rich descriptive information for each segment. This information may include the segment's purpose; its definition; its membership criteria; and user audience-specific details concerning the segment, in one particular example. It is dynamically linked to the bitmap encoding processor 12, ensuring that updates to segment definitions are automatically reflected in the segment-mapping process. By separating the metadata association table 14 and its segment information from the binary string 10 reflecting each user's segments, enormous improvements in computational and storage efficiency are achieved.Attorney Docket No. RAMP-00300-WO

[0030] The metadata association table 14 stores segment information in a structured format comprising multiple data fields for each segment entry. Each segment record includes a unique segment identifier that corresponds to its bit position, a human-readable segment name, a detailed textual description of the segment's purpose, Boolean logic expressions or rule sets defining membership criteria, creation and modification timestamps, versioning information to track changes over time, and extensible attribute fields for audience-specific customizations, in one example. The table structure supports hierarchical segment relationships, enabling parentchild segment dependencies and compound segment definitions. Data integrity is maintained through referential constraints that ensure segment identifiers in the metadata association table 14 correspond to valid bit positions in the encoding scheme.

[0031] When segment definitions are modified or new segments are added, the system employs a coordinated update mechanism to maintain consistency across all components. The metadata association table 14 serves as the authoritative source for segment definitions, and changes trigger cascading updates to the bitmap encoding processor 12 through event-driven notifications or polling mechanisms. During updates, the system maintains backward compatibility by preserving existing bit position assignments while appending new segments to unused positions. Version control mechanisms track changes to segment definitions, enabling rollback capabilities and audit trails. For distributed deployments, the system implements eventual consistency protocols to propagate updates across multiple nodes while minimizing temporary inconsistencies.

[0032] Because each binary string 10 reflects for a particular user in the identity graph 16 all of the various segments associated with the user, the binary string 10 may also be used as an identifier for that user within the identity graph 16. Thus these binary strings 10 may be used as identifiers within a system for resolving user identity. This eliminates entirely the need forAttorney Docket No. RAMP-00300-WO creating a separate system of identifiers for each user, which would need to be constantly maintained, updated, and edited as changes take place within the identity graph 16.

[0033] The encoding process follows a systematic algorithmic approach wherein user identity data is first retrieved from the identity graph 16, followed by evaluation of the user against all defined segments using the membership criteria stored in the metadata association table 14. For each segment evaluation, the corresponding bit position in the binary string is set to "1" if the user meets the membership criteria or "0" if the criteria are not satisfied. The resulting binary string is then optionally encrypted using the configured cryptographic algorithm before being stored or transmitted. The decoding process reverses this flow by decrypting the binary string 10 if necessary, then interpreting each bit position according to the current segment registry to reconstruct the user's segment memberships. This algorithmic approach ensures consistent and repeatable results across different system implementations and deployment environments.

[0034] To protect privacy, in certain embodiments the binary strings 10 may be encrypted before placed into use as identifiers. By using a common algorithm for encryption, the encrypted version may be recreated as desired and at any location from the base binary string 10 within the bitmap encoding processor 12, provided that the party has access to the unencrypted binary string 10 and the particular encryption algorithm used. This allows remote matching in, for example, a distributed computing system.

[0035] The privacy protection mechanism in certain embodiments employs standard cryptographic algorithms such as AES (Advanced Encryption Standard) or similar symmetric encryption methods to secure the binary strings 10 before their use as identifiers. The encryption process applies a common key and initialization vector to all binary strings 10 within a given deployment, ensuring that identical unencrypted binary strings 10 produce identicalAttorney Docket No. RAMP-00300-WO encrypted results for consistent matching across the system. The system may implement key rotation policies to enhance security, with new keys being distributed through secure channels and applied to newly generated encrypted identifiers. For cross-organizational data sharing, public-key cryptography may be employed to enable secure identifier matching without revealing the underlying segment information.

[0036] In certain embodiments, the invention may be implemented as a software development kit (SDK), which includes a set of software methods to encapsulate the bitmap encoding processor 12 and bitmap decoding (i.e., into human understandable format including the metadata) for ease of user development. The SDK assists with abstracting out details of bitmap encoding at bitmap encoding processor 12 when clients are sending data to the solution provider or when decoding data received from the provider's system in the bitmap-encoded format. The SDK may be implemented in various popular software languages and include a set of cloud functions for ease of developer use.

[0037] The system, in various embodiments, leverages bitmap encoding and metadata association to enhance efficiency, flexibility, and scalability. The system utilizes compact binary strings 10 for segment representation, offering significant storage savings and rapid membership verification for large user bases. The comprehensive metadata association table 14 provides a detailed context for each segment, enabling audience-specific tailoring and dynamic attribute retrieval.

[0038] The system, in various embodiments, improves existing capabilities of segmentation systems by significantly reducing the processing latency. While prior systems take days or even weeks for processing, this approach offers the same functionality in minutes, and at much lower costs.Attorney Docket No. RAMP-00300-WO

[0039] Additionally, the system, in various embodiments, allows for all players within an identity resolution ecosystem to operate on the encoded binary string 10. It may be made ubiquitous such that customers and partners in the ecosystem transact upon it rather than using other third-party identifier resolution systems.

[0040] The system incorporates multiple layers of error detection and correction mechanisms to handle corrupted or invalid bitmap strings 10. Checksum or hash verification algorithms validate the integrity of binary strings 10 during storage and retrieval operations. When corruption is detected, the system can regenerate the affected binary string 10 from the source identity graph 16 data and current segment definitions stored in the metadata association table 14. Invalid bit positions or malformed binary strings 10 trigger exception handling routines that log errors and attempt automatic recovery through re-encoding processes. The system maintains audit logs of all encoding and decoding operations to facilitate troubleshooting and data quality monitoring.

[0041] It has been found that in a particular example this bitmap storage approach significantly reduces storage requirements for segmented or membership data by lOOx, transforming approximately 40 PB of pre-segmented data into a much more manageable size. This efficient storage of the data allows a provider to deploy this data to the edges, closer to customer and partner environments in complex cloud-computing networks.

[0042] In a prototype application, identity membership information was stored in 40 GB of cloud "blob" storage compared to the 4TB of storage required in a comparable prior system. This not only enhances storage efficiency and performance but also contributes to reducing the carbon footprint across the entire industry.

[0043] Additionally, and as previously noted, the compiled bitmap 10 serves as a transcoded identifier, which may be utilized by downstream systems across the entire ecosystem. ThisAttorney Docket No. RAMP-00300-WO innovation, in various embodiments, thus drastically reduces data flow and the storage requirements.

[0044] The methods described herein may in various embodiments be implemented by any combination of hardware and software. For example, in one embodiment, the methods may be implemented by a computer system (e.g., a computer system as in Fig. 2) or a collection of computer systems, each of which includes one or more hardware processors executing program instructions stored on a computer-readable physical storage medium coupled to the hardware processors, within the provider environment 10 and the customer environment 14.

[0045] The program instructions may implement the functionality described herein (e.g., the functionality of various hardware servers and other components that implement the networkbased cloud and non-cloud computing resources described herein). The various methods as illustrated in the figures and described herein represent example implementations. The order of any method may be changed, and various elements may be added, modified, or omitted.

[0046] Fig. 2 is a block diagram illustrating an example computer hardware system, according to various embodiments. Computer system 140 may implement a hardware portion of a cloud computing system as forming parts of the various implementations of the present invention.

[0047] Computer system 140 may be any of various types of hardware devices, including, but not limited to, a commodity server, personal computer system, desktop computer, laptop or notebook computer, mainframe computer system, handheld computer, workstation, network computer, a consumer device, application server, physical storage device, telephone, mobile telephone, or in general any type of computing node, compute node, compute device, and / or hardware computing device.

[0048] Computer system 140 includes one or more hardware processors 140a, 141b...141n (any of which may include multiple processing cores, which may be single or multi-threaded) coupledAttorney Docket No. RAMP-00300-WO to a physical system memory 142 via an input / output (I / O) interface 144. Computer system 140 further may include a network interface 146 coupled to I / O interface 144. In various embodiments, computer system 140 may be a single processor system including one hardware processor 141a, or a multiprocessor system including multiple hardware processors 141a, 141b... Mln as illustrated in Fig. 2.

[0049] Processors 141a, etc. may be any suitable processors capable of executing computing instructions. For example, in various embodiments, processors 141a, etc. may be general- purpose or embedded processors implementing any of a variety of instruction set architectures. In multiprocessor systems, each of processors 141a, etc. may commonly, but not necessarily, implement the same instruction set.

[0050] The computer system 140 also includes one or more hardware network communication devices (e.g., network interface 146) for communicating with other systems and / or components over a communications network, such as a local area network, wide area network, or the Internet. For example, a client application executing on system 140 may use network interface 146 to communicate with a server application executing on a single hardware server or on a cluster of hardware servers that implement one or more of the components of the systems described herein in a cloud computing environment as implemented in various sub-systems. In another example, an instance of a server application executing on computer system 140 may use network interface 146 to communicate with other instances of an application that may be implemented on other computer systems.

[0051] In the illustrated embodiment, computer system 140 also includes one or more physical persistent storage devices 148 and / or one or more I / O devices 150. In various embodiments, persistent storage devices 148 may correspond to disk drives, tape drives, solid-state memory or drives, other mass storage devices, or any other persistent storage devices.Attorney Docket No. RAMP-00300-WO

[0052] Computer system 140 (or a distributed application or operating system operating thereon) may store instructions and / or data in persistent storage devices 148, as desired, and may retrieve the stored instructions and / or data as needed. For example, in some embodiments, computer system 140 may implement one or more nodes of a control plane or control system, and persistent storage 148 may include the solid-state drives (SSDs) attached to that server node. Multiple computer systems 140 may share the same persistent storage devices 148 or may share a pool of persistent storage devices, with the devices in the pool representing the same or different storage technologies, including such technologies as described above.

[0053] Computer system 140 includes one or more physical system memories 142 that may store code / instructions 143 and data 145 accessible by processor(s) 141a, etc. The system memories 142 may include multiple levels of memory and memory caches in a system designed to swap information in memories based on access speed, for example. The interleaving and swapping may extend to persistent storage devices 148 in a virtual memory implementation, where memory space is mapped onto the persistent storage devices 148.

[0054] The technologies used to implement the system memories 142 may include, by way of example, static random-access memory (RAM), dynamic RAM, read-only memory (ROM), nonvolatile memory, solid-state memory, or flash-type memory. As with persistent storage devices 148, multiple computer systems 140 may share the same system memory systems 142 or may share a pool of system memories 142. System memory or memory systems 142 may contain program instructions 143 that are executable by processor(s) 141a, etc. to implement the routines described herein.

[0055] In various embodiments, program instructions 143 may be encoded in binary, Assembly language, any interpreted language such as Java, compiled languages such as C / C++, or in anyAttorney Docket No. RAMP-00300-WO combination thereof; the particular languages given here are only examples. In some embodiments, program instructions 143 may implement multiple separate clients, server nodes, and / or other components.

[0056] In some implementations, program instructions 143 may include instructions executable to implement an operating system (not shown), which may be any of various operating systems, such as UNIX, LINUX, Solaris™, MacOS™, or Microsoft Windows™. Any or all of program instructions 143 may be provided as a computer program product, or software, that may include a non-transitory computer-readable storage medium having stored thereon instructions, which may be used to program a computer system (or other electronic devices) to perform a process according to various implementations. A non-transitory computer-readable storage medium may include any mechanism for storing information in a form (e.g., software or processing application) readable by a machine (e.g., a physical computer).

[0057] Generally speaking, a non-transitory computer-accessible medium may include computer-readable storage media or memory media such as magnetic or optical media, e.g., disk or DVD / CD-ROM, coupled to or in communication with computer system 140 via I / O interface 144. A non-transitory computer-readable storage medium may also include any volatile or non-volatile media such as RAM or ROM that may be included in some embodiments of computer system 140 as system memory 142 or another type of memory. In other implementations, program instructions may be communicated using optical, acoustical or other form of propagated signals (e.g., carrier waves, infrared signals, digital signals, etc.) conveyed via a communication medium such as a network and / or a wired or wireless link, such as may be implemented via network interface 606. Network interface 146 may be used to interface with other devices 142, which may include other computer systems or any type of external electronic device.Attorney Docket No. RAMP-OOBOO-WO

[0058] In some embodiments, system memory 142 may include data store 145, as described herein. In general, system memory 142 and persistent storage 148 may be accessible on other devices 142 through a network and may store data blocks, replicas of data blocks, metadata associated with data blocks, and / or their state, database configuration information, and / or any other information usable in implementing the routines described herein.

[0059] In one embodiment, I / O interface 144 may coordinate I / O traffic between processors 141a, etc., system memory 142, and any peripheral devices in the system, including through network interface 146 or other peripheral interfaces. In some embodiments, I / O interface 144 may perform any necessary protocol, timing or other data transformations to convert data signals from one component (e.g., system memory 142) into a format suitable for use by another component (e.g., processors 141a, etc.).

[0060] In some embodiments, I / O interface 144 may include support for devices attached through various types of peripheral buses, such as a variant of the Peripheral Component Interconnect (PCI) bus standard or the Universal Serial Bus (USB) standard, as examples. Also, in some embodiments, some or all of the functionality of I / O interface 144, such as an interface to system memory 142, may be incorporated directly into processor(s) 141a, etc.

[0061] Network interface 146 may allow data to be exchanged between computer system 140 and other devices attached to a network, such as other computer systems (which may implement one or more storage system server nodes, primary nodes, read-only node nodes, and / or clients of the database systems described herein), for example. In addition, I / O interface 144 may allow communication between computer system 140 and various I / O devices 150 and / or remote storage 148.

[0062] Input / output devices 150 may, in some embodiments, include one or more display terminals, keyboards, keypads, touchpads, scanning devices, voice or optical recognitionAttorney Docket No. RAMP-00300-WO devices, or any other devices suitable for entering or retrieving data by one or more computer systems 140. These may connect directly to a particular computer system 140 or generally connect to multiple computer systems 140 in a cloud computing environment, grid computing environment, or other system involving multiple computer systems 140. Multiple input / output devices 150 may be present in communication with computer system 140 or may be distributed on various nodes of a distributed system that includes computer system 140.

[0063] In some embodiments, similar input / output devices may be separate from computer system 140 and may interact with one or more nodes of a distributed system that includes computer system 140 through a wired or wireless connection, such as over network interface 146. Network interface 146 may commonly support one or more wireless networking protocols (e.g., Wi-Fi / I EEE 802.11, or another wireless networking standard). Network interface 146 may support communication via any suitable wired or wireless general data networks, such as other types of Ethernet networks, for example. Additionally, network interface 146 may support communication via telecommunications / telephony networks such as analog voice networks or digital fiber communications networks, via storage area networks such as Fibre Channel SANs, or via any other suitable type of network and / or protocol. In various embodiments, computer system 140 may include more, fewer, or different components than those illustrated in Fig. 2 (e.g., displays, video cards, audio cards, peripheral devices, or an Ethernet interface).

[0064] Any of the distributed system embodiments described herein, or any of their components, may be implemented as one or more network-based services in the cloud computing environment. For example, a read-write node and / or read-only nodes within the database tier of a hardware database system may present database services and / or other types of physical data storage services that employ the distributed storage systems described herein to clients as network-based services.Attorney Docket No. RAMP-00300-WO

[0065] In some embodiments, a network-based service may be implemented by a software and / or hardware system designed to support interoperable machine-to-machine interaction over a network. A web service may have an interface described in a machine-processable format. Other systems may interact with the network-based service in a manner prescribed by the description of the network-based service's interface. For example, the network-based service may define various operations that other systems may invoke, and may define a particular application programming interface (API) to which other systems may be expected to conform when requesting the various operations.

[0066] In various embodiments, a network-based service may be requested or invoked through the use of a message that includes parameters and / or data associated with the network-based services request. Such a message may be formatted according to a particular markup language such as Extensible Markup Language (XML), and / or may be encapsulated using a protocol. To perform a network-based services request, a network-based services client may assemble a message including the request and convey the message to an addressable endpoint (e.g., a Uniform Resource Locator (URL)) corresponding to the web service, using an Internet-based application layer transfer protocol such as Hypertext Transfer Protocol (HTTP).

[0067] Unless otherwise stated, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs.

[0068] Although any methods and materials similar or equivalent to those described herein can also be used in the practice or testing of the present invention, a limited number of the exemplary methods and materials are described herein. It will be apparent to those skilled in the art that many more modifications are possible without departing from the inventive concepts herein.Attorney Docket No. RAMP-00300-WO

[0069] All terms used herein should be interpreted in the broadest possible manner consistent with the context.

[0070] When a grouping is used herein, all individual members of the group and all combinations and sub-combinations possible of the group are intended to be individually included.

[0071] When a range is stated herein, the range is intended to include all sub-ranges within the range, as well as all individual points within the range.

[0072] When "about," "approximately," or like terms are used herein, they are intended to include amounts, measurements, or the like that do not depart significantly from the expressly stated amount, measurement, or the like, such that the stated purpose of the apparatus or process is not lost.

[0073] All references cited herein are hereby incorporated by reference to the extent that there is no inconsistency with the disclosure of this specification.

[0074] The present invention has been described with reference to certain preferred and alternative embodiments that are intended to be exemplary only and not limiting to the full scope of the present invention, as set forth in the appended claims.

Claims

Attorney Docket No. RAMP-00300-WOClaims1. A system for identity resolution, comprising: a bitmap encoding processor configured to: associate a binary string with each identity for a user within an identity graph, wherein each bit within the binary string corresponds to a unique segment within a universe of all possible segments to which a user may belong; a metadata association table configured to: store descriptive information for each segment; and wherein the binary string associated with each identity is used as an identifier for resolving user identity within the system.

2. The system of claim 1, wherein the presence or absence of a user in a specific segment is indicated by the state of the corresponding bit in the binary string.

3. The system of claim 2, wherein the bitmap encoding processor comprises a software development kit (SDK) for bitmap encoding and bitmap decoding.

4. The system of claim 1, wherein the descriptive information stored in the metadata association table includes at least one of: the segment's purpose, its definition, its membership criteria, and user audience-specific details concerning the segment.

5. The system of claim 1, wherein the metadata association table is dynamically linked to the bitmap encoding, ensuring that updates to segment definitions are automatically reflected in the segment-mapping process.

6. The system of claim 1, wherein the binary strings are encrypted before being used as identifiers.Attorney Docket No. RAMP-00300-WO7. The system of claim 1, wherein the bitmap encoding reduces storage requirements by at least fifty times compared to traditional flat data storage approaches for an equivalent segmentation data set.

8. The system of claim 1, wherein the bitmap encoding processor compresses petabyte-scale presegmented data into a storage format that is deployable to edge computing environments.

9. The system of claim 1, wherein the compact size of the binary strings for each user enables deployment of the segmentation data to edge locations in distributed cloud computing networks.

10. The system of claim 6, wherein a common algorithm is used for encryption, allowing the encrypted version to be recreated from the base binary string with the bitmap encoding.

11. A method for identity resolution, comprising: associating a binary string with each identity for a user within an identity graph to create an encoded binary string, wherein each bit within the encoded binary string corresponds to a unique segment within a universe of all possible segments to which a user may belong; storing descriptive information for each segment in a metadata association table; and using the encoded binary string associated with each identity as an identifier for resolving user identity within a system.

12. The method of claim 11, further comprising indicating the presence or absence of a user in a specific segment by the state of the corresponding bit in the binary string.

13. The method of claim 12, wherein the step of associating a binary string with each identity for a user within an identity graph is performed within the framework of a software development kit (SDK) to render the encoded binary string into human understandable format.Attorney Docket No. RAMP-00300-WO14. The method of claim 11, wherein the descriptive information stored in the metadata association table includes at least one of: the segment's purpose, its definition, its membership criteria, and user audience-specific details concerning the segment.

15. The method of claim 11, further comprising dynamically linking the metadata association table to the bitmap encoding, ensuring that updates to segment definitions are automatically reflected in the segment-mapping process.

16. The method of claim 11, further comprising encrypting the binary strings before using them as identifiers.

17. A non-transitory computer-readable storage medium storing program instructions that, when executed by a processor, cause the processor to perform a method for identity resolution, the method comprising: associating a binary string with each identity for a user within an identity graph, wherein each bit within the binary string corresponds to a unique segment within a universe of all possible segments to which a user may belong; storing descriptive information for each segment in a metadata association table; and using the binary string associated with each identity as an identifier for resolving user identity within a system.

18. The non-transitory computer-readable storage medium of claim 17, wherein the method performed by the processor further comprises indicating the presence or absence of a user in a specific segment by the state of the corresponding bit in the binary string.

19. The non-transitory computer-readable storage medium of claim 17, wherein the method performed by the processor further comprises dynamically linking the metadata associationAttorney Docket No. RAMP-00300-WO table to the bitmap encoding, ensuring that updates to segment definitions are automatically reflected in the segment-mapping process.

20. The non-transitory computer-readable storage medium of claim 17, wherein the method performed by the processor further comprises encrypting the binary strings before using them as identifiers.

Citation Information

Patent Citations

  • Image processing system

    US20100316222A1

  • Quantum state imaging for memory optimization

    US20190042974A1

  • Probabilistically generated identity database system and method

    US20200175038A1