Method and system for managing database expansion in a network
Concurrent data storage in primary and secondary databases with versioned tagging and flags addresses database scalability issues in 5G networks, ensuring continuous service and reducing latency.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- JIO PLATFORMS LTD
- Filing Date
- 2025-10-28
- Publication Date
- 2026-05-07
AI Technical Summary
Existing 5G networks face challenges in database scalability, leading to data inconsistencies and service disruptions during database expansion, as new BSF clusters lack access to crucial data, causing incomplete or inaccurate data handling and network performance degradation.
A method and system for managing database expansion by concurrently storing data in both primary and secondary databases, ensuring continuous service availability and data integrity through asynchronous operations and versioned data tagging, with flags for enabling/disabling concurrent storage and Time-To-Live settings for data removal.
Ensures seamless database expansion without downtime, reducing latency and improving performance by distributing data across multiple databases, maintaining data consistency and reducing load on individual databases.
Smart Images

Figure IN2025051710_07052026_PF_FP_ABST
Abstract
Description
METHOD AND SYSTEM FOR MANAGING DATABASE EXPANSION IN A NETWORKRESERVATION OF RIGHTS
[0001] A portion of the disclosure of this patent document contains material, which is subject to intellectual property rights such as, but are not limited to, copyright, design, trademark, Integrated Circuit (IC) layout design, and / or trade dress protection, belonging to JIO PLATFORMS LIMITED or its affiliates (hereinafter referred as owner). The owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all rights whatsoever. All rights to such intellectual property are fully reserved by the owner.TECHNICAL FIELD
[0002] The present disclosure relates to a field of telecommunications network. In particular, the present disclosure relates to a method and a system for managing database expansion in a network. The disclosed system is industrially applicable in telecommunication networks, particularly for 5G / 6G network function scalability.DEFINITIONS
[0003] As used in the present disclosure, the following terms are generally intended to have the meaning as set forth below, except to the extent that the context in which they are used to indicate otherwise.
[0004] The term “Network function” as used herein in the specification refers to a modular software component that performs a specific task within a network infrastructure. The network functions are critical for enabling and managing various network services and features. The concept is central to the Service-Based Architecture (SBA), where network functions are no longer tied to specific hardware but are virtualized and are deployed flexibly on cloud-native platforms.
[0005] The term ‘Binding Support Function (BSF)’ as used herein in the specification refers to a key network function, responsible for managing and maintaining binding sessions. The BSF ensures that the correct bindings between aUser Equipment (UE) sessions and the network policies are maintained, allowing for efficient communication between different network functions.
[0006] The term “Database” as used herein in the specification refers to various types of data storage systems that are crucial for managing, optimizing, and operating the network. The database play key roles in handling user data, network configurations, and other operational parameters. The database is critical in storing and managing data that the network functions rely on to execute various tasks.
[0007] The term “Flag” as used herein in the specification refers to a specific setting or configuration parameter that can influence the behaviour of network components or services. Flags are often used in software or protocol implementations to indicate the status, control features, or enable specific functionalities.
[0008] The term “Database expansion” as used herein in the specification refers to a process of adding new database clusters to accommodate the growing capacity requirements of the BSF in a 5G network. As the BSF handles more requests and stores increasing amounts of critical data, the existing database may reach its capacity limit, making it necessary to expand by introducing additional databases.
[0009] The term “Primary database” as used herein in the specification refers to an existing database communicatively coupled with an existing network function of the network. The primary database may be configured to store, retrieve, and modify data associated with the existing network function.
[0010] The term “Secondary database” as used herein in the specification refers to an additional database communicatively coupled with an existing network function. The secondary database is coupled to the existing network function of the network along with the primary database during expansion process. The primary database may be configured to store data associated with the existing network function. The primary database retrieves and modifies data associated with a new network function, upon completion of the expansion process.
[0011] The term “Time-To-Live (TTL) setting” as used herein in the specification refers to a lifespan or maximum duration that data is allowed to remain in a network before being discarded. The TTL setting ensures that data do not circulate indefinitely in case of routing loops or network errors.
[0012] These definitions are in addition to those expressed in the art.BACKGROUND
[0013] The following description of related art is intended to provide background information pertaining to the field of the disclosure. This section may include certain aspects of the art that may be related to various features of the present disclosure. However, it should be appreciated that this section be used only to enhance the understanding of the reader with respect to the present disclosure, and not as admissions of prior art.
[0014] In telecommunication networks such as a Fourth Generation (4G) and Fifth Generation (5G), a Binding Support Function (BSF) plays a crucial role by acting as a centralized management entity responsible for handling requests and maintaining essential operational data. To manage these requests effectively, the BSF relies on a database that stores information necessary for processing and responding to network requests in real-time. The database is essential for ensuring that the BSF operates seamlessly within the 5G ecosystem, maintaining high efficiency and low latency.
[0015] Each database can handle a capacity limit of a defined number of the BSFs simultaneously. When the capacity limit is reached, the network must be scaled to accommodate additional BSFs. The process of scaling involves expanding the database cluster, allowing to manage a larger number of BSFs and their respective requests. Failure to expand the database cluster can prevent the addition of new BSF clusters, limiting the scalability of the network. If scaling the database cluster is not feasible, a new database cluster may be added. However, deploying new BSF clusters with a separate database introduces a significant challenge such as datainconsistency. The new BSF clusters may lack access to the information stored in the original database, resulting in incomplete or inaccurate data. The discrepancy can cause incorrect request handling and disrupt the BSF’s core functions, ultimately degrading the performance of the network and affecting user experience.
[0016] There is, therefore, a need in the art to provide a method and a system that can mitigate the disadvantages of the prior art.SUMMARY OF THE DISCLOSURE
[0017] In an exemplary embodiment, a method for managing database expansion in a network is described. The method includes storing data associated with a network function in a primary database. The method further includes detecting one or more conditions associated with triggering the database expansion of the primary database. The method includes enabling a secondary database for data storage based on the one or more detected conditions. Further, the method includes storing the data concurrently in the primary database and the secondary database for a predefined duration of time . The method further includes directing at least a portion of service operations to utilize the secondary database.
[0018] In an embodiment, the data includes, but not limiting to, subscriber data, binding data, policy control data, session references, operational data, logging data, session identifiers, database expansion parameters or control metadata.
[0019] In another embodiment, the one or more conditions include one or more operational, configuration, or resource-related parameters associated with the network function or database environment.
[0020] In another embodiment, storing the data concurrently in the primary database and the secondary database is performed based on evaluation of the one or more conditions, the evaluation indicating whether concurrent storage is to be enabled or disabled.
[0021] In another embodiment, the method includes modifying an association between one or more network functions and the secondary database based on one or more operational conditions. Further, the method includes directing corresponding service operations to the secondary database. The method includes managing retention or removal of data from at least one of the primary database and the secondary database based on the one or more data-management parameters.
[0022] In another embodiment, storing the data in the primary database (304) and the secondary database (306) is based on one or more network-related, subscriber- related, or service -related identifiers or attributes.
[0023] In another exemplary embodiment, a system for managing database expansion in a network is described. The system includes a memory and a processing engine coupled to the memory to execute a set of instructions stored in the memory, the processing engine is configured to store data associated with a network function in a primary database. The processing engine is configured to detect one or more conditions associated with triggering the database expansion of the primary database. Further, the processing engine is configured to enable a secondary database for data storage based on the one or more detected conditions. The processing engine is configured to store the data concurrently in the primary database and the secondary database for a predefined duration of time. Further, the processing engine is configured to direct at least a portion of service operations to utilize the secondary database.
[0024] In yet another embodiment, a computer program product including a non- transitory computer-readable medium including instructions that, when executed by one or more processors, cause the one or more processors to execute a method for managing database expansion in a network is described. The method includes storing data associated with a network function in a primary database. The method further includes detecting one or more conditions associated with triggering the database expansion of the primary database. The method includes enabling a secondary database for data storage based on the one or more detected conditions.Further, the method includes storing the data concurrently in the primary database and the secondary database for a predefined duration of time. The method further includes directing at least a portion of service operations to utilize the secondary database.OBJECTIVES OF THE PRESENT DISCLOSURE
[0025] Some of the objectives of the present disclosure, which at least one embodiment herein satisfies, are as follows:
[0026] An objective of the present disclosure is to provide a method and a system that manages database expansion in a network.
[0027] Another objective of the present disclosure is to provide a method and a system that enable simultaneous use of a primary database and a secondary database during the expansion of a Binding Support Function (BSF), ensuring continuous service availability without interruption.
[0028] Another objective of the present disclosure is to provide a method and a system that optimize performance and reduce latency by distributing requests and data storage between the primary database and the secondary database, enhancing overall system responsiveness and resource utilization.
[0029] Another objective of the present disclosure is to provide a method and a system that allows customizable configurations with flags for enabling or disabling data storage across multiple databases, providing flexibility in the management and expansion of the network.
[0030] Another objective of the present disclosure is to provide a method and a system that handle time-based data removal using Time-To-Live (TTL) settings to automatically clean up old or obsolete data from the primary database and the secondary database as needed.
[0031] Other objectives and advantages of the present disclosure will be more apparent from the following description, which is not intended to limit the scope of the present disclosure.BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS
[0032] The accompanying drawings, which are incorporated herein, and constitute a part of this disclosure, illustrate exemplary embodiments of the disclosed methods and systems in which like reference numerals refer to the same parts throughout the different drawings. Components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. Some drawings may indicate the components using block diagrams and may not represent the internal circuitry of each component. It will be appreciated by those skilled in the art that disclosure of such drawings includes the disclosure of electrical components, electronic components or circuitry commonly used to implement such components.
[0033] FIG. 1 illustrates an exemplary network architecture of a system for managing database expansion in a network, in accordance with an embodiment of the present disclosure.
[0034] FIG. 2 illustrates an exemplary block diagram of the system for managing database expansion in the network, in accordance with an embodiment of the present disclosure.
[0035] FIG. 3 illustrates an exemplary system architecture for managing database expansion in the network, in accordance with an embodiment of the present disclosure.
[0036] FIG. 4 illustrates an exemplary flow diagram for managing database expansion in the network, in accordance with an embodiment of the present disclosure.
[0037] FIG. 5 illustrates an exemplary flow diagram of a method for managing database expansion in the network, in accordance with an embodiment of the present disclosure.
[0038] FIG. 6 illustrates an exemplary computer system in which or with which the embodiments of the present disclosure may be implemented.
[0039] The foregoing shall be more apparent from the following detailed description of the disclosure.LIST OF REFERENCE NUMERALS100 - Network architecture102 - User(s)104 -User Equipments (UEs)106 - Network108 - System200 - Block diagram202 - Processor(s)204 - Memory206 -Interface(s)208 - Processing engine210 - Database300 - System architecture302 - Network function304 - Primary database306 -Secondary database400 - Flow Diagram500 - Method600 - A computer system610 - External Storage Device620 - Bus630 - Main Memory640 - Read Only Memory650 - Mass Storage Device660 - Communication Port670 - ProcessorDETAILED DESCRIPTION
[0040] In the following description, for the purposes of explanation, various specific details are set forth in order to provide a thorough understanding of embodiments of the present disclosure. It will be apparent, however, that embodiments of the present disclosure may be practiced without these specific details. Several features described hereafter can each be used independently of one another or with any combination of other features. An individual feature may not address any of the problems discussed above or might address only some of the problems discussed above. Some of the problems discussed above might not be fully addressed by any of the features described herein. Example embodiments of the present disclosure are described below, as illustrated in various drawings inwhich like reference numerals refer to the same parts throughout the different drawings.
[0041] The ensuing description provides exemplary embodiments only, and is not intended to limit the scope, applicability, or configuration of the disclosure. Rather, the ensuing description of the exemplary embodiments will provide those skilled in the art with an enabling description for implementing an exemplary embodiment. It should be understood that various changes may be made in the function and arrangement of elements without departing from the spirit and scope of the disclosure as set forth.
[0042] Specific details are given in the following description to provide a thorough understanding of the embodiments. However, it will be understood by one of ordinary skill in the art that the embodiments may be practiced without these specific details. For example, circuits, systems, networks, processes, and other components may be shown as components in block diagram form in order not to obscure the embodiments in unnecessary detail. In other instances, well-known circuits, processes, algorithms, structures, and techniques may be shown without unnecessary detail in order to avoid obscuring the embodiments.
[0043] Also, it is noted that individual embodiment may be described as a process that is depicted as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram. Although a flowchart may describe the operations as a sequential process, many of the operations can be performed in parallel or concurrently. In addition, the order of the operations may be re-arranged. A process is terminated when its operations are completed but could have additional steps not included in a figure . A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, its termination can correspond to a return of the function to the calling function or the main function.
[0044] The word “exemplary” and / or “demonstrative” is used herein to mean serving as an example, instance, or illustration. For the avoidance of doubt, thesubject matter disclosed herein is not limited by such examples. In addition, any aspect or design described herein as “exemplary” and / or “demonstrative” is not necessarily to be construed as preferred or advantageous over other aspects or designs, nor is it meant to preclude equivalent exemplary structures and techniques known to those of ordinary skill in the art. Furthermore, to the extent that the terms “includes,” “has,” “contains,” and other similar words are used in either the detailed description or the claims, such terms are intended to be inclusive like the term “comprising” as an open transition word without precluding any additional or other elements.
[0045] Reference throughout this specification to “one embodiment” or “an embodiment” or “an instance” or “one instance” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present disclosure. Thus, the appearances of the phrases “in one embodiment” or “in an embodiment” in various places throughout this specification are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
[0046] The terminology used herein is to describe particular embodiments only and is not intended to be limiting the disclosure. As used herein, the singular forms “a”, “an”, and “the” are intended to include the plural forms as well, unless the context indicates otherwise. It will be further understood that the terms “comprises” and / or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof. As used herein, the term “and / or” includes any combinations of one or more of the associated listed items. It should be noted that the terms “mobile device”, “user equipment”, “user device”, “communication device”, “device” and similar terms are used interchangeably for the purpose of describing the invention. These terms are not intended to limit the scope of the invention or imply any specific functionality or limitations on thedescribed embodiments. The use of these terms is solely for convenience and clarity of description. The invention is not limited to any particular type of device or equipment, and it should be understood that other equivalent terms or variations thereof may be used interchangeably without departing from the scope of the invention as defined herein.
[0047] As used herein, an “electronic device”, or “portable electronic device”, or “user device” or “communication device” or “user equipment” or “device” refers to any electrical, electronic, electromechanical, and computing device. The user device is capable of receiving and / or transmitting one or parameters, performing function / s, communicating with other user devices, and transmitting data to the other user devices. The user equipment may have a processor, a display, a memory, a battery, and an input-means such as a hard keypad and / or a soft keypad. The user equipment may be capable of operating on any radio access technology including but not limited to IP-enabled communication, Zig Bee, Bluetooth, Bluetooth Low Energy, Near Field Communication, Z-Wave, Wi-Fi, Wi-Fi direct, etc. For instance, the user equipment may include, but not limited to, a mobile phone, smartphone, virtual reality (VR) devices, augmented reality (AR) devices, laptop, a general-purpose computer, desktop, personal digital assistant, tablet computer, mainframe computer, or any other device as may be obvious to a person skilled in the art for implementation of the features of the present disclosure.
[0048] Further, the user device may also comprise a “processor” or “processing unit” includes processing unit, wherein processor refers to any logic circuitry for processing instructions. The processor may be a general-purpose processor, a special purpose processor, a conventional processor, a digital signal processor, a plurality of microprocessors, one or more microprocessors in association with a Digital Signalling Processing (DSP) core, a controller, a microcontroller, Application Specific Integrated Circuits, Field Programmable Gate Array circuits, any other type of integrated circuits, etc. The processor may perform signal coding data processing, input / output processing, and / or any other functionality that enablesthe working of the system according to the present disclosure. More specifically, the processor is a hardware processor.
[0049] While considerable emphasis has been placed herein on the components and component parts of the preferred embodiments, it will be appreciated that many embodiments can be made and that many changes can be made in the preferred embodiments without departing from the principles of the disclosure. These and other changes in the preferred embodiment, as well as other embodiments of the disclosure, will be apparent to those skilled in the art from the disclosure herein, whereby it is to be distinctly understood that the foregoing descriptive matter is to be interpreted merely as illustrative of the disclosure and not as a limitation.
[0050] Wireless communication technology has rapidly evolved over the past few decades. The first generation of wireless communication technology was analog, offering only voice services. Further, text messaging and data services became possible when the second-generation (2G) technology was introduced. The third generation (3G) technology marked the introduction of high-speed internet access, mobile video calling, and location-based services. The fourth generation (4G) technology revolutionized wireless communication with faster data speeds, improved network coverage, and security. Currently, fifth generation (5G) technology is being deployed, offering significantly faster data speeds, lower latency, and the ability to connect many devices simultaneously. These advancements represent a significant leap forward from previous generations, enabling enhanced mobile broadband, improved Internet of Things (loT) connectivity, and more efficient use of network resources. The sixth generation (6G) technology promises to build upon these advancements, pushing the boundaries of wireless communication even further. While the 5G technology is still being rolled out globally, research and development into the 6G are rapidly progressing, with the aim of revolutionizing the way to connect and interact with technology.
[0051] In the 5G network, a network function plays important role in managing network and perform various operations for the users. A Binding Support Function (BSF) is a critical component in the 5G network architecture, facilitating efficient management and retrieval of binding information essential for network operations. The BSF is communicative coupled to a database for performing various functions. The database serves as a repository for binding records, which include associations between user sessions and a Policy Control Functions (PCFs). When a network function, such as an Application Function (AF) or Network Exposure Function (NEF), needs to determine that the PCF is handling a specific Packet Data Unit (PDU) session, the BSF is queried. The BSF retrieves the relevant binding information from its database to provide the appropriate response. To manage the dynamic nature of network sessions, the BSF supports operations such as registering, updating, and removing binding information. The concurrent operations ensure data consistency by executing all write (“put”) and delete (“remove”) transactions asynchronously but automatically across both the primary and secondary databases. Each record is tagged with a version identifier, timestamp, and operation type, which allows the synchronization module to verify that both databases reflect the same state. When simultaneous updates occur, the BSF applies a “latest-write-wins” policy based on timestamps, ensuring deterministic consistency. The functions necessitate robust database mechanisms to handle concurrent operations while preserving data integrity.
[0052] The BSF relies on the centralized database to manage the requests and store important information essential for smooth network operations. However, each database has a capacity limit, determining how many BSFs may be supported simultaneously. As 5G networks expand, the database capacity may quickly reach its limit, and new BSFs must be added.
[0053] However, scaling up the system include variety of problems such as expanding the database without affecting the ongoing operations or causing data inconsistencies. If the database cluster cannot be scaled up due to physical or architectural limitations, a new database cluster must be introduced. However, thenew BSF system may not have access to the crucial data stored in the old database, leading to inconsistent or faulty request handling. The data gap may cause service disruptions, reduced efficiency, and potential loss of critical information.
[0054] Furthermore, handling put, remove, and fetch operations during database expansion becomes a challenge due to the introduction of latency, especially when recalling data from the database. In database expansion management systems, such an expansion may require a switchover period, leading to downtime, and an additional period of latency as data is migrated or split between the two databases. The interruptions are detrimental in large-scale operations like 5G networks, where any delay or failure can lead to significant service issues.
[0055] There is, therefore, a need for a method and a system for managing database expansion in the network. The present disclosure provides a method for the simultaneous operation of both old and new databases during BSF expansion without causing downtime or data inconsistencies. The method includes configuring the BSF system to perform put and remove operations on both databases in real-time while expansion takes place. The BSF store data in both the existing database and the newly added database, ensuring that any new data is available in both databases, preventing data loss or inconsistency.
[0056] In an embodiment, the system is designed to be scalable and efficient. By distributing the data across multiple databases, the load on a single database is reduced, leading to improved performance and reduced latency. The system also ensures that all put and remove operations are executed asynchronously, preventing the system from experiencing delays or bottlenecks. Hereinafter, exemplary embodiments of the present disclosure will be described with reference to the accompanying drawings. The various embodiments throughout the disclosure will be explained in more detail with reference to FIG. 1- FIG. 6.
[0057] FIG. 1 illustrates an exemplary network architecture 100 of a system 108 for managing database expansion in a network 106, in accordance with an embodiment of the present disclosure. As illustrated in FIG. 1, the networkarchitecture 100 may include one or more User Equipments (UEs) 104-1, 104- 2... 104-N associated with one or more users 102-1, 102-2... 102 -N in an environment. A person of ordinary skill in the art will understand that one or more users 102-1, 102-2... 102-N may be collectively referred to as the users 102. Similarly, a person of ordinary skill in the art will understand that one or more UEs 104-1, 104-2. . . 104-N may be collectively referred to as the UE 104 or the UEs 104. Although only three UE 104 are depicted in FIG. 1, however, any number of the UE 104 may be included without departing from the scope of the ongoing description.
[0058] In an embodiment, the UE 104 may include smart devices operating in a smart environment, for example, an Internet of Things (loT) system. In such an embodiment, the UE 104 may include, but are not limited to, smartphones, smart watches, smart sensors (e.g., a mechanical, a thermal, an electrical, a magnetic, etc.), networked appliances, networked peripheral devices, networked lighting system, communication devices, networked vehicle accessories, networked vehicular devices, smart accessories, tablets, a smart television (TV), computers, a smart security system, a smart home system, other devices for monitoring or interacting with or for the users 102 and / or entities, or any combination thereof. A person of ordinary skill in the art will appreciate that the UE 104 may include, but not limited to, intelligent, multi-sensing, network-connected devices, that may integrate seamlessly with each other and / or with a central server or a cloudcomputing system or any other device that is network-connected.
[0059] Additionally, in some embodiments, the UE 104 may include, but not limited to, a handheld wireless communication device (e.g., a mobile phone, a smartphone, a phablet device, and so on), awearable computer device (e.g., aheadmounted display computer device, a head-mounted camera device, a wristwatch computer device, and so on), a Global Positioning System (GPS) device, a laptop computer, a tablet computer, or another type of portable computer, a media playing device, a portable gaming system, and / or any other type of computer device with wireless communication capabilities, and the like. In an embodiment, the UE 104may include, but are not limited to, any electrical, electronic, electromechanical, or equipment, or a combination of one or more of the above devices, such as virtual reality (VR) devices, augmented reality (AR) devices, a laptop, a general-purpose computer, a desktop, a personal digital assistant, a tablet computer, a mainframe computer, or any other computing device. Further, the UE 104 may include one or more in-built or externally coupled accessories including, but not limited to, a visual aid device such as a camera, an audio aid, a microphone, a keyboard, and input devices for receiving input from the user 102 or an entity such as a touchpad, a touch-enabled screen, an electronic pen, and the like. A person of ordinary skill in the art will appreciate that the UE 104 may not be restricted to the mentioned devices and various other devices may be used.
[0060] In FIG. 1, the UE 104 may communicate with the system 108 through the network 106 for sending or receiving various types of data. In an embodiment, the network 106 may include at least one of the 5G network, the 6G network, or the like. The network 106 may enable the UE 104 to communicate with other devices in the network architecture 100 and / or with the system 108. The network 106 may include a wireless card or some other transceiver connection to facilitate this communication. In another embodiment, the network 106 may be implemented as, or include any of a variety of different communication technologies such as a wide area network (WAN), a local area network (LAN), a wireless network, a mobile network, a Virtual Private Network (VPN), the Internet, the Public Switched Telephone Network (PSTN), or the like.
[0061] In an embodiment, the network 106 may include, by way of example but not limitation, at least a portion of one or more networks having one or more nodes that transmit, receive, forward, generate, buffer, store, route, switch, process, or a combination thereof, etc. one or more messages, packets, signals, waves, voltage or current levels, some combination thereof, or so forth. The network 106 may also include, by way of example but not limitation, one or more of, a wireless network, a wired network, an internet, an intranet, a public network, a private network, a packet-switched network, a circuit-switched network, an ad hoc network, aninfrastructure network, the PSTN, a cable network, a cellular network, a satellite network, a fiber optic network, or some combination thereof.
[0062] In an embodiment, the system 108 may manage database expansion in a network 106. The system 108 may be configured to store data associated with a network function in a primary database. The data includes, but not limited to, subscriber data, binding data, policy control data, session references, operational data, logging data, session identifiers, database expansion parameters or control metadata. The network function is selected from a group consisting of control functions, service functions, and gateway functions. Further, the system 108 may be configured to detect one or more conditions associated with triggering the database expansion. The one or more conditions include one or more operational, configuration, or resource-related parameters associated with the network function or database environment including at least one of a configuration parameter, availability of one or more resources on the network function, and a planned expansion of the primary database, and the configuration parameter includes at least one of a status flag, a rule, and an orchestration command.
[0063] The system 108 may be configured to enable a secondary database for data storage based on the one or more detected conditions. Further, the system 108 may be configured to store the data concurrently in the primary database and the secondary database for a predefined duration of time. The data storing is synchronous and may be versioned. Because both the primary database and the secondary database receive asynchronous “put” and “remove” operations, small timing discrepancies may cause differences in record versions or update order. To mitigate this, each data record is tagged with a version number, timestamp, and operation type, allowing the BSF’s synchronization module to determine which version is authoritative. The predefined duration of time represents the specific, preconfigured time interval during which the system continues to perform “put” (write / store) and “remove” (delete) operations on both the first database and the second database simultaneously. To store the data concurrently in the primary database and the secondary database, the system 108 is further configured todetermine whether the one or more conditions correspond to an enabled status of the flag. Upon determining that the one or more conditions correspond to the enabled status of the flag, the system 108 store the data concurrently in the primary database and the secondary database for the predefined duration of time. Upon determining that the one or more conditions corresponds to a disabled status of the flag, the system may store the data associated with the network function in the primary database. In an embodiment, the data is stored in the primary database and the secondary database based on one or more network-related, subscriber-related, or service-related identifiers or attributes including at least one of a Public Uand Mobile Network Identifier (PUMN ID), a network slice ID, a subscriber category, and a geographic region ID.
[0064] The parameter isToWriteDatalnMultipleDB is a configuration flag that determines whether the Binding Support Function (BSF) performs concurrent data operations on both the first and second databases during a database expansion phase. When enabled, the BSF performs “put” (insert / update) and “remove” (delete) operations on both databases asynchronously. The flag is enabled when the system or orchestration layer detects one or more expansion-triggering conditions that indicate the need for concurrent operation of both databases. The conditions may include database capacity threshold, planned or scheduled expansion, configuration parameter or rule activation, network function scaling event.
[0065] The system 108 may be configured to direct at least a portion of service operations to utilize the secondary database. In an embodiment, the system 108 may modify an association between one or more network functions and the secondary database based on one or more operational conditions. Further, the system 108 may direct corresponding service operations to the secondary database. The system 108 may also manage retention or removal of data from at least one of the primary database and the secondary database based on the one or more data-management parameters. The data-management parameters may include a predefined duration of time. Upon an expiration of the predefined duration of time, the system 108 may add a new network function to the secondary database for querying serviceoperations. Further, the system 108 may direct the service operations associated with the new network function to the secondary database. The system 108 may further remove the data from at least one of the primary database and the secondary database based on a predefined Time-To-Live (TTL) parameter. In an embodiment, the UE 104 is communicatively coupled with the network 106. The network 106 may receive a connection request from the UE 104. The network 106 may send an acknowledgment of the connection request to the UE 104. The UE 104 may transmit a plurality of signals in response to the connection request. Although described with two databases, the system 108 may extend to multiple database clusters for larger scale deployments.
[0066] When a database failure occurs during the concurrent operation phase, the BSF continues to perform “put” and “remove” operations on the available database and maintains a persistent operation log containing transaction timestamps, record identifiers, and version information. Upon recovery of the failed database, a synchronization daemon replays the pending operations from the log to ensure that both databases achieve a consistent state without data loss. The Time-To-Live (TTL) parameter associated with each record may be configured in multiple ways depending on the data type and operational policy. For example, subscriber bindings and session identifiers may have shorter TTL values defined by the policy control function (PCF) or network configuration rules, while logging or operational data may use longer TTL durations as configured by an administrator. In some embodiments, the TTL can be auto-calculated by the system based on factors such as record age, update frequency, or database load conditions, ensuring optimal cleanup and resource utilization while maintaining data relevance and consistency across both databases.
[0067] Although FIG. 1 shows exemplary components of the network architecture 100, in other embodiments, the network architecture 100 may include fewer components, different components, differently arranged components, or additional functional components than depicted in FIG. 1. Additionally, or alternatively, one or more components of the network architecture 100 may perform functionsdescribed as being performed by one or more other components of the network architecture 100.
[0068] FIG. 2 illustrates an exemplary block diagram 200 of the system 108 for managing database expansion in the network 106, in accordance with an embodiment of the disclosure. FIG. 2 is explained in conjunction with the FIG. 1.
[0069] In an embodiment, the system 108 may include one or more processor(s) 202. The one or more processor(s) 202 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, logic circuitries, and / or any devices that process data based on operational instructions. Among other capabilities, the one or more processor(s) 202 may be configured to fetch and execute computer-readable instructions stored in a memory 204 of the system 108. The memory 204 may be configured to store one or more computer-readable instructions or routines in a non-transitory computer readable storage medium, which may be fetched and executed to create or share data packets over a network service. The memory 204 may include any non-transitory storage device including, for example, volatile memory such as a Random-Access Memory (RAM), or a non-volatile memory such as an Erasable Programmable Read Only Memory (EPROM), a flash memory, and the like.
[0070] In an embodiment, the system 108 may include an interface(s) 206. The interface(s) 206 may include a variety of interfaces, for example, interfaces for data input and output devices (RO), storage devices, and the like. The interface(s) 206 may facilitate communication through the system 108. The interface(s) 206 may also provide a communication pathway for one or more components of the system 108. Examples of such components include, but are not limited to, a processing engine 208 and a database 210.
[0071] In an embodiment, the system 108 may include a processing engine 208 that may be implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the processing engine 208. In examples described herein, such combinations ofhardware and programming may be implemented in several different ways. For example, the programming for the processing engine 208 may be processorexecutable instructions stored on a non-transitory machine -readable storage medium and the hardware for the processing engine 208 may comprise a processing resource (for example, one or more processors), to execute such instructions. In the present examples, the machine-readable storage medium may store instructions that, when executed by the processing resource, implement the processing engine 208. In such examples, the system 108 may comprise the machine-readable storage medium storing the instructions and the processing resource to execute the instructions, or the machine-readable storage medium may be separate but accessible to the system 108 and the processing resource. In other examples, the processing engine 208 may be implemented by electronic circuitry.
[0072] In an embodiment, the processing engine 208 is configured for managing database expansion in the network 106. The processing engine 208 may be configured to store data associated with a network function in a primary database. The data may represent the core operational and contextual information utilized by the network function to process user requests, perform session management, enforce policies, and maintain service continuity. The data includes, but not limited to, subscriber data, binding data, policy control data, session references, operational data, logging data, session identifiers, database expansion parameters or control metadata. The network function managed by the processing engine 208 may be any functional entity responsible for control-plane or service-plane operations within the network 106. Examples include control functions such as the Policy Control Function (PCF), Binding Support Function (BSF), and Access Mobility and Management Function (AMF), service functions such as Application Functions (AF) and Network Exposure Functions (NEF), and gateway functions such as Session Management Function (SMF) and User Plane Function (UPF). Each of the network functions relies on its associated database for real-time decision-making and service delivery. In an embodiment, the processing engine 208 ensures that the network functions continue to operate without interruption during databaseexpansion by managing concurrent read and write operations, directing data flow between the old and new databases, validating integrity of migrated records, and coordinating synchronization cycles based on system -defined thresholds.
[0073] Further, the processing engine 208 may be configured to detect one or more conditions associated with triggering the database expansion. The detection may be performed continuously or periodically by monitoring predefined configuration parameters, network resource utilization thresholds, and administrative triggers that indicate an impending need to scale the database infrastructure. The one or more conditions includes one or more operational, configuration, or resource-related parameters associated with the network function or database environment including at least one of a configuration parameter, availability of one or more resources on the network function, and a planned expansion of the primary database, and the configuration parameter includes at least one of a status flag, a rule, and an orchestration command. The configuration parameter may define the operational state or behaviour of the BSF or other network functions. Such configuration parameters may include a status flag, a rule, or an orchestration command. The status flag (for example, isToWriteDatalnMultipleDB) is a binary or multi-state indicator maintained in the system configuration that specifies whether concurrent data writing in multiple databases is to be enabled. The rule may include one or more logical expressions or thresholds defined by the network operator or an orchestration policy. For instance, a rule may specify that if the database utilization exceeds a predetermined percentage (for example, 80%) or if query latency surpasses a configured limit, the expansion process should be triggered. Further, the orchestration command may be a directive issued by an external network orchestrator, network management system, or cloud-native controller responsible for lifecycle management of the network functions.
[0074] In some embodiments, upon detecting the one or more conditions, the processing engine 208 generates internal triggers that transition the system 108 from a single-database operational state to a multi -database operational state. The processing engine 208 may further log the event, update internal metadata tables,and issue notifications to dependent network functions to maintain alignment with the expansion process.
[0075] The processing engine 208 is configured to enable a secondary database for data storage based on the one or more detected conditions. Once the processing engine 208 determines that an expansion condition has been satisfied such as a configuration flag being enabled, a rule-based threshold being reached, or an orchestration command being received, the processing engine 208 initiates the provisioning and activation of the secondary database in the network 106. In an embodiment, the enabling of the secondary database involves establishing a new logical or physical database instance that operates in parallel with the existing primary database. The processing engine 208 may allocate the necessary compute, storage, and networking resources to the secondary database through an automated orchestration layer or a virtualization framework such as a cloud-native infrastructure, containerized environment, or virtual machine cluster. Once instantiated, the secondary database is registered within the system’s 108 metadata repository, enabling synchronization and data flow between both databases. The processing engine 208 further configures connectivity parameters, authentication tokens, and access privileges to ensure that the secondary database may securely communicate with the network functions that depend on it, such as the BSF, PCF, or SMF. The activation process includes verifying database health, performing connection handshakes, validating schema compatibility, and confirming availability of the newly provisioned database node.
[0076] In an embodiment, the processing engine 208 periodically collects metrics such as database utilization, record count growth rate, read / write latency, and cluster health status. When any monitored parameter exceeds its configured threshold, for example, if the primary database utilization crosses 85%, or the average query latency remains above 200 milliseconds for a sustained duration, the processing engine 208 identifies that the database has reached a critical operating limit.
[0077] In one implementation, the secondary database may be selected from a pool of pre-provisioned database clusters that are maintained in a standby or inactive state. Upon detection of the triggering condition, the processing engine 208 may activate the corresponding standby database, minimize setup time and enable rapid expansion. In another implementation, the secondary database may be dynamically deployed in response to a scaling event, where the processing engine 208 executes an orchestration command to spin up a new database instance in a distributed or cloud environment.
[0078] Further, the processing engine 208 may be configured to store the data concurrently in the primary database and the secondary database for a predefined duration of time. The data is stored concurrently in the primary database and the secondary database based on evaluation of the one or more conditions, the evaluation indicating whether concurrent storage is to be enabled or disabled. To store the data concurrently in the primary database and the secondary database, the system 108 is further configured to determine whether the one or more conditions correspond to an enabled status of the flag. Upon determining that the one or more conditions correspond to the enabled status of the flag, the system 108 store the data concurrently in the primary database and the secondary database for the predefined duration of time. Upon determining that the one or more conditions corresponds to a disabled status of the flag, the system may store the data associated with the network function in the primary database. In an embodiment, the data is stored in the primary database and the secondary database based on at least one of a Public hand Mobile Network Identifier (PUMN ID), a network slice ID, a subscriber category, and a geographic region ID.
[0079] In an embodiment, to initiate concurrent data storage, the processing engine 208 determines whether the one or more detected conditions correspond to an enabled status of the configuration flag for instance, a flag such as isToWriteDatalnMultipleDB. The flag may act as an internal control variable governing the database write behaviour. When the flag is set to the “enabled” state, the processing engine 208 perform parallel write operations, directing each newdata transaction to both the primary database and the secondary database. The processing engine 208 then activates concurrent data pipelines that replicate or mirror all incoming data records including subscriber information, session identifiers, binding records, and policy control parameters across both databases in real time. During the predefined duration of time, the concurrent write mode remains active, allowing the system 108 to synchronize datasets between the two databases until both contain consistent and up-to-date information. The predefined duration may be determined based on operational thresholds such as data synchronization latency, completion of replication cycles, or confirmation of data integrity checks. Once the predefined period concludes and the synchronization is deemed sufficient, the processing engine 208 may transition to directing new requests exclusively to the secondary database, completing the expansion without any interruption to ongoing network operations.
[0080] In an embodiment, the data distribution across the first and secondary databases may be further governed by a network identifier parameter. The network identifier parameter allows intelligent partitioning of data based on operational domains or network segmentation criteria. By incorporating the network identifier parameter, the processing engine 208 ensures that data is logically and efficiently organized across the two databases. For example, one database may serve specific PLMN domains or slices, while the other handles newly instantiated or regionalized service areas.
[0081] In an embodiment, the processing engine 208 may modify an association between one or more network functions and the secondary database based on one or more operational conditions. Further, the processing engine 208 may direct corresponding service operations to the secondary database. The processing engine 208 may further manage retention or removal of data from at least one of the primary database and the secondary database based on the one or more data- management parameters. The processing engine 208 may be configured to direct at least a portion of service operations to utilize the secondary database. The service operations may include new binding creation requests from UEs 104 that have notbeen previously registered in the BSF, policy association records generated by newly deployed PCF or CHF instances, Operational logs (PUT / REMOVE request logs, latency metrics, sync validation logs) for the dual-database phase, Traffic or user sessions associated with a specific network slice (S-NSSAI) or geographic region ID that has been newly introduced, health-check, consistency verification, and database replication status queries performed by the management function, etc. Upon an expiration of the predefined duration of time, the processing engine 208 may be configured to add a new network function to the secondary database for querying service operations.
[0082] Further, the processing engine 208 may be configured to direct the service operations associated with the new network function to the secondary database. The processing engine 208 may be configured to remove the data from at least one of the primary database and the secondary database based on a predefined Time-To- Live (TTL) parameter. Upon the expiration of the predefined duration of time, the processing engine 208 validates that the synchronization between the first and secondary databases has been successfully completed and that the secondary database contains a fully consistent and up-to-date dataset. Once verified, the processing engine 208 may be configured to add a new network function instance for example, a newly instantiated BS), PCF, or SMF to the operational scope of the secondary database, enabling the new network function to directly query, retrieve, and update service-related data from the secondary database without any dependency on the primary database.
[0083] In an embodiment, the processing engine 208 may also perform dynamic routing of service operations based on operational attributes such as database health status, query response time, or network function affinity. For instance, ongoing sessions or legacy service operations may continue to reference the primary database until their lifecycle is complete, whereas all newly established sessions or policy requests may be automatically directed to the secondary database. Once the TTL value expires, the processing engine 208 triggers an automated cleanup process that selectively deletes obsolete or redundant entries, ensuring that neitherof the databases retains stale information and that the system’s storage resources are utilized efficiently. In one implementation, the processing engine 208 may apply differentiated TTL values depending on the type of data being handled for example, shorter TTL durations for temporary session or binding data, and longer durations for persistent policy or subscriber information. The coordinated redirection of service operations and TTL-based data removal provides a self-regulating, high- availability architecture for database expansion. The processing engine 208 effectively ensures that once the new database is fully operational, it may independently sustain service operations while the legacy database is gradually phased out.
[0084] In an embodiment, the UE 104 is communicatively coupled with the network 106. The network 106 may receive a connection request from the UE 104. The network 106 may send an acknowledgment of the connection request to the UE 104. The UE 104 may transmit a plurality of signals in response to the connection request.
[0085] FIG. 3 illustrates an exemplary system architecture 300 for managing database expansion in the network 106, in accordance with an embodiment of the present disclosure. FIG. 3 is explained in conjunction with the FIGs. 1 and 2.
[0086] In FIG. 3, a communication flow between the network function 302, a primary database (also referred as primary database) 304 and a secondary database (also referred as a secondary database) 306 is depicted. The primary database 304 is analogous to the primary database and the secondary database 306 is analogous to the secondary database. The network function 302 may be connected to the primary database 304 and the secondary database 306 through an Application programming Interface (APIs) and performs operations like inserting, updating, and removing binding data. The connection allows the network function 302 to maintain a central repository of binding information, ensuring smooth interaction between network functions, data consistency, and scalability during the 5G network operations.
[0087] In an embodiment, the network function 302 may be initially connected to the primary database 304 to perform various an asynchronous function such as put and remove and a synchronous function such as fetch to recall data from the primary database 304. However, in some cases, the performance of the sync function may show latency due to over utilization of the primary database 304, requiring expansion of the primary database 304. The database expansion may be required due to a limit on number of network functions the primary database 304 can handle. During expansion, the secondary database 306 is deployed in the network 106 in connection with the network function 302.
[0088] In an embodiment, a flag (such as “isToWriteDatalnMultipleDB”) is configured in the network function 302 for storing data in the primary database 304 and the secondary database 306. The flag may include a configurable runtime parameter used by the network function 302 during the expansion when the secondary database 306 is introduced alongside the primary database 304. The flag may enable the network function 302 to write data to both databases simultaneously, ensuring seamless data management across multiple databases.
[0089] If the flag is enabled, the network function 302 start storing the data into both the primary database 304 and the secondary database 306. The network function 302 may store data such as binding sessions, session information, binding identifiers (IDs), etc. The network function 302 stores data in both the primary database 304 and the secondary database 306 for a defined period of time. The network function 302 determines that the database expansion is successfully completed within the predefined duration of time. The predefined duration of time is the time taken by the network function 302 to determine that the database expansion is completed successfully. Upon completion of database expansion, the flag is disabled.
[0090] If the flag is disabled, the network function 302 stores data in the primary database 304. The network function 302 removes additional data from the primary database 304 and the secondary database 306 based on Time-To-Live (TTL)setings to optimize the resource utilization. The TTL setings define a duration for which certain data such as session bindings or other records is valid and stored in the primary database 304 and the secondary database 306 before being automatically deleted. Once the TTL expires, the data is considered stale and is removed from the primary database 304 and the secondary database 306 to free up resources and maintain efficient operation.
[0091] In some embodiments, the network function 302 may expand by adding a new network function utilizing the secondary database 306, and the existing network function 302 utilizing primary database 304, ensuring that the data is consistently divided between the primary database 304 and the secondary database 306 based on Public Land Mobile Network (PLMN) that the connected Network function are intended to serve.
[0092] FIG. 4 illustrates an exemplary process flow 400 for managing database expansion in the network 106, in accordance with an embodiment of the present disclosure. The process flow 400 may be implemented by a network function such as the network function 302 (such as BSF). FIG. 4 is explained in conjunction with the FIGs. 1, 2 and 3.
[0093] At step 402, the network function 302 may determine to expand the primary database 304 by deploying the secondary database 306 in addition to the primary database 304. Further, the network function 302 may include a flag to write data to both the primary database 304 and the secondary database 306, ensuring seamless data management across multiple databases. In an embodiment, the flag may include “isToWriteDatalnMultipleDB” flag configured at the network function 302.
[0094] At 404, the network function 302 may check a status of the flag. The status of the flag may be an enabled status and a disabled status. In an embodiment, the status of the flag determines the operation of the network function 302 to store data in the primary database 304 and the secondary database 306.
[0095] if the status of the flag is set to be enabled, at step 406, the network function 302 may store data in both the primary database 304 and the secondary database 306 simultaneously for a predefined duration of time. The network function 302 stores the data simultaneously to optimizes resource utilization and maintains data integrity throughout the expansion process.
[0096] At step 408, data consistency is achieved during network function 302 expansion using the primary database 304 and the secondary database 306. The network function 302 expansion may including assigning the secondary database 306 to the new network function and the primary database 304 to the existing network function 302. In some embodiments, the network function 302 may remove the additional data from the primary database 304 and the secondary database 306 based on the TTL settings.
[0097] If the status of the flag is set to be disabled, at step 410, the network function 302 stores the data in the single database (such as the primary database 304). In some embodiments, the status of the flag is set to disabled, upon completion of the database expansion process or upon passing of the predefined duration of time.
[0098] FIG. 5 illustrates an exemplary flow diagram of a method 500 for managing database expansion in the network 106, in accordance with an embodiment of the present disclosure. The method 500 may be implemented by the processing engine 208 of the network function 302 of the network 106. FIG. 5 is explained in conjunction with the FIGs. 1, 2, 3 and 4.
[0099] At step 502, data associated with a network function is stored in a primary database. The data includes, but not limited to, subscriber data, binding data, policy control data, session references, operational data, logging data, session identifiers, database expansion parameters or control metadata. The network function is selected from a group consisting of control functions, service functions, and gateway functions. For example, consider a Binding Support Function (BSF) deployed within a 5G core network. The BSF stores binding data that maps subscriber sessions with the corresponding Policy Control Function (PCF)instances. For example, when a new subscriber registers, the BSF stores subscriber identifiers, binding information, and session references in the primary database.
[0100] At step 504, one or more conditions associated with triggering the database expansion of the primary database are detected. The one or more conditions includes one or more operational, configuration, or resource-related parameters associated with the network function or database environment including at least one of a configuration parameter, availability of one or more resources on the network function, and a planned expansion of the primary database, and the configuration parameter includes at least one of a status flag, a rule, and an orchestration command. For example, consider the utilization of primary database reaches 85% of its capacity or the latency of data retrieval exceeds a configured threshold. In this case, the rule-based trigger activates a status flag (for example, isToWriteDatalnMultipleDB = true). Alternatively, the network orchestrator such as the BSF controller may issue an expansion command as part of scheduled scaling. In an example, If the storage utilization of the first database exceeds 80%, then set isToWriteDatalnMultipleDB = True. When the existing BSF database approaches its maximum capacity threshold, the rule automatically triggers the flag to begin writing data into both the old and new databases to prepare for expansion. Further, If a maintenance or scaling event is scheduled within the next N hours, preemptively set isToWriteDatalnMultipleDB = True, allowing the orchestration system to start the dual-write process proactively to ensure a smooth cut-over during planned maintenance windows.
[0101] At step 506, a secondary database is enabled for data storage based on the one or more detected conditions . For instance, the processing engine may instantiate a new MongoDB or Cassandra node within the same network cluster or in a cloud environment. The processing engine establishes communication channels, synchronizes schema structures, and verifies readiness of the secondary database for parallel operations.
[0102] At step 508, the data is stored concurrently in the primary database and the secondary database for a predefined duration of time based on evaluation of the one or more conditions, the evaluation indicating whether concurrent storage is to be enabled or disabled. To store the data concurrently in the primary database and the secondary database, the method includes determining whether the one or more conditions correspond to an enabled status of the flag. Further, the the data is stored concurrently in the primary database and the secondary database for the predefined duration of time, upon determining that the one or more conditions correspond to the enabled status of the flag. The data associated with the network function is stored in the primary database, upon determining that the one or more conditions corresponds to a disabled status of the flag. In an embodiment, the data is stored in the primary database and the secondary database based on one or more network- related, subscriber-related, or service -related identifiers or attributes including at least one of a Public Land Mobile Network Identifier (PLMN ID), a network slice ID, a subscriber category, and a geographic region ID. For example, consider a subscriber initiates a new data session during this period, the corresponding session record, binding entry, and logging information are written to both the primary database and the secondary database. If the flag isToWriteDatalnMultipleDB is enabled, the write operations occur in both databases simultaneously. If the flag is disabled, the BSF continues writing only to the primary database.
[0103] At step 510, at least a portion of service operations are directed to utilize the secondary database . An association between one or more network functions and the secondary database is modified based on one or more operational conditions. Further, the corresponding service operations are directed to the secondary database. Further, retention or removal of data is managed from at least one of the primary database and the secondary database based on the one or more data- management parameters. Upon an expiration of the predefined duration of time, a new network function is added to the secondary database for querying service operations. Further, the service operations associated with the new network function is directed to the secondary database. The data is removed from at leastone of the primary database and the secondary database based on a predefined Time-To-Live (TTL) parameter. For example, all new subscriber registrations and policy bindings are now written to secondary database, while the primary database continues to handle legacy sessions until they expire. The system gradually removes expired or redundant records from the primary database using a Time-To-Live (TTL) parameter such as automatically deleting inactive session data after 48 hours.
[0104] FIG. 6 illustrates an exemplary computer system 600 in which or with which embodiments of the present disclosure may be implemented. As shown in FIG. 6, the computer system 600 may include an external storage device 610, a bus 620, a main memory 630, a read-only memory 640, a mass storage device 650, communication port(s) 660, and a processor 670. In an embodiment, the main memory 630 and the processor 670 may be analogous to the memory 204 and the processor(s) 202 of the system 108. Further, the computing system 600 may implement the method 500 using the processing engine 208 of the system 108. A person skilled in the art will appreciate that the computer system 600 may include more than one processor and communication ports. The processor 670 may include various modules associated with embodiments of the present disclosure. The communication port(s) 660 may be any of an RS-232 port for use with a modembased dialup connection, a 10 / 100 Ethernet port, a Gigabit or 10 Gigabit port using copper or fiber, a serial port, a parallel port, or other existing or future ports. The communication port(s) 660 may be chosen depending on a network, such a Local Area Network (LAN), Wide Area Network (WAN), or any network to which the computer system 600 connects.
[0105] The main memory 630 may be a Random Access Memory (RAM), or any other dynamic storage device commonly known in the art. The read-only memory 640 may be any static storage device(s) e.g., but not limited to, a Programmable Read Only Memory (PROM) chips for storing static information e.g., start-up or Basic Input / Output System (BIOS) instructions for the processor 670. The mass storage device 650 may be any current or future mass storage solution, which can be used to store information and / or instructions. Exemplary mass storage device650 includes, but is not limited to, Parallel Advanced Technology Attachment (PATA) or Serial Advanced Technology Attachment (SATA) hard disk drives or solid-state drives (internal or external, e.g., having Universal Serial Bus (USB) and / or Firewire interfaces), one or more optical discs, Redundant Array of Independent Disks (RAID) storage, e.g. an array of disks.
[0106] The bus 620 communicatively couples the processor 670 with the other memory, storage, and communication blocks. The bus 620 may be, e.g. a Peripheral Component Interconnect (PCI) / PCI Extended (PCI-X) bus, Small Computer System Interface (SCSI), Universal Serial Bus (USB), or the like, for connecting expansion cards, drives, and other subsystems as well as other buses, such a front side bus (FSB), which connects the processor 670 to the computer system 600.
[0107] Optionally, operator and administrative interfaces, e.g. a display, keyboard, joystick, and a cursor control device, may also be coupled to the bus 620 to support direct operator interaction with the computer system. Other operator and administrative interfaces can be provided through network connections connected through the communication port(s) 660. Components described above are meant only to exemplify various possibilities. In no way should the aforementioned exemplary computer system 600 limit the scope of the present disclosure.
[0108] In an embodiment, a computer program product including a non-transitory computer-readable medium including instructions that, when executed by one or more processors, cause the one or more processors to execute a method for managing database expansion in a network is described. The method includes storing data associated with a network function in a primary database. The method further includes detecting one or more conditions associated with triggering the database expansion of the primary database. The method includes enabling a secondary database for data storage based on the one or more detected conditions. Further, the method includes storing the data concurrently in the primary database and the secondary database for a predefined duration of time. The method furtherincludes directing at least a portion of service operations to utilize the secondary database.
[0109] While the foregoing description describes various embodiments of the invention, other and further embodiments of the invention may be devised without departing from the basic scope thereof. The scope of the invention is determined by the claims that follow. The invention is not limited to the described embodiments, versions or examples, which are included to enable a person having ordinary skill in the art to make and use the invention when combined with information and knowledge available to the person having ordinary skill in the art.
[0110] The method and system of the present disclosure may be implemented in a number of ways. For example, the methods and systems of the present disclosure may be implemented by software, hardware, firmware, or any combination of software, hardware, and firmware. The above-described order for the steps of the method is for illustration only, and the steps of the method of the present disclosure are not limited to the order specifically described above unless specifically stated otherwise. Further, in some embodiments, the present disclosure may also be embodied as programs recorded in a recording medium, the programs including machine-readable instructions for implementing the methods according to the present disclosure. Thus, the present disclosure also covers a recording medium storing a program for executing the method according to the present disclosure.[oni] While considerable emphasis has been placed herein on the preferred embodiments, it will be appreciated that many embodiments can be made and that many changes can be made in the preferred embodiments without departing from the principles of the disclosure. These and other changes in the preferred embodiments of the disclosure will be apparent to those skilled in the art from the disclosure herein, whereby it is to be distinctly understood that the foregoing descriptive matter is to be implemented merely as illustrative of the disclosure and not as a limitation.
[0112] The present disclosure provides a technical advancement related to a system and method for managing database expansion in a network, particularly for network functions such as the Binding Support Function (BSF). The advancement addresses the challenges of database scalability, service continuity, and data integrity during network expansion operations by enabling concurrent operation of multiple databases. In an embodiment, the present disclosure introduces a dual-database operation mechanism that allows simultaneous “put” and “remove” operations across both the existing and newly instantiated databases, ensuring that ongoing service requests and data storage operations are not interrupted during the database expansion phase. The present disclosure further achieves real-time scalability and efficient load distribution by dynamically directing service operations and data storage based on configuration parameters such as network identifiers (PLMN ID, slice ID, subscriber category, or region ID). The approach effectively divides network traffic and data storage responsibilities between multiple database clusters, improving query response times and system throughput while avoiding bottlenecks associated with single-database.
[0113] A significant advantage of the disclosed system is its ability to maintain data integrity and consistency during live expansion. By performing synchronized data updates and removals based on predefined Time-to-Live (TTL) parameters, the system ensures that obsolete or redundant data entries are automatically purged from either database without human intervention. Another technical benefit lies in the adaptive configuration control mechanism introduced through the use of a configurable flag (isToWriteDatalnMultipleDB). The flag allows selective activation of multi -database writing behaviour, enabling intelligent orchestration of data flow based on system-level conditions, resource availability, or administrative triggers. Such a rule-driven configuration approach enhances operational flexibility and enables network administrators to execute expansions without re-architecting existing infrastructure.TECHNICAL ADVANTAGES
[0114] Continuous service availability: The present disclosure provides a method and a system that remains operational during a Binding Support Function (BSF) expansion, allowing newer requests to be processed without interruption or downtime, ensuring high availability of services.
[0115] Improved performance: By distributing data and request load across a primary database and a secondary databases, the present disclosure reduces latency and improves response times, resulting in faster and more efficient handling of network requests.
[0116] Data integrity and consistency: The present disclosure manages the primary database and the secondary database concurrently, ensuring that data remains consistent and accurate across the network, preventing data loss or incorrect request handling during the expansion process.
[0117] Scalability: The present disclosure allows for seamless scalability of the BSF system by enabling the addition of new database clusters without requiring significant downtime or complex data migration, ensuring flexibility in managing growing network demands.
[0118] Optimized resource utilization: The present disclosure performs put and remove operations asynchronously reduces the load on individual databases, enhancing resource efficiency and minimizing the chances of bottlenecks.
[0119] Automatic data cleanup: By using Time-To-Live (TTL) settings, the present disclosure automatically removes obsolete data from the databases, ensuring that only relevant information is stored, which optimizes storage space and reduces unnecessary data handling.
[0120] Configurable operation: The present disclosure provides customizable flags for enabling or disabling multi-database operations, offering flexibility in the BSF interaction with the database, allowing for adaptable management of different operational scenarios.
Claims
CLAIMS1. A method (500) for managing database expansion in a network (106), the method (500) comprising: storing data associated with a network function in a primary database (304); detecting one or more conditions associated with triggering the database expansion of the primary database (304); enabling a secondary database (306) for data storage based on the one or more detected conditions; storing the data concurrently in the primary database (304) and the secondary database (306) for a predefined duration of time; and directing at least a portion of service operations to utilize the secondary database (306).
2. The method (500) as claimed in claim 1, wherein the data comprises, but not limiting to, subscriber data, binding data, policy control data, session references, operational data, logging data, session identifiers, database expansion parameters or control metadata.
3. The method (500) as claimed in claim 1, wherein the one or more conditions comprise one or more operational, configuration, or resource-related parameters associated with the network function or database environment.
4. The method (500) as claimed in claim 1, wherein storing the data concurrently in the primary database (304) and the secondary database (306) is performed based on evaluation of the one or more conditions, the evaluation indicating whether concurrent storage is to be enabled or disabled.
5. The method (500) as claimed in claim 1, further comprises:modifying an association between one or more network functions and the secondary database (306) based on one or more operational conditions; directing corresponding service operations to the secondary database (306); and managing retention or removal of data from at least one of the primary database (304) and the secondary database (306) based on the one or more data- management parameters.
6. The method (500) of claim 1, wherein storing the data in the primary database (304) and the secondary database (306) is based on one or more network-related, subscriber-related, or service-related identifiers or attributes.
7. A system (108) for managing database expansion in a network, the system (108) comprising: a memory (204); and a processing engine (208) coupled to the memory (204) to execute a set of instructions stored in the memory (204), the processing engine (208) is configured to: store data associated with a network function in a primary database (304); detect one or more conditions associated with triggering the database expansion of the primary database (304); enable a secondary database (306) for data storage based on the one or more detected conditions; store the data concurrently in the primary database (304) and the secondary database (306) for a predefined duration of time; anddirect at least a portion of service operations to utilize the secondary database (306).
8. The system (108) as claimed in claim 7, wherein the data comprises, but not limiting to, subscriber data, binding data, policy control data, session references, operational data, logging data, session identifiers, database expansion parameters or control metadata.
9. The system (108) as claimed in claim 7, wherein the one or more conditions comprise one or more operational, configuration, or resource-related parameters associated with the network function or database environment.
10. The system (108) as claimed in claim 7, wherein store the data concurrently in the primary database (304) and the secondary database (306) based on evaluation of the one or more conditions, the evaluation indicating whether concurrent storage is to be enabled or disabled.
11. The system (108) as claimed in claim 7, further comprises: modifying an association between one or more network functions and the secondary database (306) based on one or more operational conditions; directing corresponding service operations to the secondary database (306); and managing retention or removal of data from at least one of the primary database (304) and the secondary database (306) based on the one or more data- management parameters.
12. The system (108) as claimed in claim 7, wherein the data is stored in the primary database (304) and the secondary database (306) based on one or more network- related, subscriber-related, or service-related identifiers or attributes.
13. A computer program product comprising a non-transitory computer-readable medium comprising instructions that, when executed by one or more processors,cause the one or more processors to execute a method (500) for managing database expansion in a network (106), the method (500) comprising: storing data associated with a network function in a primary database (304); detecting one or more conditions associated with triggering the database expansion of the primary database (304); enabling a secondary database (306) for data storage based on the one or more detected conditions; storing the data concurrently in the primary database (304) and the secondary database (306) for a predefined duration of time; and directing at least a portion of service operations to utilize the secondary database (306).
Citation Information
Patent Citations
Database cluster capacity expansion and shrinkage method, service system and storage medium
CN114328440A
Systems and methods for scalable database hosting data of multiple database tenants
US20230020330A1