Abstract: The present disclosure relates to approaches for remote monitoring performance of a database system. In one example, a method comprises receiving an application programming interface (API) request for monitoring a database cluster. The method further comprises determining a type of the API request. The method further comprises based on the determined type of API request, retrieving a set of metric data. The method further comprises analysing the set of metric data for filtering out a set of extraneous metric data from the retrieved set of metric data to obtain a filtered set of data. The method further comprises compiling the filtered set of data to obtain a compiled set of data. The method further comprises displaying the compiled set of data. [FIG. 5]
FORM 2
THE PATENTS ACT, 1970 (39 OF 1970) & THE PATENT RULES, 2003
COMPLETE SPECIFICATION
(See section 10 and rule 13)
“METHOD AND SYSTEM FOR REMOTE MONITORING PERFORMANCE OF A DATABASE SYSTEM”
We, Jio Platforms Limited, an Indian National, of Office - 101, Saffron, Nr. Centre Point, Panchwati 5 Rasta, Ambawadi, Ahmedabad - 380006, Gujarat, India.
The following specification particularly describes the invention and the manner in which it is to be performed.
METHOD AND SYSTEM FOR REMOTE MONITORING PERFORMANCE OF A DATABASE SYSTEM
FIELD OF INVENTION
[0001] Embodiments of the present disclosure relate to a method and system for remote monitoring performance of a database system.
BACKGROUND
[0002] The following description of the 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 is used only to enhance the understanding of the reader with respect to the present disclosure, and not as admissions of the prior art.
[0003] Wireless communication technology has rapidly evolved over the past few decades, with each generation bringing significant improvements and advancements. The first generation of wireless communication technology was based on analog technology and offered only voice services. However, with the advent of the second generation (2G) technology, digital communication and data services became possible, and text messaging 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, better network coverage, and improved security. Currently, the fifth generation (5G) technology is being deployed, promising even faster data speeds, low latency, and the ability to connect multiple devices simultaneously. With each generation, wireless communication technology has become more advanced, sophisticated, and capable of delivering more services to its users.
[0004] In the 5G Core and 5G Cloud ecosystem, wide range of databases are deployed which spans numerous clusters. An increase in the number of databases makes it difficult to monitor and get an overall picture of the health status and performance of all databases. Running multiple monitoring tools to monitor the databases may consume additional system resources on the servers hosting the databases. Further, the conventionally available methods and systems are inefficient and lead to delays in identifying and resolving crucial problems across the entire infrastructure. Therefore, inefficient monitoring and management of network performance parameters impacts the overall health and performance of the network and databases, including issues like increased latency, network congestion, challenges in edge computing, resource utilization inefficiencies, and application performance problems.
[0005] Thus, in order to improve the radio access network capacity, network performance, and database performances, there exists an imperative need in the art to reliably and remotely monitor and manage the database performances, and network performance parameters, which the present disclosure aims to address.
SUMMARY
[0006] This section is provided to introduce certain aspects of the present disclosure in a simplified form that are further described below in the detailed description. This summary is not intended to identify the key features or the scope of the claimed subject matter.
[0007] An aspect of the present disclosure may relate to a method for remote monitoring performance of a database system, the method comprising receiving, by a transceiver unit, an application programming interface (API) request for monitoring a database cluster. The method further comprises determining, by a determination unit, a type of the API request. The method further comprises based
on the determined type of API request, retrieving, by a retrieving unit, a set of metric data. The method further comprises analysing, by an analysis unit, the set of metric data for filtering out a set of extraneous metric data from the retrieved set of metric data to obtain a filtered set of data. The method further comprises compiling, by a processing unit, the filtered set of data to obtain a compiled set of data. The method further comprises displaying, by user interface via a display unit, the compiled set of data.
[0008] In an exemplary aspect of the present disclosure, the method further comprises validating, by a validation unit, the received API request.
[0009] In an exemplary aspect of the present disclosure, retrieving, by the retrieving unit, the set of metric data comprises: if the type of API request is an infrastructure metric, retrieving a set of infrastructure metric data associated with the infrastructure metric from a database cluster.
[0010] In an exemplary aspect of the present disclosure, retrieving, by the retrieving unit, the set of metric data comprises: if the type of API request is a database performance metric, retrieving a set of current metric data associated with the database performance metric from a set of nodes of the database cluster.
[0011] In an exemplary aspect of the present disclosure, the method further comprises transmitting, by the transceiver unit, a notification to a user if the set of metric data breaches a predefined threshold.
[0012] In an exemplary aspect of the present disclosure, the set of extraneous metrics comprises at least one of catalog stats, logical Session, record cache, and internal transactions.
[0013] In an exemplary aspect of the present disclosure, the method further comprises normalizing, by the processing unit, the filtered set of data; scaling, by
the processing unit, the normalized set of data; and aggregating, by the processing unit, the scaled set of data.
[0014] In an exemplary aspect of the present disclosure, the set of metric data comprises at least one of data relating to connections, bottlenecks, queries per second, index usage, memory usage, resource utilization issues and replication lag.
[0015] In an exemplary aspect of the present disclosure, the user interface is configurable to enable customisation.
[0016] Another aspect of the present disclosure may relate to a system for remote monitoring performance of a database system, the system comprising: a transceiver unit configured to receive an application programming interface (API) request for monitoring a database cluster. The system further comprises a determination unit connected to at least the transceiver unit, the determination unit is configured to determine a type of the API request. The system further comprises a retrieving unit connected to at least the determination unit, the retrieving unit is configured to: retrieve a set of metric data based on the determined type of API request. The system further comprises an analysis unit connected to at least the retrieving unit, the analysis unit is configured to analyse the set of metric data for filtering out a set of extraneous metric data from the retrieved set of metric data to obtain a filtered set of data. The system further comprises a processing unit connected to at least the analysis unit, the processing unit is configured to compile the filtered set of data to obtain a compiled set of data. The system further comprises a display unit connected to at least the processing unit, the display unit is configured to display via a user interface, the compiled set of data.
[0017] Yet another aspect of the present disclosure may relate to a non-transitory computer readable storage medium storing instructions for remote monitoring performance of a database system, the instructions include executable code which, when executed by one or more units of a system, causes: a transceiver unit of the
system to receive an application programming interface (API) request for monitoring a database cluster. Further, the instructions include executable code which, when executed causes a determination unit of the system to determine a type of the API request. Further, the instructions include executable code which, when executed causes a retrieving unit of the system to retrieve a set of metric data based on the determined type of API request. Further, the instructions include executable code which, when executed causes an analysis unit of the system to analyse the set of metric data for filtering out a set of extraneous metric data from the retrieved set of metric data to obtain a filtered set of data. Further, the instructions include executable code which, when executed causes a processing unit of the system to compile the filtered set of data to obtain a compiled set of data. Further, the instructions include executable code which, when executed causes a display unit is of the system to display via a user interface, the compiled set of data.
OBJECTS OF THE DISCLOSURE
[0018] Some of the objects of the present disclosure, which at least one embodiment disclosed herein satisfies are listed herein below.
[0019] It is an object of the present disclosure to provide a system and a method for remote monitoring performance of a database system.
[0020] It is yet another object of the present disclosure to monitor the network performance parameters.
[0021] It is yet another object of the present disclosure to provide dynamic insight parameters of the network performances.
[0022] It is yet another object of the present disclosure to efficiently manage latency of the network, network congestion, edge computing, resource efficiency, and application performance.
DESCRIPTION OF THE DRAWINGS
[0023] The accompanying drawings, which are incorporated herein, and constitute
5 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. Also, the embodiments shown in the figures are not to be construed as
10 limiting the disclosure, but the possible variants of the method and system
according to the disclosure are illustrated herein to highlight the advantages of the disclosure. It will be appreciated by those skilled in the art that disclosure of such drawings includes disclosure of electrical components or circuitry commonly used to implement such components.
15
[0024] FIG. 1 illustrates an exemplary block diagram representation of 5th generation core (5GC) network architecture;
[0025] FIG. 2 illustrates an exemplary block diagram of a computing device upon
20 which the features of the present disclosure may be implemented in accordance with
exemplary implementation of the present disclosure;
[0026] FIG. 3 illustrates an exemplary block diagram of a system for remote
monitoring performance of a database system, in accordance with exemplary
25 implementations of the present disclosure;
[0027] FIG. 4 illustrates an exemplary flow diagram of a method for remote monitoring performance of a database system, in accordance with exemplary implementations of the present disclosure; 30
7
[0028] FIG. 5 illustrates a method flow diagram for remote monitoring performance of a database system, in accordance with exemplary implementations of the present disclosure; and
5 [0029] FIG. 6 illustrates a system architecture diagram for remote monitoring
performance of a database system, in accordance with exemplary implementations of the present disclosure.
[0030] The foregoing shall be more apparent from the following more detailed
10 description of the disclosure.
DETAILED DESCRIPTION
[0031] In the following description, for the purposes of explanation, various
15 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 may each be used independently of one
another or with any combination of other features. An individual feature may not
20 address any of the problems discussed above or might address only some of the
problems discussed above.
[0032] The ensuing description provides exemplary embodiments only, and is not intended to limit the scope, applicability, or configuration of the disclosure. Rather,
25 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.
30
8
[0033] 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, processes, and other components
5 may be shown as components in block diagram form in order not to obscure the
embodiments in unnecessary detail.
[0034] Also, it is noted that individual embodiments may be described as a process which is depicted as a flowchart, a flow diagram, a data flow diagram, a structure
10 diagram, or a block diagram. Although a flowchart may describe the operations as
a sequential process, many of the operations may 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.
15
[0035] The word “exemplary” and/or “demonstrative” is used herein to mean serving as an example, instance, or illustration. For the avoidance of doubt, the subject matter disclosed herein is not limited by such examples. In addition, any aspect or design described herein as “exemplary” and/or “demonstrative” is not
20 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—in a manner
25 similar to the term “comprising” as an open transition word—without precluding
any additional or other elements.
[0036] As used herein, a “processing unit” or “processor” or “operating processor”
includes one or more processors, wherein processor refers to any logic circuitry for
30 processing instructions. A processor may be a general-purpose processor, a special
purpose processor, a conventional processor, a digital signal processor, a plurality
9
of microprocessors, one or more microprocessors in association with a Digital
Signal 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,
5 input/output processing, and/or any other functionality that enables the working of
the system according to the present disclosure. More specifically, the processor or processing unit is a hardware processor.
[0037] As used herein, “a user equipment”, “a user device”, “a smart-user-device”,
10 “a smart-device”, “an electronic device”, “a mobile device”, “a handheld device”,
“a wireless communication device”, “a mobile communication device”, “a communication device” may be any electrical, electronic and/or computing device or equipment, capable of implementing the features of the present disclosure. The user equipment/device may include, but is not limited to, a mobile phone, smart
15 phone, laptop, a general-purpose computer, desktop, personal digital assistant,
tablet computer, wearable device or any other computing device which is capable of implementing the features of the present disclosure. Also, the user device may contain at least one input means configured to receive an input from unit(s) which are required to implement the features of the present disclosure.
20
[0038] As used herein, “storage unit” or “memory unit” refers to a machine or computer-readable medium including any mechanism for storing information in a form readable by a computer or similar machine. For example, a computer-readable medium includes read-only memory (“ROM”), random access memory (“RAM”),
25 magnetic disk storage media, optical storage media, flash memory devices or other
types of machine-accessible storage media. The storage unit stores at least the data that may be required by one or more units of the system to perform their respective functions.
30 [0039] As used herein “interface” or “user interface refers to a shared boundary
across which two or more separate components of a system exchange information
10
or data. The interface may also be referred to a set of rules or protocols that define communication or interaction of one or more modules or one or more units with each other, which also includes the methods, functions, or procedures that may be called. 5
[0040] All modules, units, components used herein, unless explicitly excluded
herein, may be software modules or hardware processors, the processors being a
general-purpose processor, a special purpose processor, a conventional processor, a
digital signal processor (DSP), a plurality of microprocessors, one or more
10 microprocessors in association with a DSP core, a controller, a microcontroller,
Application Specific Integrated Circuits (ASIC), Field Programmable Gate Array circuits (FPGA), any other type of integrated circuits, etc.
[0041] As used herein the transceiver unit include at least one receiver and at least
15 one transmitter configured respectively for receiving and transmitting data, signals,
information or a combination thereof between units/components within the system and/or connected with the system.
[0042] As discussed in the background section, the current known solutions have
20 several shortcomings. The present disclosure aims to overcome the above-
mentioned and other existing problems in this field of technology by providing method and system for remote monitoring performance of a database system. The conventionally available solutions fail to efficiently monitor the network functions, database functions, and network performance parameters. 25
[0043] Hereinafter, exemplary embodiments of the present disclosure will be described with reference to the accompanying drawings.
[0044] FIG. 1 illustrates an exemplary block diagram representation of 5th
30 generation core (5GC) network architecture, in accordance with exemplary
implementation of the present disclosure. As shown in FIG. 1, the 5GC network
11
architecture [100] includes a user equipment (UE) [102], a radio access network
(RAN) [104], an access and mobility management function (AMF) [106], a Session
Management Function (SMF) [108], a Service Communication Proxy (SCP) [110],
an Authentication Server Function (AUSF) [112], a Network Slice Specific
5 Authentication and Authorization Function (NSSAAF) [114], a Network Slice
Selection Function (NSSF) [116], a Network Exposure Function (NEF) [118], a
Network Repository Function (NRF) [120], a Policy Control Function (PCF) [122],
a Unified Data Management (UDM) [124], an application function (AF) [126], a
User Plane Function (UPF) [128], a data network (DN) [130], wherein all the
10 components are assumed to be connected to each other in a manner as obvious to
the person skilled in the art for implementing features of the present disclosure.
[0045] Radio Access Network (RAN) [104] is the part of a mobile
telecommunications system that connects user equipment (UE) [102] to the core
15 network (CN) and provides access to different types of networks (e.g., 5G network).
It consists of radio base stations and the radio access technologies that enable wireless communication.
[0046] Access and Mobility Management Function (AMF) [106] is a 5G core
20 network function responsible for managing access and mobility aspects, such as UE
registration, connection, and reachability. It also handles mobility management procedures like handovers and paging.
[0047] Session Management Function (SMF) [108] is a 5G core network function
25 responsible for managing session-related aspects, such as establishing, modifying,
and releasing sessions. It coordinates with the User Plane Function (UPF) for data forwarding and handles IP address allocation and QoS enforcement.
[0048] Service Communication Proxy (SCP) [110] is a network function in the
30 5G core network that facilitates communication between other network functions
12
by providing a secure and efficient messaging service. It acts as a mediator for service-based interfaces.
[0049] Authentication Server Function (AUSF) [112] is a network function in
5 the 5G core responsible for authenticating UEs during registration and providing
security services. It generates and verifies authentication vectors and tokens.
[0050] Network Slice Specific Authentication and Authorization Function
(NSSAAF) [114] is a network function that provides authentication and
10 authorization services specific to network slices. It ensures that UEs can access only
the slices for which they are authorized.
[0051] Network Slice Selection Function (NSSF) [116] is a network function
responsible for selecting the appropriate network slice for a UE based on factors
15 such as subscription, requested services, and network policies.
[0052] Network Exposure Function (NEF) [118] is a network function that exposes capabilities and services of the 5G network to external applications, enabling integration with third-party services and applications. 20
[0053] Network Repository Function (NRF) [120] is a network function that acts as a central repository for information about available network functions and services. It facilitates the discovery and dynamic registration of network functions.
25 [0054] Policy Control Function (PCF) [122] is a network function responsible for
policy control decisions, such as QoS, charging, and access control, based on subscriber information and network policies.
[0055] Unified Data Management (UDM) [124] is a network function that
30 centralizes the management of subscriber data, including authentication,
authorization, and subscription information.
13
[0056] Application Function (AF) [126] is a network function that represents external applications interfacing with the 5G core network to access network capabilities and services. 5
[0057] User Plane Function (UPF) [128] is a network function responsible for handling user data traffic, including packet routing, forwarding, and QoS enforcement.
10 [0058] Data Network (DN) [130] refers to a network that provides data services
to user equipment (UE) in a telecommunications system. The data services may include but are not limited to Internet services, private data network related services.
[0059] The 5GC network architecture also comprises a plurality of interfaces for
15 connecting the network functions with a network entity for performing the network
functions. The NSSF [116] is connected with the network entity via the interface denoted as (Nnssf) interface in FIG. 1. The NEF [118] is connected with the network entity via the interface denoted as (Nnef) interface in FIG 1. The NRF [120] is connected with the network entity via the interface denoted as (Nnrf) interface in
20 FIG. 1. The PCF [122] is connected with the network entity via the interface
denoted as (Npcf) interface in FIG. 1. The UDM [124] is connected with the network entity via the interface denoted as (Nudm) interface in FIG. 1. The AF [126] is connected with the network entity via the interface denoted as (Naf) interface in FIG. 1. The NSSAAF [114] is connected with the network entity via
25 the interface denoted as (Nnssaaf) interface in FIG. 1. The AUSF [112] is connected
with the network entity via the interface denoted as (Nausf) interface in FIG. 1. The AMF [106] is connected with the network entity via the interface denoted as (Namf) interface in FIG. 1. The SMF [108] is connected with the network entity via the interface denoted as (Nsmf) interface in FIG. 1. The SMF [108] is connected with
30 the UPF [128] via the interface denoted as (N4) interface in FIG. 1. The UPF [128]
is connected with the RAN [104] via the interface denoted as (N3) interface in FIG.
14
1. The UPF [128] is connected with the DN [130] via the interface denoted as (N6)
interface in FIG. 1. The RAN [104] is connected with the AMF [106] via the
interface denoted as (N2). The AMF [106] is connected with the RAN [104] via the
interface denoted as (N1). The UPF [128] is connected with other UPF [128] via
5 the interface denoted as (N9). The interfaces such as Nnssf, Nnef, Nnrf, Npcf,
Nudm, Naf, Nnssaaf, Nausf, Namf, Nsmf, N9, N6, N4, N3, N2, and N1 can be referred to as a communication channel between one or more functions or modules for enabling exchange of data or information between such functions or modules, and network entities.
10
[0060] FIG. 2 illustrates an exemplary block diagram of a computing device [200] upon which the features of the present disclosure may be implemented in accordance with exemplary implementation of the present disclosure. In an implementation, the computing device [200] may also implement a method for
15 remote monitoring performance of a database system. In another implementation,
the computing device [200] itself implements the method for remote monitoring performance of a database system, using one or more units configured within the computing device [200], wherein said one or more units are capable of implementing the features as disclosed in the present disclosure.
20
[0061] The computing device [200] may include a bus [202] or other communication mechanism for communicating information, and a hardware processor [204] coupled with bus [202] for processing information. The hardware processor [204] may be, for example, a general-purpose microprocessor. The
25 computing device [200] may also include a main memory [206], such as a random-
access memory (RAM), or other dynamic storage device, coupled to the bus [202] for storing information and instructions to be executed by the processor [204]. The main memory [206] also may be used for storing temporary variables or other intermediate information during execution of the instructions to be executed by the
30 processor [204]. Such instructions, when stored in non-transitory storage media
accessible to the processor [204], render the computing device [200] into a special-
15
purpose machine that is customized to perform the operations specified in the instructions. The computing device [200] further includes a read only memory (ROM) [208] or other static storage device coupled to the bus [202] for storing static information and instructions for the processor [204]. 5
[0062] A storage device [210], such as a magnetic disk, optical disk, or solid-state drive is provided and coupled to the bus [202] for storing information and instructions. The computing device [200] may be coupled via the bus [202] to a display [212], such as a cathode ray tube (CRT), Liquid crystal Display (LCD),
10 Light Emitting Diode (LED) display, Organic LED (OLED) display, etc. for
displaying information to a computer user. An input device [214], including alphanumeric and other keys, touch screen input means, etc. may be coupled to the bus [202] for communicating information and command selections to the processor [204]. Another type of user input device may be a cursor controller [216], such as a
15 mouse, a trackball, or cursor direction keys, for communicating direction
information and command selections to the processor [204], and for controlling cursor movement on the display [212]. The input device typically has two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that allow the device to specify positions in a plane.
20
[0063] The computing device [200] may implement the techniques described herein using customized hard-wired logic, one or more ASICs or FPGAs, firmware and/or program logic which in combination with the computing device [200] causes or programs the computing device [200] to be a special-purpose machine.
25 According to one implementation, the techniques herein are performed by the
computing device [200] in response to the processor [204] executing one or more sequences of one or more instructions contained in the main memory [206]. Such instructions may be read into the main memory [206] from another storage medium, such as the storage device [210]. Execution of the sequences of instructions
30 contained in the main memory [206] causes the processor [204] to perform the
process steps described herein. In alternative implementations of the present
16
disclosure, hard-wired circuitry may be used in place of or in combination with software instructions.
[0064] The computing device [200] also may include a communication interface
5 [218] coupled to the bus [202]. The communication interface [218] provides a two-
way data communication coupling to a network link [220] that is connected to a local network [222]. For example, the communication interface [218] may be an integrated services digital network (ISDN) card, cable modem, satellite modem, or a modem to provide a data communication connection to a corresponding type of
10 telephone line. As another example, the communication interface [218] may be a
local area network (LAN) card to provide a data communication connection to a compatible LAN. Wireless links may also be implemented. In any such implementation, the communication interface [218] sends and receives electrical, electromagnetic or optical signals that carry digital data streams representing
15 various types of information.
[0065] The computing device [200] can send messages and receive data, including program code, through the network(s), the network link [220] and the communication interface [218]. In the Internet example, a server [230] might
20 transmit a requested code for an application program through the Internet [228], the
ISP [226], the local network [222], a host [224] and the communication interface [218]. The received code may be executed by the processor [204] as it is received, and/or stored in the storage device [210], or other non-volatile storage for later execution.
25
[0066] Referring to FIG. 3, an exemplary block diagram of a system [300] for remote monitoring performance of a database system, is shown, in accordance with the exemplary implementations of the present disclosure. In one example, the system [300] may be in communication with other network entities/components
30 known to a person skilled in the art. Such network entities/components have not
been depicted in FIG. 3 and have not been explained here for the sake of brevity.
17
[0067] FIG. 4 illustrates an exemplary flow diagram of a method [400] for remote monitoring performance of a database system, in accordance with exemplary implementations of the present disclosure. 5
[0068] It may be noted that FIG. 3 and FIG. 4 have been explained simultaneously and may be read in conjunction with each other.
[0069] As depicted in FIG 3, the system [300] comprises at least one transceiver
10 unit [302], at least one determination unit [304], at least one retrieving unit [306],
at least one analysis unit [308], at least one processing unit [310], at least one display unit [312] and at least one validation unit [314]. Also, all of the components/ units of the system [300] are assumed to be connected to each other unless otherwise indicated below. As shown in FIG. 3, all units shown within the system [300] should
15 also be assumed to be connected to each other. Also, in FIG. 3, only a few units are
shown, however, the system [300] may comprise multiple such units or the system [300] may comprise any such numbers of said units, as required to implement the features of the present disclosure. Further, in an implementation, the system [300] may be present in a user device/ user equipment [102] to implement the features of
20 the present disclosure. The system [300] may be a part of the user device [102]/ or
may be independent of but in communication with the user device [102] (may also referred herein as a UE). In another implementation, the system [300] may reside in a server or a network entity. In yet another implementation, the system [300] may reside partly in the server/ network entity and partly in the user device.
25
[0070] The system [300] is configured for remote monitoring performance of a database system, with the help of the interconnection between the components/units of the system [300].
18
[0071] In order to remote monitoring performance of a database system, a transceiver unit [302] is configured to receive an application programming interface (API) request for monitoring a database cluster.
5 [0072] In an implementation of the present subject matter, the API request is a call
made to the system’s API (Application Programming Interface) to perform a specific action, such as retrieving data or initiating a process. The type of request determines what data will be retrieved and processed.
10 [0073] Further, the term refers herewith ‘database clusters’ is the groups of
databases that are managed and monitored collectively. Examples of such database clusters may include, but are not limited to, Nosql databases such as mongodb cluster/redis/kafka/cassandra, Oracle. It may be noted that such database clusters are only exemplary, and in no manner construed to limit the scope of the present
15 subject matter in any manner. As would be explained in the foregoing description,
the health status and topology of these clusters are tracked to confirm their proper functioning.
[0074] In the context of the present subject matter, the transceiver unit [302] may
20 receive the API request for monitoring the database cluster. In one example, the
request may be received from an external system, such as a network management system or a user, such as a network administrator. In another example, the request may be transmitted to the system [300] by the external system or user periodically.
25 [0075] The transceiver unit [302], as would be described in foregoing disclosure,
may also handle outgoing communications, like sending alerts or notifications.
[0076] In an example, the validation unit [314] may validate the received API request. This has been depicted by Step [402] in FIG. 4. 30
19
[0077] The validation unit [314] validates the received API request before any processing occurs. It confirms that the request is valid, formatted correctly. In another example, the validation unit [314] may perform the validation in following steps: 5
[0078] Data Parsing: Upon receiving the API request, the system's validation unit [314] performs an initial parsing of the request to ensure that it adheres to the expected syntax and format.
10 [0079] Parameter Validation: The system [300] checks that all mandatory
parameters are present and correctly formatted.
[0080] User Authentication: The validation unit [314] ensures that the API request
is made by an authenticated user by verifying the provided credentials, such as API
15 keys and tokens.
[0081] Authorization Check: After authentication, the system checks whether the authenticated user has the appropriate permissions to make the specific API request.
20 [0082] Parameter Consistency: The validation unit [314] ensures that the provided
parameters are consistent with each other. For instance, if the API request includes a date range, the start date should not be later than the end date.
[0083] It may be noted that the abovementioned technique of validating the
25 received request is only exemplary, and in no manner is construed to limit the scope
of the present subject matter in any manner. The validation unit [314] may validate the received request using any other technique, known to a person skilled in the art. All such examples would lie within the scope of the present subject matter.
30 [0084] If the received API request is invalid, i.e., when the validation fails, the
process terminates. This has been depicted by Step [404] in FIG. 4.
20
[0085] Continuing further, upon validation of the received API request, the
determination unit [304] may then determine a type of the API request. This has
been depicted by Step [406] in FIG. 4. In one example, the received API request
5 may include a set of parameters indicating the type of the API request. In such cases,
the determination unit [304], based on at least one of the parameters, may determine the type of the API request.
[0086] In an example, the type of API request may be an infrastructure metric. In
10 another example, the type of the API request may be a database performance metric.
In an implementation of the present disclosure, the different types of requests may require corresponding different actions, such as retrieving infrastructure data or performance metrics.
15 [0087] Such exemplary determination of the type of API request has been depicted
in FIG. 4. As depicted in FIG. 4, the determination unit [304] may first determine if the type of received API request is infrastructure metric (as depicted by Step [408] in FIG. 4.) If the received API request in infrastructure metric request, the method [400] may proceed accordingly, as depicted by Step [410], Step [412], Step [420],
20 and Step [422] as depicted in FIG. 4.
[0088] However, if the determined type of the received API request is not
infrastructure metric, a further determination may be made to determine if the type
of received API request is database performance metric (as depicted by Step [414]
25 in FIG. 4). If the type of the API request is not database performance metric, the
process may fail and the method [400] may terminate. This has been depicted by Step [416] in FIG. 4. This may indicate that the received API request is neither infrastructure metric request, nor database performance metric request.
21
[0089] However, upon determining that the request is not infrastructure metric request, but is database performance metric request, the method [400] may proceed accordingly to Step [418], Step [412], Step [420], and Step [422].
5 [0090] It may be noted that above explained determination is only exemplary, and
not to be construed to limit the scope of the present subject matter in any manner.
It may also be possible that first determination to made to ascertain if the type of
the received API request is database performance metric, and then a further
determination may be made to ascertain if the type is infrastructure metric. Such
10 and any other examples would also lie within the scope of the present subject matter.
[0091] Thereafter, the retrieving unit [306] may retrieve a set of metric data based on the determined type of API request.
15 [0092] In an implementation of the present disclosure, based on the determined
type of API request, the retrieving unit [306] retrieves the relevant set of metric data from the database cluster. The ‘set of metric data’ refers to the measurements that are collected based on the API request.
20 [0093] In an example, the set of metric data comprises at least one of data related
to connections, bottlenecks, queries per second, index usage, memory usage, resource utilization issues and replication lag.
[0094] The ‘bottlenecks’ point to system constraints that slow down processes. The
25 ‘queries per second’ measures the volume of database queries processed in a given
time. The ‘index usage’ tracks how effectively database indexes are being utilized.
The ‘memory usage’ indicates how much system memory is consumed by the
database. The ‘resource utilization’ issues capture inefficiencies in using computing
resources such as CPU or disk. The ‘replication lag’ measures the delay in
30 synchronizing data across nodes in the database cluster.
22
[0095] In an example, if the type of API request is an infrastructure metric (‘Yes’
path from Step [408]), the retrieving unit [306] may retrieve a set of infrastructure
metric data associated with the infrastructure metric from a database cluster. This
has been depicted by Step [410] in FIG. 4. Examples of such infrastructure metric
5 data include, but not limited to, hardware or network performance within the
database cluster. In one example, the retrieving unit [306] may retrieve the set of infrastructure metric data from application storage service.
[0096] In another example, if the type of API request is a database performance
10 metric (‘No’ path from Step [408] and then ‘Yes’ path from block [414]), the
retrieving unit [306] may retrieve a set of current metric data associated with the
database performance metric from a set of nodes of the database cluster. This has
been depicted by Step [418] in FIG. 4. In such cases, the retrieving unit [306] deals
with performance metrics directly related to the database, like query performance
15 or node health.
[0097] Considering an example, when the API request is received for a specific
metric data, a task may be triggered in the requesting database cluster's service. This
task, as described previously, can be either for database performance metrics or
20 infrastructure metrics. When a database performance metric API request is
received, specific database operations may be executed and necessary data may be retrieved from the nodes within the cluster. For infrastructure metric API requests, data from the application’s centralized storage service may be retrieved.
25 [0098] Continuing further, once the set of metric data has been retrieved, thereafter,
an analysis unit [308] may analyse the set of metric data for filtering out a set of extraneous metric data from the retrieved set of metric data to obtain a filtered set of data. This has been depicted by Step [412] and Step [420] in FIG. 4.
30 [0099] In an implementation of the present disclosure, the analysis unit [308]
analyses the retrieved metric data, filtering out unnecessary or extraneous data to
23
refine the dataset for further processing. The refined dataset thus obtained, may be referred to as ‘filtered data’. The term ‘extraneous metric’ refers to performance data that are deemed irrelevant or not necessary for the specific analysis being conducted. 5
[0100] In an example, ‘filtering out’ refers to the process where the analysis unit
[308] examines the full set of retrieved metric data and identifies the metrics that
are not relevant for the specific monitoring task at hand. Once the full set of data is
retrieved, some metrics may be deemed unnecessary or irrelevant for the
10 performance analysis these are referred to as "extraneous metrics." The analysis
unit then processes this data, removing or excluding metrics such as catalog stats, logical sessions, record cache, and internal transactions, which do not contribute to the current performance evaluation.
15 [0101] For example, when an API request is made to monitor the performance of a
database, the system might retrieve various metrics, including data related to connections, bottlenecks, catalog stats, and internal transactions. However, for this particular request, only data related to connections and bottlenecks may be relevant to assess the database's current performance. The analysis unit would then filter out
20 the catalog stats and internal transactions, which are not useful for this analysis, and
retain only the relevant metrics
[0102] In an example, the set of extraneous metrics comprises at least one of catalog stats, logical Session, record cache, and internal transactions.
25
[0103] The ‘catalog stats’ may include information related to metadata or schema of the database. The ‘logical sessions’ refer to user sessions or connections established to interact with the database but are not directly involved in performance monitoring. The ‘record cache’ relates to data stored temporarily for
30 faster access, which may not impact overall system performance. The ‘internal
24
transactions’ represent internal database operations, such as system generated maintenance tasks, that may not influence external performance metrics directly.
[0104] In another example, irrelevant metrics (such as catalogStats,
5 logicalSessionRecordCache, internalTransactions, and the like) are filtered out, and
only the metrics that are critical for ensuring the cluster's health and performance are projected such as:
[0105] Connections: The number of active connections to the MongoDB server. 10
[0106] Queries per Second: The rate of incoming queries.
[0107] Index Usage: To check if indexes are being used efficiently.
15 [0108] Memory Usage: Memory consumption, including resident memory and
virtual memory usage.
[0109] Replication Lag: If replica set architecture is deployed, then replication lag between primary and secondary nodes can be tracked.
20
[0110] Continuing further, thereafter, the processing unit [310] may compile the filtered set of data to obtain a compiled set of data. This has been depicted by Step [422] in FIG. 4. In one example, in the context of the present invention, the process of compiling the filtered set of data may refer to organizing the obtained filtered
25 data into a unified dataset, so that the same may be used for further processing.
[0111] In an example, the processing unit is further configured to normalise the
filtered set of data, scale the normalized set of data, and aggregate the scaled set of
data. Thereafter, the scaled set of data may be compiled to obtain the compiled set
30 of data.
25
[0112] The normalizing filtered set of data means adjusting the data to a standard
format or scale to allow meaningful comparisons. The scaling the normalized set of
data means adjusting the normalized data to reflect its relative importance or to fit
within a specific range. The aggregating the scaled set of data means summarizing
5 the data, possibly across different dimensions or time periods, to provide an
overview.
[0113] The term ‘scaled set of data’ refers to performance metrics that have been
adjusted or normalized to a standard range or format for easier comparison and
10 analysis.
[0114] The scaled set of data has undergone a transformation process, specifically
scaling, where the values are adjusted to fit within a common range or unit of
measure. This allows for more meaningful comparisons and analysis across
15 different metrics that may originally have diverse units or magnitudes.
[0115] For instance, in a database monitoring system, one metric might represent
CPU usage as a percentage, while another could represent memory usage in
gigabytes. These metrics are on different scales, making direct comparison or
20 aggregation difficult. By scaling, we adjust these metrics to a uniform scale,
ensuring consistency. After scaling, the data can be processed, analysed, or visualized more effectively.
[0116] Considering another example, if memory usage is reported in bytes, it can
25 be converted to gigabytes for easier reading. Thereafter, the metrics are then scaled
into a common range, wherever applicable. For example: CPU utilization of the
database node between 0 and 100 in percentage based on aggregate consumption
and number of CPU cores available in the server. Finally, the data is aggregated
using accumulators such as sum, average, and first for higher-level views and daily
30 averages of queries per second or total of connection counts.
26
[0117] It may be noted that the steps of normalizing, scaling, and aggregating the filtered set of data, before compiling the same, are optional. It may be possible that the processing unit [310] may just compile the filtered set of data to obtain the compiled set of data. 5
[0118] Continuing further, thereafter, once the compiled set of data is obtained, the display unit [312] may display the compiled set of data.
[0119] In an implementation of the present disclosure, the final compiled data set
10 is displayed via a user interface. This allows users to view and analyse the
performance metrics of the database system. In an example, the user interface is configurable to enable customisation.
[0120] The user interface may be customized to fit the specific needs of the user,
15 such as displaying particular metrics, rearranging dashboards, selecting specific
metrics to show, or applying themes.
[0121] In one example, the display unit [312] may display the results to the user in graphical manner. 20
[0122] In another example, the transceiver unit [302] is further configured to transmit a notification to a user if the set of metric data breaches a predefined threshold.
25 [0123] For example, if the retrieved data indicates an issue (e.g., metric exceeds a
threshold), the transceiver unit [302] sends a notification, likely via email, SMS, or within a dashboard, alerting the user. The term ‘predefined threshold’ is a set limit or value of an allowable limit (indicating normal metric data) that the metric data is compared against. If the metric exceeds this value, it triggers a notification. As
30 would be further understood, if the set of metric data breaches the predefined
27
threshold, this may indicate that the database is not working properly and the metrics are in inappropriate state.
[0124] Referring to FIG. 5, an exemplary method flow diagram [500] for remote
5 monitoring performance of a database system, in accordance with exemplary
implementations of the present disclosure is shown. In an implementation the method [500] is performed by the system [300]. Further, in an implementation, the system [300] may be present in a server device to implement the features of the present disclosure. Also, as shown in FIG.5, the method [500] starts at step [502]. 10
[0125] At step [504], the method [500] comprises, receiving, by a transceiver unit [302], an application programming interface (API) request for monitoring a database cluster.
15 [0126] In order to remote monitoring performance of a database system, a
transceiver unit [302] is configured to receive an application programming interface (API) request for monitoring a database cluster.
[0127] In an implementation of the present subject matter, the API request is a call
20 made to the system’s API (Application Programming Interface) to perform a
specific action, such as retrieving data or initiating a process. The type of request
determines what data will be retrieved and processed. Further, the term ‘database
cluster’ refers to a group of interconnected databases that work together to manage
and store data. The cluster allows for data redundancy, load balancing, and
25 improved performance.
[0128] In the context of the present subject matter, the transceiver unit [302] may
receive the API request for monitoring the database cluster. In one example, the
request may be received from an external system, such as a network management
30 system or a user, such as a network administrator. In another example, the request
may be transmitted to the system [300] by the external system or user periodically.
28
[0129] In an example, the validation unit [314] may validate the received API request.
5 [0130] The validation unit [314] validates the received API request before any
processing occurs. It confirms that the request is valid, formatted correctly.
[0131] If the received API request is invalid, i.e., when the validation fails, the process terminates. 10
[0132] At step [506], the method [500] comprises, determining, by a determination unit [304], a type of the API request.
[0133] Continuing further, upon validation of the received API request, the
15 determination unit [304] may then determine a type of the API request.
[0134] In an example, the type of API request may be an infrastructure metric. In
another example, the type of the API request may be a database performance metric.
In an implementation of the present disclosure, the different types of requests may
20 require corresponding different actions, such as retrieving infrastructure data or
performance metrics.
[0135] At step [508], the method [500] comprises, based on the determined type of API request, retrieving, by a retrieving unit [306], a set of metric data. 25
[0136] Thereafter, the retrieving unit [306] may retrieve a set of metric data based on the determined type of API request.
[0137] In an implementation of the present disclosure, based on the determined
30 type of API request, the retrieving unit [306] retrieves the relevant set of metric data
29
from the database cluster. The ‘set of metric data’ refers to the measurements that are collected based on the API request.
[0138] In an example, the set of metric data comprises at least one of data related
5 to connections, bottlenecks, queries per second, index usage, memory usage,
resource utilization issues and replication lag.
[0139] In an example, if the type of API request is an infrastructure metric, the
retrieving unit [306] may retrieve a set of infrastructure metric data associated with
10 the infrastructure metric from a database cluster. Examples of such infrastructure
metric data include, but not limited to, hardware or network performance within the database cluster. In one example, the retrieving unit [306] may retrieve the set of infrastructure metric data from application storage service.
15 [0140] In another example, if the type of API request is a database performance
metric, the retrieving unit [306] may retrieve a set of current metric data associated with the database performance metric from a set of nodes of the database cluster. In such cases, the retrieval unit [306] deals with performance metrics directly related to the database, like query performance or node health.
20
[0141] At step [510], the method [500] comprises, analysing, by an analysis unit [308], the set of metric data for filtering out a set of extraneous metric data from the retrieved set of metric data to obtain a filtered set of data.
25 [0142] Continuing further, once the set of metric data has been retrieved, thereafter,
an analysis unit [308] may analyse the set of metric data for filtering out a set of extraneous metric data from the retrieved set of metric data to obtain a filtered set of data.
30 [0143] In an implementation of the present disclosure, the analysis unit [308]
analyses the retrieved metric data, filtering out unnecessary or extraneous data to
30
refine the dataset for further processing. The refined dataset, thus obtained, may be referred to as ‘filtered data’. The term ‘extraneous metric’ refers to performance data that are deemed irrelevant or not necessary for the specific analysis being conducted. 5
[0144] In an example, ‘filtering out’ refers to the process where the analysis unit
[308] examines the full set of retrieved metric data and identifies the metrics that
are not relevant for the specific monitoring task at hand. Once the full set of data is
retrieved, some metrics may be deemed unnecessary or irrelevant for the
10 performance analysis these are referred to as "extraneous metrics." The analysis
unit then processes this data, removing or excluding metrics such as catalog stats, logical sessions, record cache, and internal transactions, which do not contribute to the current performance evaluation.
15 [0145] In an example, the set of extraneous metrics comprises at least one of catalog
stats, logical Session, record cache, and internal transactions.
[0146] At step [512], the method [500] comprises, compiling, by a processing unit [310], the filtered set of data to obtain a compiled set of data. 20
[0147] Continuing further, thereafter, the processing unit [310] may compile the filtered set of data to obtain a compiled set of data.
[0148] In an example, the processing unit is further configured to normalise the
25 filtered set of data, scale the normalized set of data, and aggregate the scaled set of
data. Thereafter, the scaled set of data may be compiled to obtain the compiled set of data.
[0149] The normalizing filtered set of data means adjusting the data to a standard
30 format or scale to allow meaningful comparisons. The scaling the normalized set of
data means adjusting the normalized data to reflect its relative importance or to fit
31
within a specific range. The aggregating the scaled set of data means summarizing the data, possibly across different dimensions or time periods, to provide an overview.
5 [0150] The term ‘scaled set of data’ refers to performance metrics that have been
adjusted or normalized to a standard range or format for easier comparison and analysis.
[0151] The scaled set of data has undergone a transformation process, specifically
10 scaling, where the values are adjusted to fit within a common range or unit of
measure. This allows for more meaningful comparisons and analysis across different metrics that may originally have diverse units or magnitudes.
[0152] It may be noted that the steps of normalizing, scaling, and aggregating the
15 filtered set of data, before compiling the same, are optional. It may be possible that
the processing unit [310] may just compile the filtered set of data to obtain the compiled set of data.
[0153] At step [514], the method [500] comprises, displaying, by user interface via
20 a display unit [312], the compiled set of data.
[0154] Continuing further, thereafter, once the compiled set of data is obtained, the display unit [312] may cause the user interface to display the compiled set of data. In an example, the user interface is configurable to enable customisation. 25
[0155] The user interface may be customized to fit the specific needs of the user, such as displaying particular metrics, rearranging dashboards, selecting specific metrics to show, or applying themes.
30 [0156] In an implementation of the present disclosure, the final compiled data set
is displayed via a user interface. This allows users to view and analyse the
32
performance metrics of the database system. In one example, the display unit [312] may display the results to the user in graphical manner.
[0157] In another example, the transceiver unit [302] is further configured to
5 transmit a notification to a user if the set of metric data breaches a predefined
threshold.
[0158] For example, if the retrieved data indicates an issue (e.g., metric exceeds a threshold), the transceiver unit [302] sends a notification, likely via email, SMS, or
10 within a dashboard, alerting the user. The term ‘predefined threshold’ is a set limit
or value of an allowable limit (indicating normal metric data) that the metric data is compared against. If the metric exceeds this value, it triggers a notification. As would be further understood, if the set of metric data breaches the predefined threshold, this may indicate that the database is not working properly and the
15 metrics are in inappropriate state.
[0159] Thereafter, the method terminates at step [516].
[0160] FIG. 6 illustrates a system architecture diagram for remote monitoring
20 performance of a database system, in accordance with exemplary implementations
of the present disclosure.
[0161] Users (User A, User B, User C): These are the end-users interacting with
the system through a User Interface. Each user can request specific operations
25 related to different database clusters, such as monitoring or configuring services.
[0162] User Interface [602]: The user interface [602] acts as the intermediary between the users and the system’s backend services. It collects user requests and sends them to the Manager Service for further processing. 30
33
[0163] Manager Service [604]: The manager service [604] coordinates and manages the operations requested by the users. It is responsible for identifying the appropriate Database Service for each request and routing the requests accordingly.
5 [0164] Database Services (A, B, C): Database A Service, Database B Service, and
Database C Service are specialized services that manage specific database clusters (A, B, C). These services monitor the health status and topology of their respective clusters. Each service interacts with its corresponding Database Cluster to gather health status information, perform updates, and ensure the cluster’s integrity.
10
[0165] Database Clusters (A, B, C): Database A Cluster, Database B Cluster, and Database C Cluster represent the actual databases that are being monitored and managed. These clusters consist of multiple interconnected databases, and their health and performance are crucial to the system’s operation.
15
[0166] Centralized Data Repository [606]: The centralized data repository [606] is where data collected from various database clusters is normalized and stored. This repository ensures that data is in a standard format, making it easier to analyze and manage.
20
[0167] Notification Service [608]: The notification service [608] sends alerts to users when specific events occur, such as changes in the health status or topology of the database clusters. This service ensures that users are informed in realtime about important changes.
25
[0168] The users interact with the system through the user interface [602], where they submit requests for monitoring or configuring database clusters. The user interface [602] forwards these requests to the manager service [504], which determines which database service is responsible for handling the specific database
30 cluster associated with the request. The manager service [604] then routes the
request to the appropriate database service (A, B, or C). These services directly
34
interact with their corresponding database clusters to fulfil the request. The data
collected from the database clusters, such as performance metrics, node availability,
and replication status, is normalized and stored in the centralized data repository
[606]. If any significant changes or events are detected during the monitoring
5 process, the notification service [608] alerts the users.
[0169] The present disclosure further discloses a non-transitory computer readable storage medium storing instructions for remote monitoring performance of a database system, the instructions include executable code which, when executed by
10 one or more units of a system [300], causes: a transceiver unit [302] of the system
[300] to receive an application programming interface (API) request for monitoring a database cluster. Further, the instructions include executable code which, when executed causes a determination unit [304] of the system [300] to determine a type of the API request. Further, the instructions include executable code which, when
15 executed causes a retrieving unit [306] of the system [300] to retrieve a set of metric
data based on the determined type of API request. Further, the instructions include executable code which, when executed causes an analysis unit [308] of the system [300] to analyse the set of metric data for filtering out a set of extraneous metric data from the retrieved set of metric data to obtain a filtered set of data. Further, the
20 instructions include executable code which, when executed causes a processing unit
[310] of the system [300] to compile the filtered set of data to obtain a compiled set of data. Further, the instructions include executable code which, when executed causes a display unit [312] of the system [300] to display via a user interface, the compiled set of data.
25
[0170] As is evident from the above, the present disclosure provides a technically advanced solution for remote monitoring performance of a database system. First, it enables performance optimization by allowing administrators to monitor database performance in real-time, helping to identify bottlenecks, slow queries, and
30 resource utilization issues. This leads to enhanced responsiveness and efficiency.
Second, it provides real-time visibility, offering immediate insights into database
35
performance, allowing for prompt detection and resolution of issues as they occur. This real-time monitoring helps maintain system stability and performance. Third, customized dashboards are available, specifically tailored to meet the unique needs of 5G applications, enabling administrators to focus on metrics critical for optimizing 5G network performance. Fourth, the feature enhances security and compliance, particularly in 5G environments where data protection is critical. It helps monitor queries for potential security breaches, thus maintaining a secure and compliant system. Fifth, the system aids in latency reduction by identifying query bottlenecks, reducing data retrieval delays, and improving the overall responsiveness of 5G applications. Finally, it supports resource allocation by providing insights into optimal use of CPU, memory, and storage, allowing administrators to adjust resources based on real-time data to ensure efficient system performance.
[0171] While considerable emphasis has been placed herein on the disclosed implementations, it will be appreciated that many implementations can be made and that many changes can be made to the implementations without departing from the principles of the present disclosure. These and other changes in the implementations of the present disclosure will be apparent to those skilled in the art, whereby it is to be understood that the foregoing descriptive matter to be implemented is illustrative and non-limiting.
[0172] Further, in accordance with the present disclosure, it is to be acknowledged that the functionality described for the various components/units can be implemented interchangeably. While specific embodiments may disclose a particular functionality of these units for clarity, it is recognized that various configurations and combinations thereof are within the scope of the disclosure. The functionality of specific units as disclosed in the disclosure should not be construed as limiting the scope of the present disclosure. Consequently, alternative arrangements and substitutions of units, provided they achieve the intended
functionality described herein, are considered to be encompassed within the scope of the present disclosure.
We Claim:
1. A method for remote monitoring performance of a database system, the
method comprising:
- receiving, by a transceiver unit [302], an application programming interface (API) request for monitoring a database cluster;
- determining, by a determination unit [304], a type of the API request;
- based on the determined type of API request, retrieving, by a retrieving unit [306], a set of metric data;
- analysing, by an analysis unit [308], the set of metric data for filtering out a set of extraneous metric data from the retrieved set of metric data to obtain a filtered set of data;
- compiling, by a processing unit [310], the filtered set of data to obtain a compiled set of data; and
- displaying, by user interface via a display unit [312], the compiled set of data.
2. The method as claimed in claim 1, further comprising: validating, by a validation unit [314], the received API request.
3. The method as claimed in claim 1, wherein retrieving, by the retrieving unit [306], the set of metric data comprises:
- if the type of API request is an infrastructure metric, retrieving a set of
infrastructure metric data associated with the infrastructure metric from a
database cluster.
4. The method as claimed in claim 1, wherein retrieving, by the retrieving unit
[306], the set of metric data comprises:
- if the type of API request is a database performance metric, retrieving a set
of current metric data associated with the database performance metric from
a set of nodes of the database cluster.
5. The method as claimed in claim 1, further comprising: transmitting, by the transceiver unit [302], a notification to a user if the set of metric data breaches a predefined threshold.
6. The method as claimed in claim 1, wherein the set of extraneous metrics comprises at least one of catalog stats, logical Session, record cache, and internal transactions.
7. The method as claimed in claim 1, further comprising:
- normalizing, by the processing unit [310], the filtered set of data;
- scaling, by the processing unit [310], the normalized set of data; and
- aggregating, by the processing unit [310], the scaled set of data.
8. The method as claimed in claim 1, wherein the set of metric data comprises at least one of data relating to connections, bottlenecks, queries per second, index usage, memory usage, resource utilization issues and replication lag.
9. The method as claimed in claim 1, wherein the user interface is configurable to enable customisation.
10. A system for remote monitoring performance of a database system, the system comprising:
- a transceiver unit [302] configured to receive an application programming interface (API) request for monitoring a database cluster;
- a determination unit [304] connected to at least the transceiver unit [302], the determination unit [304] is configured to determine a type of the API request;
- a retrieving unit [306] connected to at least the determination unit [304], the retrieving unit [306] is configured to: retrieve a set of metric data based on the determined type of API request;
- an analysis unit [308] connected to at least the retrieving unit [306], the analysis unit [308] is configured to analyse the set of metric data for filtering out a set of extraneous metric data from the retrieved set of metric data to obtain a filtered set of data;
- a processing unit [310] connected to at least the analysis unit [308], the processing unit [310] is configured to compile the filtered set of data to obtain a compiled set of data; and
- a display unit [312] connected to at least the processing unit [310], the display unit [312] is configured to display via a user interface, the compiled set of data.
11. The system as claimed in claim 10, further comprising a validation unit [314] configured to: validate the received API request.
12. The system as claimed in claim 10, wherein the retrieving unit [306] is further configured to:
- if the type of API request is an infrastructure metric, retrieve a set of
infrastructure metric data associated with the infrastructure metric from a
database cluster.
13. The system as claimed in claim 10, wherein the retrieving unit [306] is
further configured to:
- if the type of API request is a database performance metric, retrieve a set of
current metric data associated with the database performance metric from a
set of nodes of the database cluster.
14. The system as claimed in claim 10, wherein the transceiver unit [302] is
further configured to transmit a notification to a user if the set of metric data
breaches a predefined threshold.
15. The system as claimed in claim 10, wherein the set of extraneous metrics comprises at least one of catalog stats, logical Session, record cache, and internal transactions.
16. The system as claimed in claim 10, wherein the processing unit [310] is further configured to:
- normalise the filtered set of data;
- scale the normalized set of data; and
- aggregate the scaled set of data.
17. The system as claimed in claim 10, wherein the set of metric data comprises at least one of data related to connections, bottlenecks, queries per second, index usage, memory usage, resource utilization issues and replication lag.
18. The system as claimed in claim 10, wherein the user interface is configurable to enable customisation.
| # | Name | Date |
|---|---|---|
| 1 | 202321061434-STATEMENT OF UNDERTAKING (FORM 3) [12-09-2023(online)].pdf | 2023-09-12 |
| 2 | 202321061434-PROVISIONAL SPECIFICATION [12-09-2023(online)].pdf | 2023-09-12 |
| 3 | 202321061434-POWER OF AUTHORITY [12-09-2023(online)].pdf | 2023-09-12 |
| 4 | 202321061434-FORM 1 [12-09-2023(online)].pdf | 2023-09-12 |
| 5 | 202321061434-FIGURE OF ABSTRACT [12-09-2023(online)].pdf | 2023-09-12 |
| 6 | 202321061434-DRAWINGS [12-09-2023(online)].pdf | 2023-09-12 |
| 7 | 202321061434-Proof of Right [03-01-2024(online)].pdf | 2024-01-03 |
| 8 | 202321061434-FORM-5 [11-09-2024(online)].pdf | 2024-09-11 |
| 9 | 202321061434-ENDORSEMENT BY INVENTORS [11-09-2024(online)].pdf | 2024-09-11 |
| 10 | 202321061434-DRAWING [11-09-2024(online)].pdf | 2024-09-11 |
| 11 | 202321061434-CORRESPONDENCE-OTHERS [11-09-2024(online)].pdf | 2024-09-11 |
| 12 | 202321061434-COMPLETE SPECIFICATION [11-09-2024(online)].pdf | 2024-09-11 |
| 13 | 202321061434-Request Letter-Correspondence [18-09-2024(online)].pdf | 2024-09-18 |
| 14 | 202321061434-Power of Attorney [18-09-2024(online)].pdf | 2024-09-18 |
| 15 | 202321061434-Form 1 (Submitted on date of filing) [18-09-2024(online)].pdf | 2024-09-18 |
| 16 | 202321061434-Covering Letter [18-09-2024(online)].pdf | 2024-09-18 |
| 17 | 202321061434-CERTIFIED COPIES TRANSMISSION TO IB [18-09-2024(online)].pdf | 2024-09-18 |
| 18 | Abstract 1.jpg | 2024-10-04 |
| 19 | 202321061434-FORM 3 [07-10-2024(online)].pdf | 2024-10-07 |
| 20 | 202321061434-ORIGINAL UR 6(1A) FORM 1 & 26-090125.pdf | 2025-01-14 |