Sign In to Follow Application
View All Documents & Correspondence

System And Method For Dynamically Selecting A Database

Abstract: ABSTRACT SYSTEM AND METHOD FOR DYNAMICALLY SELECTING A DATABASE The present invention relates to a system (108) and a method (600) for dynamically selecting a database (112). The method (600) includes step of fetching recorded data of a primary database (110) and determining a performance of the primary database (110) based on the fetched recorded data from a secondary database (112a) utilizing a trained model (218). Thereafter, generating, a performance report of the primary database (110) based on the determination utilizing the trained model (218). Furthermore, performing one or more actions such as notifying, the generated report to a user in real time, the generated report suggesting selection of at least one of, the secondary database (112a) or an alternate database (112b). Ref. Fig. 2

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
11 September 2023
Publication Number
14/2025
Publication Type
INA
Invention Field
BIO-MEDICAL ENGINEERING
Status
Email
Parent Application

Applicants

JIO PLATFORMS LIMITED
OFFICE-101, SAFFRON, NR. CENTRE POINT, PANCHWATI 5 RASTA, AMBAWADI, AHMEDABAD - 380006, GUJARAT, INDIA

Inventors

1. Aayush Bhatnagar
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India.
2. Sandeep Bisht
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India.
3. Suman Singh Kanwer
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India.
4. Ankur Mishra
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India.
5. Yogendra Pal Singh
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India.
6. Pankaj Kshirsagar
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India.
7. Anurag Sinha
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India.
8. Mangesh Shantaram Kale
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India.
9. SUPRIYA UPADHYE
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India.
10. Ravindra Yadav
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India.
11. Abhiman Jain
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India.
12. Ezaj Ansari
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India.
13. Lakhichandra Sonkar
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India.

Specification

DESC:
FORM 2
THE PATENTS ACT, 1970
(39 of 1970)
&
THE PATENTS RULES, 2003

COMPLETE SPECIFICATION
(See section 10 and rule 13)
1. TITLE OF THE INVENTION
SYSTEM AND METHOD FOR DYNAMICALLY SELECTING A DATABASE
2. APPLICANT(S)
NAME NATIONALITY ADDRESS
JIO PLATFORMS LIMITED INDIAN OFFICE-101, SAFFRON, NR. CENTRE POINT, PANCHWATI 5 RASTA, AMBAWADI, AHMEDABAD 380006, GUJARAT, INDIA
3.PREAMBLE TO THE DESCRIPTION

THE FOLLOWING SPECIFICATION PARTICULARLY DESCRIBES THE NATURE OF THIS INVENTION AND THE MANNER IN WHICH IT IS TO BE PERFORMED.

FIELD OF THE INVENTION
[0001] The present invention relates to the field of wireless communication systems, more particularly relates to a method and a system for selection of database.
BACKGROUND OF THE INVENTION
[0002] In general, the communication system comprises of multiple databases. These multiple databases may face issues due to some errors, or any other kind of failures. The multiple databases facing issues may be due to but not limited to more load on the multiple databases, connectivity between application and the multiple databases, link fluctuation between database nodes or between application and database. Due to these issues, API (Application Programming Interface) services and the performance of the databases may get degraded.
[0003] In order to avoid degradation in the performance of the databases, appropriate or relevant selection of the database is done by the communication systems. However, appropriate or relevant selection of the database may be cumbersome and time consuming.
[0004] In view of the above, there is a dire need for a system and method for dynamically selecting relevant database, which ensures that the failures in the databases are avoided, and the efficiency and services of the databases are maintained.
SUMMARY OF THE INVENTION
[0005] One or more embodiments of the present disclosure provides a method and a system for dynamically selecting a database.
[0006] In one aspect of the present invention, the method for dynamically selecting the database is disclosed. The method includes the step of fetching, by one or more processors, from a secondary database, recorded data of a primary database. The method further includes the step of determining, by the one or mor processors, utilizing a trained model, performance of the primary database based on the fetched recorded data from the secondary database. The method further includes the step of generating, by the one or more processors, utilizing the trained model, a performance report of the primary database based on the determination. The method further includes the step of performing one or more actions, by the one or more processors, in real time, the one or more actions is at least one of, notifying the generated report to a user, the generated report suggesting selection of at least one of, the secondary database or an alternate database.
[0007] In another embodiment, the data pertaining to one or more parameters of the primary database is recorded by the one or more processors during monitoring one or more operations performed at the primary database.
[0008] In yet another embodiment, the one or more parameters of the primary database includes at least one of database specific parameters including volume of the database, memory consumption, transaction per second performed at the database, availability, scalability, latency, throughput, and data consistency.
[0009] In yet another embodiment, the one or more parameters of the primary database further includes at least one of, data pertaining to performance of the primary database including success of the one or more operations, failure of the one or more operations, overall time to complete a specific operation among the one or more operations.
[0010] In yet another embodiment, the one or more operations includes at least one of, a read/write/delete operation at the primary database
[0011] In yet another embodiment, the model is trained utilizing at least one of, historical data pertaining to the performance of the primary database.
[0012] In yet another embodiment, the trained model learns at least one of, behavior related to the performance of the primary database.
[0013] In yet another embodiment, the step of determining, utilizing a trained model, performance of the primary database based on the fetched recorded data from the secondary database, include the steps of, determining, by the one or more processors, whether the one or more parameters of the primary database are within the pre-defined thresholds or exceeding the pre-defined thresholds and in response to determining, by the one or more processors, a deviation in at least one of, the one or more parameters with reference to the pre-defined thresholds, inferring, by the one or more processors, the primary database is not suitable to perform the one or more operations.
[0014] In yet another embodiment, the deviation in at least one of, the one or more parameters with reference to the pre-defined thresholds pertains to exceeding the pre-defined thresholds.
[0015] In yet another embodiment, the generated report suggesting selection of at least one of, the secondary database or an alternate database when determined that the performance of the primary database is not being suitable for performing the one or more operations.
[0016] In another aspect of the present invention, the system for dynamically selecting the database is disclosed. The system includes an extraction unit, configured to, fetch, from a secondary database, the recorded data of a primary database. The system further includes a determination unit configured to determine, utilizing a trained model, performance of the primary database based on the fetched recorded data from the secondary database. The system further includes a generation unit configured to generate, utilizing the trained model, a performance report of the primary database based on determination. The system further includes a notification unit configured to perform one or more actions, in real time, the one or more actions is at least one of, notifying the generated report to a user, the generated report suggesting selection of at least one of, the secondary database or an alternate database.
[0017] In yet another aspect of the present invention, a non-transitory computer-readable medium having stored thereon computer-readable instructions that, when executed by a processor. The processor is configured to fetch from a secondary database, recorded data of a primary database. The processor is further configured to determine, utilizing a trained model, performance of the primary database based on the fetched recorded data from the secondary database. The processor is further configured to generate, utilizing the trained model, a performance report of the primary database based on determination. The processor is further configured to perform one or more actions, in real time, the one or more actions is at least one of, notifying the generated report to a user, the generated report suggesting selection of at least one of, the secondary database or an alternate database.
[0018] In another aspect of the present invention, a User Equipment (UE) is disclosed. One or more primary processors is communicatively coupled to one or more processors. The one or more primary processors is further coupled with a memory. The memory stores instructions which when executed by the one or more primary processors causes the UE to receive notification from the one or more processors pertaining to the generated report, the report suggesting selection of at least one of, the secondary database or an alternate database.
[0019] Other features and aspects of this invention will be apparent from the following description and the accompanying drawings. The features and advantages described in this summary and in the following detailed description are not all-inclusive, and particularly, many additional features and advantages will be apparent to one of ordinary skill in the relevant art, in view of the drawings, specification, and claims hereof. Moreover, it should be noted that the language used in the specification has been principally selected for readability and instructional purposes and may not have been selected to delineate or circumscribe the inventive subject matter, resort to the claims being necessary to determine such inventive subject matter.
BRIEF DESCRIPTION OF THE DRAWINGS
[0020] 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 disclosure of electrical components, electronic components or circuitry commonly used to implement such components.
[0021] FIG. 1 is an exemplary block diagram of an environment for dynamically selecting a database, according to one or more embodiments of the present invention;
[0022] FIG. 2 is an exemplary block diagram of a system for dynamically selecting the database, according to one or more embodiments of the present invention;
[0023] FIG. 3 is an exemplary architecture of the system of FIG. 2, according to one or more embodiments of the present invention;
[0024] FIG. 4 is an exemplary architecture for dynamically selecting the database, according to one or more embodiments of the present disclosure;
[0025] FIG. 5 is an exemplary signal flow diagram illustrating the flow for dynamically selecting the database, according to one or more embodiments of the present disclosure; and
[0026] FIG. 6 is a flow diagram of a method for dynamically selecting the database, according to one or more embodiments of the present invention.
[0027] The foregoing shall be more apparent from the following detailed description of the invention.
DETAILED DESCRIPTION OF THE INVENTION
[0028] Some embodiments of the present disclosure, illustrating all its features, will now be discussed in detail. It must also be noted that as used herein and in the appended claims, the singular forms "a", "an" and "the" include plural references unless the context clearly dictates otherwise.
[0029] Various modifications to the embodiment will be readily apparent to those skilled in the art and the generic principles herein may be applied to other embodiments. However, one of ordinary skill in the art will readily recognize that the present disclosure including the definitions listed here below are not intended to be limited to the embodiments illustrated but is to be accorded the widest scope consistent with the principles and features described herein.
[0030] A person of ordinary skill in the art will readily ascertain that the illustrated steps detailed in the figures and here below are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments.
[0031] Various embodiments of the present invention provide a system and a method for dynamically selecting a database. The present invention is able to ensure that failures in multiple databases are avoided and performance of the multiple databases is not degraded. The disclosed system and method aim at enhancing efficiency by selecting appropriate or a relevant database. In other words, the present invention provides a unique approach of dynamically selecting the database from the multiple databases and switching to the selected database in order to perform several operations. In particular, the system monitors the multiple databases in order to capture parameters and statuses of the multiple databases and further generates a performance report. Depending on the generated performance report, the system notifies a user with suggestions/recommendations for switching or selecting another database.
[0032] Referring to FIG. 1, FIG. 1 illustrates an exemplary block diagram of an environment 100 for dynamically selecting a database 112, according to one or more embodiments of the present invention. The environment 100 includes a User Equipment (UE) 102, a server 104, a network 106, a system 108, a primary database 110 and the database 112. In an embodiment, the database 112 includes at least one of, but not limited to, a secondary database 112a and an alternate database 112b. Herein after, the database 112 is referred to relevant database 112 without limiting the scope of the invention.
[0033] For the purpose of description and explanation, the description will be explained with respect to one or more user equipment’s (UEs) 102, or to be more specific will be explained with respect to a first UE 102a, a second UE 102b, and a third UE 102c, and should nowhere be construed as limiting the scope of the present disclosure. Each of the at least one UE 102 namely the first UE 102a, the second UE 102b, and the third UE 102c is configured to connect to the server 104 via the network 106.
[0034] In an embodiment, each of the first UE 102a, the second UE 102b, and the third UE 102c is one of, but not limited to, any electrical, electronic, electro-mechanical or an equipment and a combination of one or more of the above devices such as smartphones, Virtual Reality (VR) devices, Augmented Reality (AR) devices, laptop, a general-purpose computer, desktop, personal digital assistant, tablet computer, mainframe computer, or any other computing device.
[0035] The network 106 includes, 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, an infrastructure network, a Public-Switched Telephone Network (PSTN), a cable network, a cellular network, a satellite network, a fiber optic network, or some combination thereof. The network 106 may include, but is not limited to, a Third Generation (3G), a Fourth Generation (4G), a Fifth Generation (5G), a Sixth Generation (6G), a New Radio (NR), a Narrow Band Internet of Things (NB-IoT), an Open Radio Access Network (O-RAN), and the like.
[0036] The network 106 may also 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.
[0037] The environment 100 includes the server 104 accessible via the network 106. The server 104 may include by way of example but not limitation, one or more of a standalone server, a server blade, a server rack, a bank of servers, a server farm, hardware supporting a part of a cloud service or system, a home server, hardware running a virtualized server, a processor executing code to function as a server, one or more machines performing server-side functionality as described herein, at least a portion of any of the above, some combination thereof. In an embodiment, the entity may include, but is not limited to, a vendor, a network operator, a company, an organization, a university, a lab facility, a business enterprise side, a defense facility side, or any other facility that provides service.
[0038] The environment 100 further includes the primary database 110 and the relevant database 112. As per the illustrated embodiment, the primary database 110 and the relevant database 112 are configured to store data associated with the network 106. The primary database 110 and the relevant database 112 is one of, but not limited to, a centralized database, a cloud-based database, a commercial database, an open-source database, a distributed database, an end-user database, a graphical database, a No-Structured Query Language (NoSQL) database, an object-oriented database, a personal database, an in-memory database, a document-based database, a time series database, a wide column database, a key value database, a search database, a cache databases, and so forth. The foregoing examples of the primary database 110 and the relevant database 112 types are non-limiting and may not be mutually exclusive e.g., the database can be both commercial and cloud-based, or both relational and open-source, etc.
[0039] In one embodiment, when a performance of the primary database 110 is not suitable for performing one or more operations such as a read/write operation then the relevant database 112 is selected by the system 108. In particular, if the performance of the relevant database 112 is compatible with the one or more operations, then the relevant database 112 is selected by the system 108.
[0040] As per the illustrated embodiment, the relevant database 112 includes at least one of, the secondary database 112a and the alternate database 112b configured to store data associated with the network 106. In an alternate embodiment, the relevant database 112 includes at least one of, the secondary database 112a and the alternate database 112b The secondary database 112a and the alternate database 112b is one of, but not limited to, a centralized database, a cloud-based database, a commercial database, an open-source database, a distributed database, an end-user database, a graphical database, a No-Structured Query Language (NoSQL) database, an object-oriented database, a personal database, an in-memory database, a document-based database, a time series database, a wide column database, a key value database, a search database, a cache databases, and so forth. The foregoing examples of the secondary database 112a and the alternate database 112b types are non-limiting and may not be mutually exclusive e.g., the database can be both commercial and cloud-based, or both relational and open-source, etc.
[0041] The environment 100 further includes the system 108 communicably coupled to the server 104, the UE 102, the primary database 110 and the relevant database 112 via the network 106. The system 108 is adapted to be embedded within the server 104 or is embedded as the individual entity.
[0042] Operational and construction features of the system 108 will be explained in detail with respect to the following figures.
[0043] FIG. 2 is an exemplary block diagram of the system 108 for dynamically selecting the relevant database 112, according to one or more embodiments of the present invention.
[0044] As per the illustrated and preferred embodiment, the system 108 for dynamically selecting the relevant database 112, includes one or more processors 202, and a memory 204. The one or more processors 202, hereinafter referred to as the processor 202, may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, single board computers, and/or any devices that manipulate signals based on operational instructions. However, it is to be noted that the system 108 may include multiple processors as per the requirement and without deviating from the scope of the present disclosure. Among other capabilities, the processor 202 is configured to fetch and execute computer-readable instructions stored in the memory 204.
[0045] As per the illustrated embodiment, the processor 202 is configured to fetch and execute computer-readable instructions stored in the memory 204 as the memory 204 is communicably connected to the processor 202. The memory 204 is 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 for dynamically selecting the relevant database 112. The memory 204 may include any non-transitory storage device including, for example, volatile memory such as RAM, or non-volatile memory such as disk memory, EPROMs, FLASH memory, unalterable memory, and the like.
[0046] As per the illustrated embodiment, the system 108 includes the processor 202 for dynamically selecting the relevant database 112. The processor 202 includes a recorder unit 208, an extraction unit 210, a determination unit 212, a generation 214, a notification 216, a model 218 and a monitoring unit 220. The processor 202 is communicably coupled to the one or more components of the system 108 such as the memory 204. In an embodiment, operations and functionalities of the recorder unit 208, the extraction unit 210, the determination unit 212, the generation 214, the notification 216, the model 218, the monitoring unit 220 and the one or more components of the system 108 can be used in combination or interchangeably.
[0047] Initially, when one or more operations are initiated at the primary database 110, the one or more operations of the primary database 110 are monitored by the monitoring unit 220 of the processor 202. In one scenario, the one or more operations are continuously monitored by the monitoring unit 218 in the background. In an embodiment, the one or more operations includes at least one of, but not limited to, a read/write/delete operation at the primary database 110. For example, when the primary database 110 is involved in the process of read/write/delete operations then a flag is set. The flag is a value that acts as a signal for the one or more operations.
[0048] In an embodiment, during monitoring the one or more operations performed at the primary database 110, the recorder unit 208 of the processor 202 is configured to record data pertaining to one or more parameters of the primary database 110. Herin, the recorded data pertaining to one or more parameters of the primary database 110 is stored in at least one of, but not limited to, the secondary database 112a and the alternate database 112b. The one or more parameters of the primary database 110 includes at least one of, a volume, a memory consumption, a transaction per second, an availability, a scalability, a latency, a throughput, and data consistency.
[0049] In one embodiment, the volume of data refers to the size of data sets that are recorded by the recorder unit 208 to be analyzed and processed. The memory consumption refers to the amount of the memory 204 that the one or more operations requires to run. The transactions per second is a computer software and hardware measurement that represents the number of transactions completed in one second associated with the primary database 110. The availability of the primary database 110 means the period of time when the primary database 110 is functional and allowing users to access the primary database 110 via the UE 102. The scalability of the primary database 110 refers to the ability of the primary database 110 to handle increasing amounts of data, numbers of users, and types of requests without sacrificing the performance. The latency refers to the delay such as the time taken by the primary database 110 to transfer data across the network 106 which is measured in milliseconds. The throughput is a measure of the one or more operations performed by the primary database 110 in a given amount of time. The data consistency refers to the state of data in which all copies of the data are same across the system 108 and the primary database 110.
[0050] In an embodiment, the one or more parameters of the primary database 110 further includes at least one of, but not limited to, data pertaining to performance of the primary database 110 including success of the one or more operations, failure of the one or more operations, overall time to complete a specific operation among the one or more operations. For example, the overall time to complete the specific operation is measure of a time taken by the primary database 110 to complete the specific operation from start to end.
[0051] Upon recording the data pertaining to one or more parameters of the primary database 110, the extraction unit 208 of the processor 202 is configured to fetch the recorded data from at least one of, but not limited to, the secondary database 112a and the alternate database 112b. In an alternate embodiment, subsequent to fetching the recorded data from at least one of, the secondary database 112a and the alternate database 112b, the processor 202 is configured to normalize the fetched recorded data. In particular, the processor 202 may include a normalizer to preprocess the fetched recorded data. The normalizer performs at least one of, but not limited to, data normalization.
[0052] The data normalization is the process of at least one of, but not limited to, reorganizing the fetched recorded data, removing the redundant data within the fetched recorded data, formatting the fetched recorded data and removing null values from the fetched recorded data. The main goal of the the normalizer is to achieve a standardized data format across the entire system 108. The normalizer ensures that the normalized data is stored appropriately in the at least on of, the secondary database 112a and the alternate database 112b for subsequent retrieval and analysis. In one embodiment, the recorded data fetched by the extraction unit 208 is normalized by the normalizer of the processor 202.
[0053] In an embodiment, subsequent to normalizing the fetched recorded data, the processor 202 is configured to train the model 218 utilizing the normalized data of the fetched recorded data pertaining to the one or more parameters of the primary database 110. In an alternate embodiment, the the processor 202 is configured to train the model 218 utilizing the fetched recorded data without any normalization. Herin, the model 218 is at least one of a, Artificial Intelligence/Machine Learning (AI/ML) model.
[0054] While training, the model 218 monitors the fetched recorded data pertaining to the one or more parameters of the primary database 110. Further, the AI/ML model 212 learns at least one of, but not limited to, trends and patterns associated with the performance of the primary database 110. In one embodiment, the model 218, learns behavior of the primary database 110 which involves examining performance metrics, resource management, load handling capabilities, query performance, data integrity, security, backup and recovery processes, maintenance routines related to the primary database 110. The behavior of the primary database 110 refers to the observable actions, responses, and performance characteristics exhibited by the primary database 110 during the one or more operations. For example, the system 108 selects an appropriate model 218, such as at least one of, but not limited to, a neural network or a decision tree logic, from a set of available options of the model 218. Thereafter, the selected model 212 is trained using the normalized data associated with the fetched recorded data. In one embodiment, the selected model 218 is also trained on historical data associated with the primary database 110.
[0055] In one embodiment, the trends are general change in one variable compared to another variable over a period of time. For example, the trends pertain to changes in the one or more parameters of the primary database 110 within the network 106. In one embodiment, the pattern is a series of data that repeats in a recognizable way. For example, the pattern pertains to the memory consumption such as 50% memory of the primary database 110 is used every day within the network 106.
[0056] In an embodiment, upon training, the trained model 218 is utilized by the determination unit 208 of the processor 202 to determine the performance of the primary database 110 based on the fetched recorded data. In particular, the determination unit 208 determines whether the one or more parameters of the primary database 110 are within pre-defined thresholds or exceeding the pre-defined thresholds. Herin, the pre-defined thresholds associated with the one or more parameters of the primary database 110 are pre-defined by the trained model 218 based on training by applying one or more logics.
[0057] In one embodiment, the one or more logics may include at least one of, but not limited to, a k-means clustering, a hierarchical clustering, a Principal Component Analysis (PCA), an Independent Component Analysis (ICA), a deep learning logics such as Artificial Neural Networks (ANNs), a Convolutional Neural Networks (CNNs), a Recurrent Neural Networks (RNNs), a Long Short-Term Memory Networks (LSTMs), a Generative Adversarial Networks (GANs), a Q-Learning, a Deep Q-Networks (DQN), a Reinforcement Learning Logics, etc.
[0058] Further, the determination unit 208 determines a deviation in at least one of, the one or more parameters of the primary database 110 with reference to the pre-defined thresholds. In one embodiment, the deviation is determined by the determination unit 208 when the one or more parameters of the primary database 110 are within the pre-defined thresholds. Based on the deviation, the determination unit 208 notifies the monitoring unit 220 to continue the monitoring of the one or more operations at the primary database 110.
[0059] In one embodiment, the deviation is determined by the determination unit 208 when the one or more parameters of the primary database 110 exceeds the pre-defined thresholds. Based on the deviation, the determination unit 208 infers that the primary database 110 is not suitable to perform the one or more operations. Herin the pre-defined thresholds are the limits associated with the one or more parameters of the primary database 110, so when the limits are crossed then the determination unit 208 determines that the primary database 110 is not capable of performing the one or more operations.
[0060] For example, the system 108 monitors the one or more parameters such as the memory consumption of the primary database 110. Let us assume that the predefined threshold for memory consumption of the primary database 110 is 80% of the total available memory. Further, the system 108 collects historical data related to the memory consumption of the primary database 110. Thereafter, the historical data related to the memory consumption of the primary database 110 is normalized by the system 108. Furthermore, the system 108 is trained using the historical data. In particular, the model 218 of the system 108 is trained using the historical data. The model 218 learn patterns of typical memory consumption of the primary database 110 and identify deviations when the memory consumption of the primary database 110 exceeds the predefined threshold (80%). The exceeded memory consumption of the primary database 110 indicates a significant deviation from normal usage patterns.
[0061] Upon determining the performance of the primary database 110, the generation unit 214 of the processor 202 is configured to generate a performance report of the primary database 110 based on the determination utilizing the trained model 218. In particular, the performance report generated by the generation unit 214 includes data pertaining to the one or more parameters of the of the primary database 110. For example, the generated performance report includes the details pertaining to the one or more parameters which are exceeded than the pre-defined thresholds. When the memory consumption of the primary database 112 exceeds the predefined threshold (80%) then the system 108 generates an alert or notification.
[0062] Upon generating the performance report pertaining to the primary database 110, the notification unit 216 of the processor 202 is configured to notify the generated detailed report to the user in real time. In particular, the notification unit 216 is configured to transmit, the notification pertaining to the generated detailed report which includes at least one of, but not limited to, a suggestion for selecting or switching to the at least one of, the secondary database 112a and the alternate database 112b as the performance of the primary database 110 is not suitable for performing the one or more operations. Advantageously, by selecting at least one of, the secondary database 112a and the alternate database 112b the system 108 failure is avoided.
[0063] The recorder unit 208, the extraction unit 210, the determination unit 212, the generation 214, the notification 216, the model 218 and the monitoring unit 220 in an exemplary embodiment, are implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the processor 202. In the examples described herein, such combinations of hardware and programming may be implemented in several different ways. For example, the programming for the processor 202 may be processor-executable instructions stored on a non-transitory machine-readable storage medium and the hardware for the processor may comprise a processing resource (for example, one or more processors), to execute such instructions. In the present examples, the memory 204 may store instructions that, when executed by the processing resource, implement the processor 202. In such examples, the system 108 may comprise the memory 204 storing the instructions and the processing resource to execute the instructions, or the memory 204 may be separate but accessible to the system 108 and the processing resource. In other examples, the processor 202 may be implemented by electronic circuitry.
[0064] FIG. 3 illustrates an exemplary architecture for the system 108, according to one or more embodiments of the present invention. More specifically, FIG. 3 illustrates the system 108 for dynamically selecting the relevant database 112. It is to be noted that the embodiment with respect to FIG. 3 will be explained with respect to the UE 102 for the purpose of description and illustration and should nowhere be construed as limited to the scope of the present disclosure.
[0065] FIG. 3 shows communication between the UE 102, the system 108, the primary database 110 and the relevant database 112. For the purpose of description of the exemplary embodiment as illustrated in FIG. 3, the UE 102, uses network protocol connection to communicate with the system 108. In an embodiment, the network protocol connection is the establishment and management of communication between the UE 102, the system 108, the primary database 110 and the relevant database 112 over the network 106 (as shown in FIG. 1) using a specific protocol or set of protocols. The network protocol connection includes, but not limited to, Session Initiation Protocol (SIP), System Information Block (SIB) protocol, Transmission Control Protocol (TCP), User Datagram Protocol (UDP), File Transfer Protocol (FTP), Hypertext Transfer Protocol (HTTP), Simple Network Management Protocol (SNMP), Internet Control Message Protocol (ICMP), Hypertext Transfer Protocol Secure (HTTPS) and Terminal Network (TELNET).
[0066] In an embodiment, the UE 102 includes a primary processor 302, and a memory 304 and a User Interface (UI) 306. In alternate embodiments, the UE 102 may include more than one primary processor 302 as per the requirement of the network 106. The primary processor 302, may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, single board computers, and/or any devices that manipulate signals based on operational instructions.
[0067] In an embodiment, the primary processor 302 is configured to fetch and execute computer-readable instructions stored in the memory 304. The memory 304 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 for dynamically selecting the relevant database 112. The memory 304 may include any non-transitory storage device including, for example, volatile memory such as RAM, or non-volatile memory such as disk memory, EPROMs, FLASH memory, unalterable memory, and the like.
[0068] In an embodiment, the User Interface (UI) 306 includes a variety of interfaces, for example, a graphical user interface, a web user interface, a Command Line Interface (CLI), and the like. The User Interface (UI) 306 of the UE 102 allows the user to transmit a request to the system 108 for monitoring the one or more operations at the primary database 110. In one embodiment, the user may be at least one of, but not limited to, a network operator.
[0069] For example, based on the request received from the UE 102, the system 108 dynamically selects the relevant database 112. In particular, while monitoring, the system 108 records the data pertaining to the one or more operations performed at the primary database 110 at least one of, the secondary database 112a. Further, the system 108 fetches the recorded data pertaining to one or more parameters of the primary database 110 from the secondary database 112a. Further, the system 108 determines the performance of the primary database 110 based on the fetched recorded data and generates the performance report. Depending on the generated report, the system 108 identifies that the performance of the primary database 110 is not suitable for performing the one or more operations and notifies the user via the UI 306 of the UE 102 suggesting for selection of the relevant database 112 which includes at least one of, the secondary database 112a or an alternate database 112b. Advantageously, due to the selection of the relevant database 112 the degradation or failures pertaining to the databases of the network 106 are avoided.
[0070] As mentioned earlier in FIG.2, the system 108 includes the processors 202, and the memory 204, for dynamically selecting the relevant database 112, which are already explained in FIG. 2. For the sake of brevity, a similar description related to the working and operation of the system 108 as illustrated in FIG. 2 has been omitted to avoid repetition.
[0071] Further, as mentioned earlier the processor 202 includes the recorder unit 208, the extraction unit 210, the determination unit 212, the generation 214, the notification 216, the model 218 and the monitoring unit 220 which are already explained in FIG. 2. Hence, for the sake of brevity, a similar description related to the working and operation of the system 108 as illustrated in FIG. 2 has been omitted to avoid repetition. The limited description provided for the system 108 in FIG. 3, should be read with the description provided for the system 108 in the FIG. 2 above, and should not be construed as limiting the scope of the present disclosure.
[0072] FIG. 4 is an exemplary the system 108 architecture 400 for dynamically selecting the relevant database 112, according to one or more embodiments of the present disclosure.
[0073] The architecture 400 includes an Application Programming Interface (API) consumer 402, an UI API dashboard 404, a common API gateway 406, a plurality of API providers (an API provider-1 408a, an API provider-2 408b, an API provider-N 408c), an API publisher 410, an analyser 416, a one cache 420, a persistence database 422a, a cache 422b, a data ingestion 424, a streaming platform 426, a Sim Swap API Exposure Function (SSA EF) 428, a Sim Swap API Data Collector (SSA DC) 430, an API analytics 432, and an Element management system (EMS) 434 communicably coupled to each other via the network 106.
[0074] The architecture 400 of the present invention comprises of the API consumer 402. The API consumer 402 may be at least one of, an application, a developer or an enterprise that intend to use Application Programming Interfaces (APIs) for their respective use cases such as monitoring the one or more operations at the primary database 110 and dynamically selecting the relevant database 112 such as at least one of, the persistent database 422a and the cache 422b. Herin, the persistent database 422a and the cache 422b are included in the relevant database 112. The Persistent database 422a is a database for all persistent records, the persistent database 422a is a scalable, a document oriented, a schema free database. The persistent database 422a is at least one of, but not limited to, Elastic search, and Redis, etc. The cache 422b is a distributed cache which is an in-memory data structure store, used as a database, cache and a message broker. The message broker is software that enables the applications, systems and services to communicate with each other and exchange information.
[0075] In an embodiment, The UI API Dashboard 404 is a User Interface (UI) from where the user transmits the request or API calls for monitoring the one or more operations at the primary database 110 and visualize notification pertaining to the details of the performance of the primary database 110 not being suitable for performing the one or more operations and suggesting selection of at least one of, the persistent database 422a and the cache 422b for performing the one or more operations.
[0076] In an embodiment, the common API gateway 406 may be a part of the system 108. The common API gateway 406 is a data-plane entry point for the API calls that represent API consumer 402 requests to monitor the one or more operations at the primary database 110. The common API gateway 406 typically performs request/API calls processing based on defined policies, including authentication, authorization, access control, routing, and load balancing.
[0077] The common API gateway 406 comprises one or more modules, such as the CAPIF 406a, an Access Management System (AMS) 406b, an Identity and Access Management (IAM) 406d and an Elastic Load Balancer (ELB) 406c. The CAPIF 406a module is a complete 3rd Generation Partnership Project (3GPP) API framework that covers functionality related to dynamically selecting the relevant database 112. The CAPIF 406a is a common API gateway for API consumer 402, and the API providers 408. The CAPIF 406a also deals with security and authorization of the APIs. The AMS 406b module outsources the task of providing ongoing support for applications to an external provider that specializes in this type of maintenance and monitoring. The AMS 406b performs access control policy check and enrichment of the API call. The IAM 406d module is used for authentication and authorization of a third-party consumers. The ELB 406c module automatically distributes incoming traffic pertaining to API calls across multiple targets and virtual appliances in one or more availability zones.
[0078] In one embodiment, the plurality of API Providers 408 is an application that hosts the APIs and uses CAPIF 406a to expose their APIs. Similar to the API consumer 402, the API publisher 410 comprises an API developer, an API playground, and an enterprise architecture. Further, the API publisher 410 comprises a subscription engine 412 which manages the user subscriptions, billing and quota enforcement and a marketplace engine 414 which serves as a platform for listing APIs, allowing consumers to discover, evaluate, and subscribe to APIs. In one embodiment, the SSA EF 428 is a microservice. The microservices are an architectural and organizational approach to software development where software is composed of small independent services that communicate over well-defined APIs. The SSA EF 428 refers to the functionality or method within a system that interacts with APIs to detect, manage, and respond to SIM swap activities. The SSA EF 428 assesses whether the data or notifications retrieved from the API indicate a possible SIM swap event. In one embodiment, the SSA DC 430 is a data collector microservice. The SSA DC 430 refers to a system or service designed to monitor and collect data related to SIM card swaps through APIs.
[0079] In one embodiment, the data ingestion 424 performs a data ingestion process of acquiring, importing, and processing data from various sources into the system 108 where the data can be stored, analysed, and used for further processing. The streaming platform 426 is a technology that allows for the real-time processing and analysis of continuous data streams. The streaming platform 426 are designed to handle large volumes of data that are generated continuously, enabling applications to process, analyze, and act on the large volumes of data in real time. The streaming platform 426 are essential for scenarios where immediate insights and actions are required, such as monitoring, analytics, and real-time decision-making. The API analytics 432 involves the collection, analysis, and reporting of data related to the usage and performance of the APIs. The EMS 434 is a type of network management system that focuses on managing and monitoring individual network elements or devices within a larger network infrastructure.
[0080] In one embodiment, the analyser 416 acts as the determination unit 212 and the model 218 in order to dynamically select the relevant database 112 such as the persistent database 422a and the cache 422b. In one embodiment, analyser 416 utilizes the Artificial Intelligence/Machine Learning (AI/ML) decisions to dynamically select the relevant database 112. In one embodiment, the one Cache 420 is a unified data cache/data store to store details pertaining to the performance of the primary database 110 in at least one of, the persistent database 422a and the cache 422b.
[0081] FIG. 5 is a signal flow diagram illustrating the flow for dynamically selecting the relevant database 112, according to one or more embodiments of the present disclosure.
[0082] At step 502, the user transmits the request to the system 108 via the UE 102 for monitoring the one or more operations at the primary database 110 in the network 106.
[0083] At step 504, the system 108 records the one or more parameters of the primary database 110 at the relevant database 112 during monitoring the one or more operations performed at the primary database 110 based on the received request. Further, the system 108 fetches the recorded data pertaining to the one or more parameters of the primary database 110 from the relevant database 112.
[0084] At step 506, the system 108 determines the performance of the primary database 110 based on the fetched recorded data from the relevant database 112 utilizing the trained model 218.
[0085] At step 508, the system 108 generates the performance report of the primary database 110 based on the determination utilizing the trained model 218.
[0086] At step 510, the system 108 notifies the user regarding the generated report which includes the suggestion for selection of the relevant database 112 which includes at least one of, the secondary database 112a and the alternate database 112b when determined that the performance of the primary database not being suitable for performing the one or more operations.
[0087] FIG. 6 is a flow diagram of a method 600 for dynamically selecting the relevant database 112, according to one or more embodiments of the present invention. For the purpose of description, the method 600 is described with the embodiments as illustrated in FIG. 2 and should nowhere be construed as limiting the scope of the present disclosure.
[0088] At step 602, the method 600 includes the step of recording the data pertaining to one or more parameters of the primary database 110 during monitoring one or more operations performed at the primary database 110. In one embodiment, the recorder unit 208 records the data pertaining to one or more parameters of the primary database 110. For example, let us consider that three databases are connected in the network 106 such as database A, a database B and a database C. Further, let us consider that the operations such as read/write operations are initiated by the system 108 at the database A and the monitoring unit 220 is simultaneously monitoring the read/write operations. During monitoring, the recorder unit 208 records the data pertaining to one or more parameters such as such as time taken by the database A to perform the read/write operations, and the memory consumption of the database A. Further, the data pertaining to at least one of, the time taken by the database A to perform the read/write operations, and the memory consumption of the database A is stored in at least one of, the database B and the database C.
[0089] At step 604, the method 600 includes the step fetching, from the secondary database 112a, the recorded data of the primary database 110. In one embodiment, the extraction unit 210 fetches the recorded data of the primary database 110 from the secondary database 112a. For example, the extraction unit 210 fetches the data pertaining to at least one of, the time taken by the database A to perform the read/write operations, and the memory consumption of the database A is from the at least one of, the database B and the database C.
[0090] At step 606, the method 600 includes the step of determining performance of the primary database 110 based on the fetched recorded data from the secondary database 112a utilizing the trained model 218. In one embodiment, the determination unit 212 determines the performance of the primary database 110 based on the fetched recorded data. In particular, the determination unit 212 determines the performance of the primary database 110 by comparing the one or more parameters of the primary database 110 are with the pre-defined thresholds. In one embodiment, the determination unit 212 determines whether the one or more parameters of the primary database 110 are within the predefined thresholds or exceeding the predefined thresholds. Herin, the pre-defined thresholds are set by the trained model 218 based on training and the pre-defined thresholds are taken into consideration as ideal working condition of the primary database 110.
[0091] For example, let us consider, the pre-defined thresholds for the one or more parameters such as the time for performing the read/write operations is 5seconds and the memory consumption is 1TeraByte (TB). In order to detect performance of the primary database 110, the determination unit 212 compares the one or more parameters of the database A with the pre-defined thresholds. In one scenario, based on comparison, if the determination unit 212 determines deviation with reference to the pre-defined thresholds such as the time taken by the database A to perform the read/write operations is less than 5 seconds, and the memory consumption of the database A is less than 1 TB then the steps from the step 602 is again repeated. In another scenario, based on comparison, if the determination unit 212 determines deviation with reference to the pre-defined thresholds such as the time taken by the database A to perform the read/write operations is more than 5 seconds, and the memory consumption of the database A is more than 1 TB then the determination unit 212 infers that the database A is not suitable to perform the read/write operations.
[0092] At step 608, the method 600 includes the step of generating, utilizing the trained model 218, the performance report of the primary database 110 based on the determination. In one embodiment, the generation unit 214 is configured to generate the performance report of the primary database 110. In particular, the details pertaining to the the one or more parameters associated with the performance of the primary database 110 is added in the performance report. For example, the generation unit 214 generate the performance report which includes the details such as the time taken by the database A to perform the read/write operations is more than 5 seconds, and the memory consumption of the database A is more than 1 TB.
[0093] At step 610, the method 600 includes the step of notifying, in real time, the generated report to the user, the generated report suggesting selection of at least one of, the secondary database 112a or the alternate database 112b when determined that the performance of the primary database 110 not being suitable for performing the one or more operations. In one embodiment, the notification unit 216 is configured to notify the generated report to the user in real time.
[0094] In one embodiment, the generated performance report of the primary database 110 further includes the at least one of, but not limited to, suggestions for selecting or switching to the relevant database 112 such as the secondary database 112a and the alternate database 112b the performance of the primary database 110 is not being suitable for performing the one or more operations. For example, the the generated performance report includes suggestions for selecting or switching to at least one of, the database B and the database C as the database A is not suitable to perform the read/write operations. Advantageously, due to the notifying the suggestions provided in the generated report, the users may switch to the relevant database 112 for performing the one or more operations so that the performance of the system 108 is not degraded and the complete system 108 failure is avoided.
[0095] In yet another aspect of the present invention, a non-transitory computer-readable medium having stored thereon computer-readable instructions that, when executed by the processor 202. The processor 202 is configured to record data pertaining to one or more parameters of the primary database 110 during monitoring one or more operations performed at the primary database 110. The processor 202 is further configured to fetch, from the secondary database 112a, the recorded data of the primary database 110. The processor 202 is further configured to determine, utilizing the trained model 218, performance of the primary database 110 based on the fetched recorded data from the secondary database 112a. The processor 202 is further configured to, generate, utilizing the trained model 218, the performance report of the primary database 110 based on the determination. The processor 202 is further configured to, notify, in real time, the generated report to the user, the generated report suggesting selection of at least one of, the secondary database 112a or an alternate database 112b when determined that the performance of the primary database 110 not being suitable for performing the one or more operations.
[0096] A person of ordinary skill in the art will readily ascertain that the illustrated embodiments and steps in description and drawings (FIG.1-6) are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments.
[0097] The present disclosure provides technical advancements of proactive monitoring of the databases. Notifying the user for selecting or switching the relevant database in real time. Due to notification the time consumption for selecting or switching the relevant database is reduced. Auto replication between the databases. Dynamically selecting relevant database ensures that the failures in the databases are avoided and the efficiency of the databases are maintained
[0098] The present invention offers multiple advantages over the prior art and the above listed are a few examples to emphasize on some of the advantageous features. The listed advantages are to be read in a non-limiting manner.

REFERENCE NUMERALS

[0099] Environment - 100;
[00100] User Equipment (UE) - 102;
[00101] Server - 104;
[00102] Network- 106;
[00103] System -108;
[00104] Primary databases – 110;
[00105] Relevant database – 112;
[00106] Secondary database -112a;
[00107] Alternate database – 112b;
[00108] Processor - 202;
[00109] Memory - 204;
[00110] Recorder unit – 208;
[00111] Extraction unit – 210;
[00112] Determination unit – 212;
[00113] Generation unit – 214;
[00114] Notification unit – 216;
[00115] Model -218;
[00116] Monitoring unit – 220;
[00117] Primary Processor – 302;
[00118] Memory – 304;
[00119] User Interface (UI) – 306;
[00120] API consumer – 402;
[00121] UI API Dashboard – 404;
[00122] Common API Gateway – 406;
[00123] API Provider - 408;
[00124] API Publisher – 410;
[00125] Subscription Engine - 412;
[00126] Market Place – 414;
[00127] One cache - 420;
[00128] Analyser - 416;
[00129] Persistent database - 422a;
[00130] Cache - 422b;
[00131] Data ingestion – 424;
[00132] Streaming platform – 426;
[00133] SSA EF - 428;
[00134] SSA DC – 430;
[00135] API analytics - 432;
[00136] EMS – 434.

,CLAIMS:CLAIMS
We Claim:
1. A method (600) for dynamically selecting a database (112), the method (600) comprising the steps of:
fetching, by one or more processors (202), from a secondary database (112a), recorded data of a primary database (110);
determining, by the one or mor processors (202), utilizing a trained model (218), performance of the primary database (110) based on the fetched recorded data from the secondary database (112a);
generating, by the one or more processors (202), utilizing the trained model (218), a performance report of the primary database (110) based on the determination; and
performing one or more actions, by the one or more processors (202), in real time, wherein the one or more actions is at least one of, notifying the generated report to a user, wherein the generated report suggesting selection of at least one of, the secondary database (112a) or an alternate database (112b).

2. The method (600) as claimed in claim 1, wherein the data pertaining to one or more parameters of the primary database (110) is recorded by the one or more processors during monitoring one or more operations performed at the primary database (110).

3. The method (600) as claimed in claim 2, wherein the one or more parameters of the primary database (110) includes at least one of database specific parameters including volume of the database, memory consumption, transaction per second performed at the database, availability, scalability, latency, throughput, and data consistency.

4. The method (600) as claimed in claim 2, wherein the one or more parameters of the primary database (110) further includes at least one of, data pertaining to performance of the primary database (110) including success of the one or more operations, failure of the one or more operations, overall time to complete a specific operation among the one or more operations.

5. The method (600) as claimed in claim 2, wherein the one or more operations includes at least one of, a read/write/delete operation at the primary database (110).

6. The method (600) as claimed in claim 1, wherein the model (218) is trained utilizing at least one of, historical data pertaining to the performance of the primary database (110).

7. The method (600) as claimed in claim 1, wherein the trained model (218) learns at least one of, behavior related to the performance of the primary database (110).

8. The method (600) as claimed in claim 1, wherein the step of determining, utilizing a trained model (218), performance of the primary database (110) based on the fetched recorded data from the secondary database (112a), include the steps of:
determining, by the one or more processors (202), whether the one or more parameters of the primary database (110) are within the pre-defined thresholds or exceeding the pre-defined thresholds; and
in response to determining, by the one or more processors (202), a deviation in at least one of, the one or more parameters with reference to the pre-defined thresholds, inferring, by the one or more processors (202), the primary database (110) is not suitable to perform the one or more operations.

9. The method (600) as claimed in claim 8, wherein the deviation in at least one of, the one or more parameters with reference to the pre-defined thresholds pertains to exceeding the pre-defined thresholds.

10. The method (600) as claimed in claim 1, wherein the generated report suggesting selection of at least one of, the secondary database (112a) or an alternate database (112b) when determined that the performance of the primary database (110) is not being suitable for performing the one or more operations.

11. A system (108) for dynamically selecting a database (112), the system (108) comprises:
an extraction unit (210), configured to, fetch, from a secondary database (112a), recorded data of a primary database (110);
a determination unit (212), configured to, determine, utilizing a trained model (218), performance of the primary database (110) based on the fetched recorded data from the secondary database (112a);
a generation unit (214), configured to, generate, utilizing the trained model (218), a performance report of the primary database (110) based on the determination; and
a notification unit (216), configured to, perform one or more actions, in real time, wherein the one or more actions is at least one of, notifying the generated report to a user, wherein the generated report suggesting selection of at least one of, the secondary database (112a) or an alternate database (112b).

12. The system (108) as claimed in claim 11, wherein the data pertaining to one or more parameters of the primary database (110) is recorded by a recorder unit (208) during monitoring one or more operations performed at the primary database (110).

13. The system (108) as claimed in claim 12, wherein the one or more parameters of the primary database (110) includes at least one of database specific parameters including volume of the database, memory consumption, transaction per second performed at the database, availability, scalability, latency, throughput, and data consistency.

14. The system (108) as claimed in claim 12, wherein the one or more parameters of the primary database (110) further includes at least one of, data pertaining to performance of the primary database (110) including success of the one or more operations, failure of the one or more operations, overall time to complete a specific operation among the one or more operations.

15. The system (108) as claimed in claim 12, wherein the one or more operations includes at least one of, a read/write/delete operation at the primary database (110).

16. The system (108) as claimed in claim 11, wherein the model (218) is trained utilizing at least one of, historical data pertaining to the performance of the primary database (110).

17. The system (108) as claimed in claim 11, wherein the trained model (218) learns at least one of, behavior related to the performance of the primary database (110).

18. The system (108) as claimed in claim 11, wherein the determination unit (212) determines, utilizing a trained model (218), performance of the primary database (110) based on the fetched recorded data from the secondary database (112a), by:
determining, whether the one or more parameters of the primary database (110) are within the pre-defined thresholds or exceeding the pre-defined thresholds; and
in response to determining, a deviation in at least one of, the one or more parameters with reference to the pre-defined thresholds, inferring, the primary database (110) is not suitable to perform the one or more operations.

19. The system (108) as claimed in claim 18, wherein the deviation in at least one of, the one or more parameters with reference to the pre-defined thresholds pertains to exceeding the pre-defined thresholds.

20. The system (108) as claimed in claim 11, wherein the generated report suggesting selection of at least one of, the secondary database (112a) or an alternate database (112b) when determined that the performance of the primary database (110) is not being suitable for performing the one or more operations.

21. A User Equipment (UE) (102), comprising:
one or more primary processors (302) communicatively coupled to one or more processors (202), the one or more primary processors (302) coupled with a memory (304), wherein said memory (304) stores instructions which when executed by the one or more primary processors (302) causes the UE (102) to:
receive, notification from the one or more processors (202) pertaining to the generated report, the report suggesting selection of at least one of, the secondary database (112a) or an alternate database (112b) when determined that the performance of the primary database (110) is not being suitable for performing the one or more operations; and
wherein the one or more processors (202) is configured to perform the steps as claimed in claim 1.

Documents

Application Documents

# Name Date
1 202321061105-STATEMENT OF UNDERTAKING (FORM 3) [11-09-2023(online)].pdf 2023-09-11
2 202321061105-PROVISIONAL SPECIFICATION [11-09-2023(online)].pdf 2023-09-11
3 202321061105-POWER OF AUTHORITY [11-09-2023(online)].pdf 2023-09-11
4 202321061105-FORM 1 [11-09-2023(online)].pdf 2023-09-11
5 202321061105-FIGURE OF ABSTRACT [11-09-2023(online)].pdf 2023-09-11
6 202321061105-DRAWINGS [11-09-2023(online)].pdf 2023-09-11
7 202321061105-DECLARATION OF INVENTORSHIP (FORM 5) [11-09-2023(online)].pdf 2023-09-11
8 202321061105-FORM-26 [27-11-2023(online)].pdf 2023-11-27
9 202321061105-Proof of Right [12-02-2024(online)].pdf 2024-02-12
10 202321061105-DRAWING [11-09-2024(online)].pdf 2024-09-11
11 202321061105-COMPLETE SPECIFICATION [11-09-2024(online)].pdf 2024-09-11
12 Abstract 1.jpg 2024-10-08
13 202321061105-Power of Attorney [24-01-2025(online)].pdf 2025-01-24
14 202321061105-Form 1 (Submitted on date of filing) [24-01-2025(online)].pdf 2025-01-24
15 202321061105-Covering Letter [24-01-2025(online)].pdf 2025-01-24
16 202321061105-CERTIFIED COPIES TRANSMISSION TO IB [24-01-2025(online)].pdf 2025-01-24
17 202321061105-FORM 3 [29-01-2025(online)].pdf 2025-01-29