Abstract: The present disclosure relates to a system (108) and a method (500) for retrieving data from a cluster of distributed databases. The system may comprise a database (210), a receiving unit (202), and a processing unit (208) configured to execute instructions stored in a memory (204). The system (108) may receive, via the receiving unit (202), a set of signals indicative of a query for retrieving filtered data from the database (210) based on one or more filtering parameters. The system (108) may execute, via the processing unit (208), the query to retrieve the filtered data from the database (210). The system (108) may process the filtered data to derive one or more computed values and recommendations. The system (108) may transmit the filtered data, one or more computed values, and recommendations to a display unit (220). The database (210) may comprise the cluster of distributed databases. FIGURE 2
FORM 2
THE PATENTS ACT, 1970 (39 of 1970) THE PATENTS RULES, 2003
COMPLETE SPECIFICATION
(See section 10; rule 13)
TITLE OF THE INVENTION
SYSTEM AND METHOD FOR DATA RETRIEVAL
APPLICANT
JIO PLATFORMS LIMITED
of Office-101, Saffron, Nr. Centre Point, Panchwati 5 Rasta, Ambawadi, Ahmedabad -
380006, Gujarat, India; Nationality : India
The following specification particularly describes
the invention and the manner in which
it is to be performed
RESERVATION OF RIGHTS
[0001] A portion of the disclosure of this patent document contains material,
which is subject to intellectual property rights such as, but are not limited to,
copyright, design, trademark, Integrated Circuit (IC) layout design, and/or trade
5 dress protection, belonging to Jio Platforms Limited (JPL) or its affiliates
(hereinafter referred as owner). The owner has no objection to the facsimile
reproduction by anyone of the patent document or the patent disclosure, as it
appears in the Patent and Trademark Office patent files or records, but otherwise
reserves all rights whatsoever. All rights to such intellectual property are fully
10 reserved by the owner.
FIELD OF DISCLOSURE
[0002] The embodiments of the present disclosure generally relate to
communication networks. In particular, the present disclosure relates to a system and a method for data retrieval and normalization.
15 DEFINITION
[0003] As used in the present disclosure, the following terms are generally
intended to have the meaning as set forth below, except to the extent that the context in which they are used to indicate otherwise.
[0004] The expression ‘data retrieval’ used hereinafter in the specification
20 refers to a process of accessing and extracting information or data from a data
storage system, such as a database, file system, or data warehouse. This process involves querying the system using specific criteria or parameters to locate and retrieve the desired data.
[0005] The expression ‘data normalization’ used hereinafter in the
25 specification refers to a technique used in databases to organize and structure data
2
efficiently. It involves reducing data redundancy and dependency by organizing fields and tables of a relational database to minimize redundancy and dependency.
[0006] The expression ‘cluster of distributed databases’ used hereinafter in
the specification refers to a collection of database instances that are spread across
5 multiple nodes or servers, working together to store and manage data in a distributed
manner.
[0007] These definitions are in addition to those expressed in the art.
BACKGROUND OF DISCLOSURE
[0008] The following description of related art is intended to provide
10 background information pertaining to the field of the disclosure. This section may
include certain aspects of the art that may be related to various features of the present disclosure. However, it should be appreciated that this section be used only to enhance the understanding of the reader with respect to the present disclosure, and not as admissions of prior art.
15 [0009] In the era of big data, organizations are dealing with massive
volumes of information stored in distributed file systems. Processing and analyzing this data efficiently pose significant challenges, particularly when it comes to filtering specific subsets of data based on time intervals and required fields. The process of data normalization, which involves transforming data into a
20 standardized format, can further exacerbate these issues by increasing storage
requirements and introducing performance overheads. Moreover, normalization may lead to a loss of data context, making it difficult to derive meaningful insights.
[0010] Existing solutions in the market fall short of providing a
comprehensive set of filter options for efficiently normalizing data. While some
25 existing techniques, such as selective loading and processing, can help reduce
computational loads, most solutions do not offer filtering parameters at multiple
3
stages of processing. This limitation hinders the ability to streamline data normalization and analysis workflows.
[0011] The lack of efficient data processing, high resource utilization, and
data overload are among the major problems faced by organizations when working
5 with large datasets in distributed file systems. These issues not only increase the
complexity of data analysis but also hamper the timely extraction of valuable insights.
[0012] Given the limitations of existing solutions, there is a need for a
method and a system that can overcome the shortcomings of prior arts and provide
10 a more efficient, flexible, and scalable approach to data retrieval, data
normalization and analysis.
SUMMARY
[0013] One embodiment of the present subject matter relates to a system for
retrieving data from a cluster of distributed databases in a network. The system
15 includes a receiving unit and a processing unit. The receiving unit is configured to
receive one or more signals indicative of a query from a user. The processing unit is cooperatively coupled with the receiving unit to receive the one or more signals and is configured to execute instructions stored in a memory. The processing unit is configured to validate the received query and one or more filtering parameters
20 associated with the one or more received signals based on a set of validation rules.
The processing unit is configured to process the one or more received signals for retrieving at least one filtered data from a database based on the one or more validated filtering parameters associated with the one or more received signals. The processing unit is configured to process the retrieved filtered data to derive
25 one or more computed values and one or more recommendations. The processing
unit is configured to transmit the retrieved filtered data, one or more derived computed values, and one or more derived recommendations to a display unit.
4
[0014] In an embodiment, the processing unit is further configured to
automatically correct the received query by employing an artificial intelligence/machine learning algorithm upon detecting an error during the validation.
5 [0015] In an embodiment, the one or more filtering parameters are selected
from the group comprising a range filter, a match filter, a wildcard filter, and a term filter.
[0016] In an embodiment, the set of validation rules includes data types, a
format, a minimum value, a maximum value, a minimum length, and a maximum
10 length.
[0017] In an embodiment, the processing unit is further configured to
dynamically generate the one or more filtering parameters for executing the received query.
[0018] In an embodiment, the processing unit is configured to retrieve the
15 data from each database of the cluster of distributed databases asynchronously or
parallelly.
[0019] In an embodiment, the processing unit comprises a generative
Artificial Intelligence (AI) engine configured to generate the one or more recommendations based on the filtered data.
20 [0020] An embodiment of the present subject matter relates to a method of
retrieving data from a cluster of distributed databases. The method includes receiving, via a receiving unit, one or more signals indicative of a query from a user. The method includes validating, by a processing unit, the received query and one or more filtering parameters associated with the one or more received signals
25 based on a set of validation rules. The method includes processing, by the
processing unit, one or more received signals for retrieving at least one filtered data from a database based on one or more validated filtering parameters
5
associated with the one or more received signals. The method includes processing,
by the processing unit, the filtered data to derive one or more computed values and
recommendations. The method includes transmitting, by the processing unit, the
filtered data, one or more computed values, and one or more derived
5 recommendations to a display unit.
[0021] In an embodiment, the method further includes automatically
correcting the query by employing an artificial intelligence/machine learning algorithm upon detecting any errors during the validating step.
[0022] In an embodiment, the one or more filtering parameters are selected
10 from the group comprising a range filter, a match filter, a wildcard filter, and a
term filter.
[0023] In an embodiment, the set of validation rules includes data types, a
format, a minimum value, a maximum value, a minimum length, and a maximum length.
15 [0024] In an embodiment, the method further includes dynamically
generating, by the processing unit, the one or more filtering parameters for executing the query.
[0025] In an embodiment, the method further includes retrieving, by the
processing unit, the filtered data from each database of the cluster of distributed
20 databases asynchronously or parallelly.
[0026] In an embodiment, the processing unit comprises a generative
Artificial Intelligence (AI) engine configured to generate the one or more recommendations based on the filtered data.
[0027] Another embodiment of the present subject matter relates to a user
25 equipment configured to retrieve data from a cluster of distributed databases. The
user equipment includes a processor and a computer readable storage medium
storing programming instructions for execution by the processor. Under the
6
programming instructions, the processor is configured to receive one or more
signals indicative of a query from a user. Under the programming instructions, the
processor is configured to validate the received query and one or more filtering
parameters associated with the one or more received signals based on a set of
5 validation rules. Under the programming instructions, the processor is configured
to process one or more received signals for retrieving at least one filtered data from
a database based on one or more validated filtering parameters associated with the
one or more received signals. Under the programming instructions, the processor
is configured to process the filtered data to derive one or more computed values
10 and recommendations. Under the programming instructions, the processor is
configured to transmit the filtered data, one or more computed values, and one or more derived recommendations to a display unit.
OBJECTS OF THE PRESENT DISCLOSURE
[0028] Some of the objects of the present disclosure, which at least one
15 embodiment herein satisfies, are as listed herein below.
[0029] One object of the present disclosure is to provide a system and
method for data retrieval, data normalization that offers robust filter options such as range, match, wildcard, and term filters.
[0030] Another object of the present disclosure is to provide a system and
20 method that selectively loads and processes the necessary data for further
computation.
[0031] Yet another object of the present disclosure is to provide a system
and method that improves the efficiency of data processing in a cluster of
distributed databases by reducing the amount of irrelevant data loaded and
25 processed.
[0032] A further object of the present disclosure is to enable the processing
of large data from a distributed file storage unit.
7
BRIEF DESCRIPTION OF DRAWINGS
[0033] 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
5 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
10 drawings includes the disclosure of electrical components, electronic components
or circuitry commonly used to implement such components.
[0034] FIG. 1 illustrates an exemplary network architecture for
implementing a system for retrieving data from a cluster of distributed databases in a network, in accordance with an embodiment of the present disclosure.
15 [0035] FIG. 2 illustrates a block diagram of the system, in accordance with
embodiments of the present disclosure.
[0036] FIG. 3 illustrates a flowchart of a method of data normalization, in
accordance with embodiments of the present disclosure.
[0037] FIG. 4 is an illustration of a component architecture of the system,
20 in accordance with embodiments of the present disclosure.
[0038] FIG. 5 is a flow diagram illustrating a method of retrieving data from
a cluster of distributed databases in a network, in accordance with embodiments of the present disclosure.
[0039] FIG. 6 illustrates an exemplary computer system in which or with
25 which embodiments of the present disclosure may be implemented.
8
[0040] The foregoing shall be more apparent from the following more
detailed description of the disclosure.
LIST OF REFERENCE NUMERALS
100 – Network architecture
5 102-1, 102-2…102-N – User (s)
104-1, 104-2…104-N – User equipment (s)
106 – Network
108 – System
202 – Receiving unit
10 204 – Memory
206 – Plurality of interfaces
208 – Processing Unit
210 – Cluster of distributed databases
210-1, 210-2…210-N – Database (s)
15 212 – Query processing engine
214 – Retrieving engine
216 – Computing engine
218 – Other unit (s)
220 – Display unit
20 402 – Plurality of gNBs
404 – Network probe
406 – Conductor
408 – Plurality of message brokers
410 – Writer component
25 412 – Normalizer
414 – Graphical user interface
416 – Processing unit
418 – Database
420 – Ingestion layer
30 422 – AI/ML unit
9
424 – Distributed file system
426 – Computation engine
428 – Inventory system
432 – Computation layer.
5 610 – External storage device
620 – Bus
630 – Main memory
640 – Read only memory
650 – Mass storage device
10 660 – Communication port
670 – Processor
BRIEF DESCRIPTION OF THE INVENTION
[0041] In the following description, for the purposes of explanation, various
specific details are set forth in order to provide a thorough understanding of
15 embodiments of the present disclosure. It will be apparent, however, that
embodiments of the present disclosure may be practiced without these specific details. Several features described hereafter can each be used independently of one another or with any combination of other features. An individual feature may not address any of the problems discussed above or might address only some of the
20 problems discussed above. Some of the problems discussed above might not be
fully addressed by any of the features described herein. Example embodiments of the present disclosure are described below, as illustrated in various drawings in which like reference numerals refer to the same parts throughout the different drawings.
25 [0042] The ensuing description provides exemplary embodiments only, and
is not intended to limit the scope, applicability, or configuration of the disclosure. Rather, the ensuing description of the exemplary embodiments will provide those skilled in the art with an enabling description for implementing an exemplary embodiment. It should be understood that various changes may be made in the
10
function and arrangement of elements without departing from the spirit and scope of the disclosure as set forth.
[0043] Specific details are given in the following description to provide a
thorough understanding of the embodiments. However, it will be understood by
5 one of ordinary skill in the art that the embodiments may be practiced without these
specific details. For example, circuits, systems, networks, processes, and other
components may be shown as components in block diagram form in order not to
obscure the embodiments in unnecessary detail. In other instances, well-known
circuits, processes, algorithms, structures, and techniques may be shown without
10 unnecessary detail in order to avoid obscuring the embodiments.
[0044] Also, it is noted that individual embodiments may be described as a
process that is depicted as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram. Although a flowchart may describe the operations as a sequential process, many of the operations can be performed in
15 parallel or concurrently. In addition, the order of the operations may be re-
arranged. A process is terminated when its operations are completed but could have additional steps not included in a figure. A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, its termination can correspond to a return of the function
20 to the calling function or the main function.
[0045] 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
25 not necessarily to be construed as preferred or advantageous over other aspects or
designs, nor is it meant to preclude equivalent exemplary structures and techniques known to those of ordinary skill in the art. Furthermore, to the extent that the terms “includes,” “has,” “contains,” and other similar words are used in either the detailed description or the claims, such terms are intended to be inclusive like the
11
term “comprising” as an open transition word without precluding any additional or other elements.
[0046] Reference throughout this specification to “one embodiment” or “an
embodiment” or “an instance” or “one instance” means that a particular feature,
5 structure, or characteristic described in connection with the embodiment is
included in at least one embodiment of the present disclosure. Thus, the
appearances of the phrases “in one embodiment” or “in an embodiment” in various
places throughout this specification are not necessarily all referring to the same
embodiment. Furthermore, the particular features, structures, or characteristics
10 may be combined in any suitable manner in one or more embodiments.
[0047] The terminology used herein is to describe particular embodiments
only and is not intended to be limiting the disclosure. As used herein, the singular forms “a”, “an”, and “the” are intended to include the plural forms as well, unless the context indicates otherwise. It will be further understood that the terms
15 “comprises” and/or “comprising,” when used in this specification, specify the
presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. As used herein, the term “and/or” includes any combinations of one or more of the
20 associated listed items. It should be noted that the terms “mobile device”, “user
equipment”, “user device”, “communication device”, “device” and similar terms are used interchangeably for the purpose of describing the invention. These terms are not intended to limit the scope of the invention or imply any specific functionality or limitations on the described embodiments. The use of these terms
25 is solely for convenience and clarity of description. The invention is not limited to
any particular type of device or equipment, and it should be understood that other equivalent terms or variations thereof may be used interchangeably without departing from the scope of the invention as defined herein.
12
[0048] As used herein, an “electronic device”, or “portable electronic
device”, or “user device” or “communication device” or “user equipment” or
“device” refers to any electrical, electronic, electromechanical, and computing
device. The user device is capable of receiving and/or transmitting one or
5 parameters, performing function/s, communicating with other user devices, and
transmitting data to the other user devices. The user equipment may have a processor, a display, a memory, a battery, and an input-means such as a hard keypad and/or a soft keypad. The user equipment may be capable of operating on any radio access technology including but not limited to IP-enabled
10 communication, Zig Bee, Bluetooth, Bluetooth Low Energy, Near Field
Communication, Z-Wave, Wi-Fi, Wi-Fi direct, etc. For instance, the user equipment may include, but not limited to, a mobile phone, smartphone, virtual reality (VR) devices, augmented reality (AR) devices, laptop, a general-purpose computer, desktop, personal digital assistant, tablet computer, mainframe
15 computer, or any other device as may be obvious to a person skilled in the art for
implementation of the features of the present disclosure.
[0049] Further, the user device may also comprise a “processor” or
“processing unit” includes processing unit, wherein processor refers to any logic circuitry for processing instructions. The processor may be a general-purpose
20 processor, a special purpose processor, a conventional processor, a digital signal
processor, a plurality of microprocessors, one or more microprocessors in association with a 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,
25 input/output processing, and/or any other functionality that enables the working of
the system according to the present disclosure. More specifically, the processor is a hardware processor.
[0050] As portable electronic devices and wireless technologies continue to
improve and grow in popularity, the advancing wireless technologies for data
30 transfer are also expected to evolve and replace the older generations of
13
technologies. In the field of wireless data communications, the dynamic
advancement of various generations of cellular technology is also seen. The
development, in this respect, has been incremental in the order of second
generation (2G), third generation (3G), fourth generation (4G), and now fifth
5 generation (5G), and more such generations are expected to continue in the
forthcoming time.
[0051] While considerable emphasis has been placed herein on the
components and component parts of the preferred embodiments, it will be appreciated that many embodiments can be made and that many changes can be
10 made in the preferred embodiments without departing from the principles of the
disclosure. These and other changes in the preferred embodiment, as well as other embodiments of the disclosure, will be apparent to those skilled in the art from the disclosure herein, whereby it is to be distinctly understood that the foregoing descriptive matter is to be interpreted merely as illustrative of the disclosure and
15 not as a limitation.
[0052] At present, the process of retrieving and analyzing data from
distributed databases for various applications can be time-consuming and resource
intensive. Traditional approaches often involve manual query generation,
inefficient data retrieval, and limited filtering options, leading to the processing of
20 irrelevant data and suboptimal performance. It is, therefore, a need in the art to
provide a system for data normalization that efficiently processes large volumes of data stored in distributed file systems, offers comprehensive filtering options at multiple stages, and minimizes performance overheads.
[0053] The present disclosure addresses these challenges by providing a
25 system and a method for data retrieval and data normalization that automates and
optimizes the data retrieval and analysis process. By offering robust filter options, selective data loading, and efficient processing techniques, the present disclosure enables users to obtain relevant insights and recommendations from large datasets in a more streamlined and effective manner.
14
[0054] The present disclosure serves the purpose of enhancing the
efficiency and accuracy of data-driven decision-making processes across various
domains, such as network planning, performance monitoring, and resource
optimization. The system and method provided by the present disclosure enable
5 the users to leverage the power of distributed databases and advanced computing
techniques, such as artificial intelligence and machine learning, to extract valuable
insights from vast amounts of data. By automating key aspects of the data
normalization process, such as query generation, data retrieval, and analysis, the
present disclosure empowers users to make informed decisions based on
10 comprehensive and up-to-date information, leading to improved operational
efficiency, resource utilization, and overall system performance.
[0055] The present disclosure relates to a system and a method for data
normalization/data retrieval from a cluster of distributed databases. From a receiving unit, the system receives one or more signals indicative of a query for
15 filtered data from a database, associated with the cluster of distributed databases,
based on one or more filtering parameters. The one or more filtering parameters may include, but not limited to, range, match, wildcard, and term filters. The one or more filtering parameters may either be provided in the one or more signals, or dynamically generated by the system for executing the query. The database may
20 be a distributed file sharing unit. The system executes the query based on the set
of parameters to retrieve the filtered data from the database. The data may be further computed by the cluster of databases based on the filtering parameters. The system transmits the filtered data to a display unit. In an example, the receiving unit and the display unit may be embedded into a single entity. By providing one
25 or more filtering parameters, the system allows for the normalization of data stored
and distributed in the database.
[0056] The various embodiments throughout the disclosure will be
explained in more detail with reference to FIG. 1- FIG. 6.
15
[0057] FIG. 1 illustrates an exemplary network architecture (100) for
implementing a system (108) for retrieving data from a cluster of distributed databases (210) in a network (106), in accordance with an embodiment of the present disclosure.
5 [0058] Referring to FIG. 1, the network architecture (100) may include one
or more computing devices or user equipment (104-1, 104-2…104-N), associated
with one or more users (102-1, 102-2…102-N) in an environment. The user
equipment (104) may be individually referred to as the user equipment (104) and
collectively referred to as the user equipment (104). The terms "computing
10 device(s)" and "user equipment" may be used interchangeably throughout the
disclosure. Although three user equipment (104) are depicted in FIG. 1, any number of user equipment (104) may be included without departing from the scope of the ongoing description.
[0059] The user equipment (104) may include, but is not limited to,
15 handheld wireless communication devices, wearable computer devices, Global
Positioning System (GPS) devices, laptop computers, tablet computers, or other
types of portable computers, media playing devices, portable gaming systems,
and/or any other type of computer device with wireless communication
capabilities. The user equipment (104) may also include virtual reality (VR)
20 devices, augmented reality (AR) devices, general-purpose computers, desktop
computers, personal digital assistants, mainframe computers, or any other
computing device. The user equipment (104) may include one or more in-built or
externally coupled accessories, including, but not limited to, visual aid devices,
audio aids, microphones, keyboards, and input devices for receiving input from the
25 operator or entity. The architecture may include a receiving unit (202) having a
user interface that provides audio-visual indications to the user based on a set of signals transmitted by the system (108). The receiving unit (202) may be implemented on the user equipment (104) and used by operators of the system (108).
16
[0060] The network architecture (100) may include one or more databases
(210-1, 210-2…210-N) (also known as cluster of distributed databases (210))
associated with one or more gNBs (Next-Generation NodeBs) in an environment.
Although three databases are depicted in FIG. 1, any number of databases may be
5 included without departing from the scope of the ongoing description. The cluster
of distributed databases typically includes several databases that are
geographically distributed across multiple locations or nodes within a network.
These databases work together to store and manage data, allowing for scalability,
fault tolerance, and improved performance. By employing the cluster of distributed
10 databases, the present system provides a robust and scalable infrastructure for
storing and accessing data in distributed computing environments.
[0061] Referring to FIG. 1, the user equipment (104) may communicate
with the system (108) through the network (106). The network (106) may include at least one of a Fifth Generation (5G) network, 6G network, or the like, and may
15 enable the user equipment (104) to communicate with other devices in the network
architecture (100) and/or with the system (108). The network (106) may include a wireless card or some other transceiver connection to facilitate this communication. The network (106) may be implemented as or include any of a variety of different communication technologies such as a wide area network
20 (WAN), a local area network (LAN), a wireless network, a mobile network, a
Virtual Private Network (VPN), the Internet, the Public Switched Telephone Network (PSTN), or the like. Each user equipment (104) may have a unique identifier attribute associated therewith, which may be indicative of Mobile Station International Subscriber Directory Number (MSISDN), International Mobile
25 Equipment Identity (IMEI) number, International Mobile Subscriber Identity
(IMSI), Subscriber Permanent Identifier (SUPI), and the like.
[0062] The network (106) may include one or more base stations, which the
user equipment (104) may connect to and request services from. The base station
may be a network infrastructure that provides wireless access to one or more
30 terminals associated therewith and may have coverage defined to be a
17
predetermined geographic area based on the distance over which a signal may be
transmitted. The base station may include, but not be limited to, wireless access
points, evolved NodeB (eNodeB), 5G nodes or next generation NodeB (gNB),
wireless points, transmission/reception points (TRP), and the like. The base station
5 may include one or more operational units that enable telecommunication between
two or more user equipment (104). The operational units may include, but not be
limited to, transceivers, baseband units (BBU), remote radio units (RRU),
antennae, mobile switching centres, radio network control units, one or more
processors associated thereto, and a plurality of network entities such as Access
10 and Mobility Management Function (AMF) units, Session Management Function
(SMF) units, Network Exposure Function (NEF) units, or any custom-built functions executing one or more processor-executable instructions.
[0063] Data may be created as the network (106) provides services to the
user equipment (104). The data may include, but not be limited to, unique attributes
15 associated with the base stations and user equipment (104), subscriber session logs,
instance objects created by network functions, call detail records (CDR), one or more health and performance metrics associated with the network, and the like. For example, subscriber session logs may be generated as the network (106) provides services to the user equipment (104). The subscriber session logs may
20 include, but not be limited to, unique attributes of the base stations and the user
equipment (104), sessions created between the user equipment (104) and the network entities, session start and termination times, and other service-specific attributes.
[0064] The system (108) may be coupled to a receiving unit (202) that may
25 provide an audio-visual interface to the user (102) for visualizing and analyzing
data. The receiving unit (202) may provide an interface, including, but not limited
to, a Graphical User Interface (GUI), an Application Programming Interface (API),
or a Command Line Interface (CLI). GUIs provide a visual way for users to interact
with the system (108). GUIs typically consist of windows, icons, buttons, and
30 menus, allowing users to perform actions by clicking, dragging, and dropping
18
elements. APIs are interfaces that allow different components of the system to
communicate and interact with each other. APIs define a set of rules and protocols
that developers can use to access the functionality of a software application,
service, or operating system. CLI allows the users to interact with the system using
5 text-based commands entered into a terminal or command prompt. The receiving
unit (202) may be configured to display real-time analysis of data provided by the system (108). An operator may use the receiving unit (202) to monitor and analyze the data stored in the cluster of distributed databases (210).
[0065] In accordance with embodiments of the present disclosure, the
10 system (108) may be designed and configured to normalize data stored in a
distributed database and is further configured to employ data retrieval from the
distributed database. The system (108) may also be configured to provide one or
more filtering parameters for normalizing the data. The data normalization
involves a process of organizing or transforming data to bring the data into a
15 standardized format or structure. Normalization can encompass various
techniques, such as removing redundancies, standardizing units of measurement,
or scaling data to a common range. By providing the filtering parameters for
normalization, the system enables users to tailor the normalization process
according to their specific requirements or preferences. The one or more filtering
20 parameters are criteria or conditions based on which the system allows users to
define in order to filter or refine data. Filtering parameters could include various attributes, such as date ranges, numerical ranges, categorical values, or any other relevant characteristics of the data. In an example, the filtering parameters may be listed as:
25 • Date Ranges: Users can specify date ranges or timestamps to filter data
based on when it was recorded or occurred. For example, they might want to analyze data collected within a specific month, quarter, or year. For example, a user wants to analyze downlink data for the first quarter of the year. He can specify a date range from January 1 to March 31 to filter the
30 dataset and focus only on downlink data that occurred within that period.
19
• Numerical Ranges: Users can define ranges for numerical values within the
data. This could involve filtering data based on thresholds, such as values
greater than, less than, or between certain numerical bounds. For instance,
the user might want to focus on data where a particular metric falls within a
5 specified range. For example, the user wants to analyze a number of
established sessions over time. He can set a numerical range filter to include the days having the number of established sessions with a total value between 600 and 2000.
• Categorical Values: Users can select specific categories or groups within
10 categorical variables to filter the data. This might involve selecting
particular users within a sector, geographic region, or any other relevant classifications present in the dataset. For example, the user may analyze network performance by region category. He can apply a categorical filter to focus only on performance parameters related to a specific area/region.
15 • Other Relevant Characteristics: Users can define filtering parameters based
on any other relevant attributes or characteristics of the data. This could include filtering based on text patterns, Boolean conditions, spatial coordinates, or any other properties specific to the dataset. For example, the user wants to analyze the sessions based on their length. He can apply a
20 filter to include only sessions that exceed a certain session length, ensuring
that only longer sessions are included in the analysis.
[0066] FIG. 2 illustrates a block diagram (200) of the system (108), in
accordance with embodiments of the present disclosure.
[0067] In an aspect, the system (108) may include the receiving unit (202),
25 a memory (204), and a processing unit (208). The receiving unit (202) is
configured to receive one or more signals indicative of a query from a user.
[0068] The processing unit (208) is cooperatively coupled with the
receiving unit (202) to receive the one or more signals. The processing unit (208)
20
is configured to execute instructions stored in the memory (204). The processing
unit (208) may be implemented as one or more microprocessors, microcomputers,
microcontrollers, edge or fog microcontrollers, digital signal processors, central
processing units, logic circuitries, and/or any devices that process data based on
5 operational instructions. Among other capabilities, the processing unit (208) may
be configured to fetch and execute computer-readable instructions stored in the memory (204) of the system (108). The memory (204) may be configured to store one or more computer-readable instructions or routines in a non-transitory computer readable storage medium, which may be fetched and executed to create
10 or share data packets over a network service. The memory (204) may include any
non-transitory storage device including, for example, volatile memory such as Random Access Memory (RAM), or non-volatile memory such as Erasable Programmable Read-Only Memory (EPROM), flash memory, and the like. In an embodiment, the memory (204) may store instructions that, when executed by the
15 processing unit (208), cause the system (108) to perform various functions and
operations described herein.
[0069] The processing unit (208) is configured to validate the received
query and one or more filtering parameters associated with the one or more received signals based on a set of validation rules. In an embodiment, the one or
20 more filtering parameters are selected from the group comprising a range filter, a
match filter, a wildcard filter, and a term filter. The range filter allows users to specify a range of values for a particular attribute or field. For example, the user might want to filter the sessions by session length within a certain range. The match filter is used to filter data based on exact matches. It typically checks for
25 equality between the filter parameter and the values in the dataset. For example,
filtering datasets by an exact name or filtering orders by a sector ID. The wildcard filter allows for more flexible matching by using wildcard characters such as '*' (matches any sequence of characters) or '?' (matches any single character). This can be useful for pattern matching or searching for partial matches. For instance,
30 searching for all products that contain a word in their name, regardless of the exact
21
name. The term filter is similar to a match filter but is often used in the context of
full-text search or keyword-based filtering. It searches for exact matches of
individual terms rather than matching entire phrases. In an embodiment, the
processing unit (208) is further configured to dynamically generate the one or more
5 filtering parameters for executing the received query. For example, the processing
unit may parse the received query to understand its structure, keywords, and any specific criteria mentioned by the user. Based on the analysis of the query, the processing unit dynamically generates filtering parameters that best match the user's intent.
10 [0070] In an embodiment, the set of validation rules includes data types, a
format, a minimum value, a maximum value, a minimum length, and a maximum
length. In an example, the data type specifies the type of data expected for a
particular field or input. For example, a field might be expected to contain integers,
strings, dates, or other specific data types. For example, the "distance with two
15 cells" field should be a numeric data type. Validating data types ensures that only
compatible data is accepted. In another example, the format defines the format or
structure that the input data should adhere to. This could include requirements such
as specific patterns, regular expressions, or formatting conventions. For instance,
a phone number field might require input in a specific format like “(XXX) XXX-
20 XXXX”. The minimum value specifies the minimum acceptable value for
numerical inputs. For example, a minimum value might be enforced for fields
representing quantities, active established sessions, or other numeric attributes.
The maximum value specifies the maximum acceptable value for numerical inputs.
This ensures that inputs do not exceed certain limits, preventing errors or overflow
25 situations. The minimum length of the input (query) specifies the minimum
number of characters or elements required for the inputs. This is commonly used
for fields like names, addresses, or descriptions, ensuring that inputs are not too
short. The maximum length of the input specifies the maximum number of
characters or elements allowed for string inputs. This prevents excessively long
30 inputs, which could cause issues with data storage, display, or processing.
22
[0071] In an embodiment, the processing unit (208) is further configured to
automatically correct the received query by employing an artificial
intelligence/machine learning algorithm upon detecting an error during the
validation. In an aspect, the processing unit first validates the received query
5 against the validation rules. If an error is detected during this validation process
(e.g., invalid syntax, out-of-range values), the processing unit identifies the error.
Upon detecting an error, the processing unit employs the AI/ML algorithm to
correct the error automatically. The AI/ML algorithm may be trained on large
datasets containing examples of correct and incorrect queries, allowing them to
10 learn patterns and make accurate corrections. After the correction is applied, the
processing unit resubmits the corrected query for execution.
[0072] The processing unit (208) is configured to process the one or more
received signals for retrieving at least one filtered data from the database (210-1,
210-2…210-N) (collectively referred to as the database (210)) based on the one or
15 more validated filtering parameters associated with the one or more received
signals.
[0073] The processing unit (208) is configured to process the retrieved
filtered data to derive one or more computed values and one or more recommendations. The processing unit computes values or metrics based on the
20 filtered data. In an example, these one or more computed values may include
aggregations, statistical measures, or other derived insights that provide further context or analysis beyond the raw data. Based on the analysis of the filtered data and computed values, the processing unit generates one or more recommendations, such as suggested actions, decisions, or next steps for the user based on patterns,
25 trends, or specific criteria identified in the data. The processing unit (208) is
configured to transmit the retrieved filtered data, one or more derived computed values, and one or more derived recommendations to a display unit (220). The display unit (220) is configured to display the retrieved filtered data, one or more derived computed values, and one or more derived recommendations to the user.
23
For example, the display unit (220) may be any interface where the user interacts with the system, such as the GUI, a web application, or a mobile application.
[0074] Referring to FIG. 2, the system (108) may include one or more
interfaces (206). The interfaces (206) may include a variety of interfaces, for
5 example, interfaces for data input and output devices, referred to as I/O devices,
storage devices, and the like. The interfaces (206) may facilitate communication
to/from the system (108). The interfaces (206) may also provide a communication
pathway for one or more components of the system (108). Examples of such
components include but are not limited to, the processing unit (208) and the
10 database (210). In an embodiment, the interfaces (206) may include network
interfaces, such as Ethernet interfaces, wireless interfaces, or other types of interfaces that enable communication between the system (108) and external devices or networks.
[0075] In an embodiment, the processing unit (208) may be implemented as
15 a combination of hardware and programming (for example, programmable
instructions) to implement one or more functionalities of the processing unit (208). In the examples described herein, such combinations of hardware and programming may be implemented in several different ways. For example, the programming for the processing unit (208) may be processor-executable
20 instructions stored on a non-transitory machine-readable storage medium, and the
hardware for the processing unit (208) may include a processing resource (for example, one or more processors) to execute such instructions. In the present examples, the machine-readable storage medium may store instructions that, when executed by the processing resource, implement the processing unit (208). In such
25 examples, the system (108) may include the machine-readable storage medium
storing the instructions and the processing resource to execute the instructions, or the machine-readable storage medium may be separate but accessible to the system (108) and the processing resource. In other examples, the processing unit (208) may be implemented by electronic circuitry. In an embodiment, the processing unit
30 (208) may be implemented using field-programmable gate arrays (FPGAs),
24
application-specific integrated circuits (ASICs), or other types of specialized hardware accelerators.
[0076] In an embodiment, the database (210) includes data that may be
either stored or generated as a result of functionalities implemented by any of the
5 components of the processing unit (208). In an embodiment, the database (210)
may be separate from the system (108). In an embodiment, the database (210) may
be indicative of including, but not limited to, a relational database, a distributed
database, a cloud-based database, or the like. In an embodiment, the database (210)
may be a NoSQL database, such as a key-value store, a document database, a
10 columnar database, or a graph database, which may provide scalability and
flexibility for handling large unstructured or semi-structured data.
[0077] In an exemplary embodiment, the processing unit (208) may include
one or more engines selected from any of a query processing engine (212), a
retrieving engine (214), a computing engine (216), and other engines (218) having
15 functions that may include, but are not limited to, testing, storage, and peripheral
functions, such as wireless communication unit for remote operation, audio unit for alerts and the like. In an embodiment, the query processing engine (212) may be implemented as microservices or containerized services, which can be independently deployed, scaled, and managed.
20 [0078] In an embodiment, the query processing engine (212) may receive
the one or more signals indicative of the query for retrieving data from the database based on one or more filtering parameters. In an embodiment, the filtering parameters may include, but not be limited to, range, match, wildcard, and term filters. In an embodiment, the one or more filtering parameters may be provided in
25 the one or more signals. In other embodiments, the filtering parameters may be
dynamically generated by the query processing engine (212) for executing the query. The database (210) may be a distributed file-sharing unit that stores data generated by the network (106). In an example, the data may be indicative of subscriber session logs. In an embodiment, the filtering parameters may be
25
generated such that the retrieving engine (214) may be able to asynchronously or
parallelly retrieve data from each database in the cluster of distributed databases.
When retrieving data asynchronously, the processing unit initiates retrieval
requests to each database independently and does not wait for the responses before
5 moving on to other tasks. This asynchronous approach allows the processing unit
to continue its operations while waiting for responses from the databases, potentially improving overall system efficiency and responsiveness. Parallel retrieval involves retrieving data from multiple databases simultaneously. This can be achieved by initiating multiple retrieval processes or threads, each responsible
10 for retrieving data from a different database. By executing these retrieval processes
in parallel, the processing unit can leverage the computing resources available in the system more effectively, potentially reducing data retrieval time and improving overall performance. By configuring the processing unit to retrieve data asynchronously or in parallel from the distributed databases within the cluster, the
15 system can optimize data retrieval efficiency and responsiveness, which is
particularly beneficial in distributed computing environments where data may be distributed across multiple nodes or locations. This approach helps enhance the scalability, performance, and reliability of the system when dealing with large volumes of data.
20 [0079] In an embodiment, the query processing engine (212) may optimize
the query by analyzing the query plan and selecting the most efficient filtering parameters based on the data distribution and indexing strategies used in the database (210). In an example, the query processing engine (212) may be configured to employ the following steps:
25 • Before executing a query, the query processing engine (212) analyzes the
query plan to determine the most efficient way to retrieve the required data. This includes considering factors such as data distribution, indexing strategies, and available resources.
26
• The query processing engine (212) evaluates the query and identifies which filtering parameters would be most effective in optimizing the query execution. These filtering parameters could include date ranges, numerical ranges, or other criteria mentioned earlier.
5 • The query processing engine (212) considers the way data is distributed
across the database (210) and how it is indexed for efficient retrieval. This information helps in selecting the appropriate filtering parameters that can leverage the existing data distribution and indexing structures to accelerate query execution.
10 • By selecting the most efficient filtering parameters based on data
distribution and indexing strategies, the query processing engine (212) is configured to minimize the amount of data that needs to be processed and retrieved, thereby reducing query execution time and resource consumption.
[0080] Overall, by optimizing queries based on data distribution and
15 indexing strategies, the query processing engine may significantly improve the
performance and efficiency of database operations, leading to faster response times and better utilization of system resources.
[0081] In an embodiment, the retrieving engine (214) may be configured to
execute the query based on the one or more parameters to retrieve the filtered data
20 from the database (210). In an embodiment, the retrieving engine (214) may
correspond to a database cluster manager that is capable of retrieving data from each of the databases in the cluster. In an embodiment, the retrieving engine (214) may be configured to retrieve the requested data by executing the query. In an example, the query may contain a request to retrieve one or more attributes
25 associated with the data recorded between a time-interval parameter. In an
example, the query may be a Structured Query Language (SQL) query or a NoSQL query. In an embodiment, the retrieving engine (214) may employ parallel
27
processing techniques, such as MapReduce or Apache Spark, to efficiently retrieve data from large-scale distributed databases.
[0082] In an embodiment, the computing engine (216) may be configured
to cause the data from each of the databases in the cluster to be computed or
5 processed based on the query and the one or more parameters. In an embodiment,
the computing engine (216) may be configured to derive one or more computed values based on the data retrieved from the databases (210). In an example, the computing engine (216) may be configured to dynamically generate filtering parameters such that each of the databases in the cluster retrieves data from a
10 corresponding time interval parameter prescribed thereto and computes a count of
unique values in an attribute of the data. Since the query processing engine (212) dynamically generates the one or more filtering parameters, the retrieving engine (214) and the computing engine (216) may be able to retrieve and compute the data parallelly or asynchronously, thereby reducing computational burdens on any
15 single component in the system (108). In an embodiment, the computing engine
(216) may be configured to process and analyze the data to generate one or more recommendations to improve the operation of the network (106). In an example, the computing engine (216) may use a generative Artificial Intelligence (AI) engine to generate the one or more recommendations based on the data retrieved.
20 In an example, the generative AI engine may be coupled to a knowledge graph
such that the generative AI utilizes information therein to produce nuanced recommendations for improving the operation of the network (106). In an embodiment, the computing engine (216) may employ machine learning techniques, such as deep learning, reinforcement learning, or transfer learning, to
25 continuously improve the accuracy and relevance of the generated
recommendations based on feedback and new data.
[0083] In an embodiment, by providing the one or more filtering
parameters, the system (108) may allow for normalization of data stored in the
cluster of distributed databases. In an embodiment, the system (108) may
30 efficiently retrieve and process large amounts of data. In an embodiment, the
28
system (108) may employ data compression, data deduplication, or other data
optimization techniques to reduce the storage and processing requirements for
handling large-scale data sets. In an embodiment, the system (108) may provide a
scalable and fault-tolerant architecture that can handle increasing data volumes and
5 user requests without significant performance degradation.
[0084] FIG. 3 illustrates a flowchart of a method (300) of data normalization
and data retrieval, in accordance with embodiments of the present disclosure.
[0085] The method (300) includes receiving (302), by a processor, such as
the processing unit (208) of FIG. 2, from the receiving unit (202) of the one or
10 more signals indicative of the query for retrieving filtered data from the database
(210) based on one or more filtering parameters therein. The one or more signals may include one or more parameters having one or more filtering parameters. The one or more filtering parameters may include range, match, wildcard, and term filters. The filtering parameters may be provided in the one or more signals or
15 dynamically generated by the system (108) for executing the query. In an
embodiment, the receiving unit (202) may provide a user interface for inputting the query and the filtering parameters and may display the retrieved filtered data to the user. The method (300) includes executing (304), by the processing unit (208), the query based on the one or more parameters to retrieve the filtered data
20 from the database (210). In an embodiment, the processing unit (208) may
optimize the query execution by utilizing indexing, caching, or other performance optimization techniques. The method (300) includes a step of computing (306), by the processing unit (208), the filtered data based on the filtering parameters at the cluster of distributed databases. In an aspect, at step (306), the database (210) is
25 configured to aggregate the data based on the one or more parameters and transmit
the aggregated data towards the processing unit (208). In an embodiment, the processing unit (208) may distribute the computation across multiple nodes in the cluster to achieve parallel processing and improved performance. The method includes transmitting (308), by the processing unit (208), the filtered data to the
30 receiving unit (202). In an embodiment, the processing unit (208) may format the
29
filtered data into a structured format, such as JSON (JavaScript Object Notation)
and XML (eXtensible Markup Language), before transmitting it to the receiving
unit (202) for easier consumption and analysis. In an embodiment, the method may
further include storing the filtered data in a cache or a secondary storage for future
5 reference or reuse. In an embodiment, the method may also include applying data
encryption or data masking techniques to protect sensitive or personally identifiable information in the filtered data before transmitting it to the receiving unit (202) or the display unit (220).
[0086] FIG. 4 is an illustration of a component architecture (400) of the
10 system (108), in accordance with embodiments of the present disclosure.
[0087] As shown in FIG. 4, the component architecture (400) of the system
includes a plurality of gNBs (402), a network probe (404), a conductor (406), a
plurality of message brokers (408), a writer component (410), a normalizer (412),
a graphical user interface (414), a processing unit (416), a database (418), an
15 ingestion layer (420, 430), an AI/ML unit (422), a distributed file system (424), a
computation engine (426), an inventory system (428), and a computation layer (432).
[0088] In an operative aspect, the plurality of gNBs (402) is configured to
store data related to a plurality of users. For example, the data from the user
20 equipment is received by the gNBs, which function as base stations in the 5G
network. The plurality of gNBs (402) in the network architecture is responsible for communication with the user equipment (UE).
[0089] The network probe (404) is configured to receive the data from the
plurality of gNBs (402). The network probe (404) captures and analyzes several
25 types of network traffic and provides real-time reporting on network activity. The
network probe (404) performs network probing or monitoring tasks to gather data about network performance and conditions. For example, the gNBs may send user-related data to the conductor (406) for orchestration and coordination of tasks within the system.
30
[0090] The conductor (406) may communicate with message brokers to
facilitate data exchange and communication between distinct parts of the system.
The plurality of message brokers (408) may pass user-related data to the writer
component for storage in the database or the distributed file system. The writer
5 component (410) stores user-related data into the database (418) or the distributed
file system (424) for further processing and analysis. The database (418) is a structured data storage system used to store and manage structured data in a relational or non-relational format. The distributed storage system (424) allows data to be stored and accessed across multiple nodes or servers in the network.
10 [0091] In an example, the writer component (410) transmits the data to the
ingestion layer (420). The ingestion layer (420), on the other hand, manages the reception and initial processing of incoming data. This ingestion layer (420) may perform tasks like data validation, transformation, normalization, and routing to the appropriate storage or processing components within the system. User-related
15 data stored in the database (418), or the distributed file system (424) is retrieved
by the computation layer (432) for processing, analysis, or modelling tasks. In an aspect, the writer component (410) may transmit the user-related data to the normalizer component for data normalization or standardization. The normalized user-related data may be stored in the database (418) and may be passed to the
20 AI/ML unit (422) for machine learning or artificial intelligence-based analysis.
The AI/ML unit (422) implements machine learning or artificial intelligence algorithms for data analysis, prediction, or optimization tasks.
[0092] In an example, the processed user-related data may be sent to the
processing unit (416) for further computation or analysis. In an aspect, using the
25 graphical user interface (414), the user may be configured to insert the query. The
processed user-related data may be presented to users through the graphical user interface (414) for visualization and analysis. In an aspect, the query may include a textual input and a number of filtering parameters. The textual input and the filtering parameters are transmitted to the normalizer (412) and to the processing
30 unit (416). The processing unit (416) processes the received query and extracts the
31
data stored in the distributed file system via the computation engine (426) to
generate the processed user-related data. In another aspect, the user may transmit
the query using the inventory system (428). The ingestion layer (430) manages the
ingestion or intake of data from external sources (inventory system) into the system
5 for processing. Relevant user-related data may also be sent to the inventory system
(428) for inventory management or tracking purposes. The computation layer (432) is responsible for performing various computational tasks, such as data analysis, transformation, or modelling.
[0093] FIG. 5 is a flow diagram illustrating a method (500) of retrieving
10 data from the cluster of distributed databases in the network, in accordance with
embodiments of the present disclosure.
[0094] At step (502), the receiving unit (202) is configured to receive one
or more signals indicative of a query from the user.
[0095] At step (504), the processing unit (208) is configured to validate the
15 received query and one or more filtering parameters associated with the one or
more received signals based on a set of validation rules. The one or more filtering
parameters are selected from the group comprising a range filter, a match filter, a
wildcard filter, and a term filter. The set of validation rules includes data types, a
format, a minimum value, a maximum value, a minimum length, and a maximum
20 length.
[0096] At step (506), the processing unit (208) is configured to process the
one or more received signals for retrieving at least one filtered data from a database (210-1, 210-2…210-N) based on one or more validated filtering parameters associated with the one or more received signals.
25 [0097] At step (508), the processing unit (208) is configured to process the
filtered data to derive one or more computed values and recommendations.
32
[0098] At step (510), the processing unit (208) is configured to transmit the
filtered data, one or more computed values, and one or more derived recommendations to a display unit.
[0099] In an aspect, the method (500) includes a step of automatically
5 correcting the query by employing at least one artificial intelligence algorithm or
by employing at least one machine learning algorithm upon detecting any errors during the validating step.
[00100] In an aspect, the method (500) includes a step of dynamically
generating, by the processing unit (208), the one or more filtering parameters for
10 executing the query.
[00101] In an aspect, the method (500) includes a step of retrieving, by the
processing unit (208), the filtered data from each database (210-1, 210-2…210-N)
of the cluster of distributed databases (210) asynchronously or parallelly. The
retrieval of filtered data from each database can occur either asynchronously or in
15 parallel. Asynchronous retrieval implies that the processing unit initiates retrieval
requests to each database independently and continues its operations without waiting for the responses. Parallel retrieval suggests that multiple retrieval processes are executed simultaneously, potentially leveraging multi-threading or distributed computing techniques to enhance performance.
20 [00102] In an aspect, the processing unit (208) comprises a generative
Artificial Intelligence (AI) engine configured to generate the one or more recommendations based on the filtered data. The generative AI engine refers to a specific type of AI system designed to generate insights, or recommendations based on the input data and learned patterns. Generative AI engines often utilize
25 techniques such as neural networks, deep learning, Generative Adversarial
Networks (GANs), diffusion techniques, Variational Autoencoders (VAEs), Large Language Models (LLMs), or probabilistic models to generate novel outputs. In an aspect, the one or more recommendations are suggestions or insights provided by the AI engine based on the analysis of the filtered data. Recommendations may
33
take various forms depending on the application context, such as service recommendations, personalized content suggestions, or optimization strategies.
[00103] FIG. 6 illustrates an exemplary computer system (600) in which or
with which embodiments of the present disclosure may be implemented. As shown
5 in FIG. 6, the computer system (600) may include an external storage device (610),
a bus (620), a main memory (630), a read-only memory (640), a mass storage device (650), a communication port (660), and a processor (670). A person skilled in the art will appreciate that the computer system (600) may include more than one processor (670) and communication port (660). The processor (670) may
10 include various modules associated with embodiments of the present disclosure.
In an embodiment, the computer system (600) may be used to implement the system (108) described in FIG. 1 and FIG. 2, including the processing unit (208), the memory (204), the interfaces (206), and the database (210). In another embodiment, the computer system (600) may be used as the receiving unit (202)
15 or the user equipment (104) in the network architecture (100) of FIG. 1.
[00104] In an embodiment, the communication port (660) may be any of an
RS-232 port for use with a modem-based dialup connection, a 10/100 Ethernet port, a Gigabit or 10 Gigabit port using copper or fiber, a serial port, a parallel port, or other existing or future ports. The communication port (460) may be chosen
20 depending on a network, such as a Local Area Network (LAN), Wide Area
Network (WAN), or any network to which the computer system (600) connects. In an embodiment, the communication port (660) may support wireless communication protocols, such as Wi-Fi, Bluetooth, or cellular networks (e.g., 4G, 5G), enabling the computer system (600) to connect to wireless networks and
25 devices.
[00105] In an embodiment, the main memory (630) may be Random Access
Memory (RAM), or any other dynamic storage device commonly known in the art. The read-only memory (640) may be any static storage device(s), e.g., but not limited to, a Programmable Read-Only Memory (PROM) chip for storing static
34
information, e.g., start-up or Basic Input/Output System (BIOS) instructions for the processor (670). In an embodiment, the main memory (630) and the read-only memory (640) may be part of the memory (204) in FIG. 2, storing instructions and data for the functioning of the system (108).
5 [00106] In an embodiment, the mass storage (650) may be any current or
future mass storage solution, which may be used to store information and/or
instructions. Exemplary mass storage solutions include, but are not limited to,
Parallel Advanced Technology Attachment (PATA) or Serial Advanced
Technology Attachment (SATA) hard disk drives or solid-state drives (internal or
10 external, e.g., having Universal Serial Bus (USB) and/or Firewire interfaces), one
or more optical discs, Redundant Array of Independent Disks (RAID) storage, e.g., an array of disks (e.g., SATA arrays). In an embodiment, the mass storage (450) may be used to implement the database (210) in FIG. 2, storing the data generated by the network (106) and processed by the system (108).
15 [00107] In an embodiment, the bus (620) communicatively couples the
processor(s) (670) with the other memory, storage, and communication blocks. The bus (620) may be, e.g., a Peripheral Component Interconnect (PCI)/PCI Extended (PCI-X) bus, Small Computer System Interface (SCSI), Universal Serial Bus (USB) or the like, for connecting expansion cards, drives, and other
20 subsystems as well as other buses, such as a front side bus (FSB), which connects
the processor (670) to the computer system (600). In an embodiment, the bus (620) may be used to implement the interfaces (206) in FIG. 2, providing communication pathways between the processing unit (208), the database (210), and other components of the system (108).
25 [00108] Optionally, operator and administrative interfaces, e.g., a display,
keyboard, joystick, and a cursor control device, may also be coupled to the bus (620) to support direct operator interaction with the computer system (600). Other operator and administrative interfaces may be provided through network connections connected through the communication port (660). In an embodiment,
35
these interfaces may be used to implement the user interface of the receiving unit
(202), allowing users to input queries, view results, and interact with the system
(108). The components described above are meant only to exemplify various
possibilities. In no way should the aforementioned exemplary computer system
5 (600) limit the scope of the present disclosure.
[00109] In an exemplary embodiment, the present disclosure discloses a user
equipment (104) that is configured to retrieve data from the cluster of distributed databases (210). The user equipment includes a processor and a computer readable storage medium storing programming instructions for execution by the processor.
10 Under the programming instructions, the processor is configured to receive one or
more signals indicative of a query from a user. Under the programming instructions, the processor is configured to validate the received query and one or more filtering parameters associated with the one or more received signals based on a set of validation rules. Under the programming instructions, the processor is
15 configured to process one or more received signals for retrieving at least one
filtered data from a database based on one or more validated filtering parameters associated with the one or more received signals. Under the programming instructions, the processor is configured to process the filtered data to derive one or more computed values and recommendations. Under the programming
20 instructions, the processor is configured to transmit the filtered data, one or more
computed values, and one or more derived recommendations to a display unit.
[00110] The present disclosure provides a technical advancement in data
processing by introducing efficient methods for filtering specific data based on time intervals and required fields. The present disclosure addresses existing
25 limitations in data processing capabilities. By offering robust filter options such as
range, match, wildcard, and term filters, the disclosure enhances the ability to selectively load and process necessary data at various stages of request processing. This advancement significantly improves efficiency in distributed cluster environments, where handling large volumes of data can be resource-intensive and
30 time-consuming. By minimizing the amount of irrelevant data loaded and
processed, the present disclosure reduces resource consumption and enhances overall performance.
[00111] The method and system of the present disclosure may be
implemented in a number of ways. For example, the methods and systems of the
5 present disclosure may be implemented by software, hardware, firmware, or any
combination of software, hardware, and firmware. The above-described order for
the steps of the method is for illustration only, and the steps of the method of the
present disclosure are not limited to the order specifically described above unless
specifically stated otherwise. Further, in some embodiments, the present disclosure
10 may also be embodied as programs recorded in a recording medium, the programs
including machine-readable instructions for implementing the methods according to the present disclosure. Thus, the present disclosure also covers a recording medium storing a program for executing the method according to the present disclosure.
15 [00112] While considerable emphasis has been placed herein on the preferred
embodiments, it will be appreciated that many embodiments can be made and that many changes can be made in the preferred embodiments without departing from the principles of the disclosure. These and other changes in the preferred embodiments of the disclosure will be apparent to those skilled in the art from the
20 disclosure herein, whereby it is to be distinctly understood that the foregoing
descriptive matter to be implemented merely as illustrative of the disclosure and not as limitation.
ADVANTAGES OF THE PRESENT DISCLOSURE
[00113] The present disclosure provides a system and a method for data
25 normalization.
[00114] The present disclosure provides a system and a method that offers
robust filter options, such as range, match, wildcard, and term filters.
[00115] The present disclosure provides a system and a method that
selectively loads and processes the necessary data for further computation.
[00116] The present disclosure provides a system and a method that improves
the efficiency of data processing in a cluster of distributed databases by reducing
5 the amount of irrelevant data loaded and processed.
[00117] The present disclosure provides a system and a method for
processing large amounts of data from a distributed file storage unit.
WE CLAIM:
1. A system (108) for retrieving data from a cluster of distributed databases
(210) in a network, the system (108) comprising:
5 a receiving unit (202) configured to receive one or more signals
indicative of a query from a user; and
a processing unit (208) cooperatively coupled with the receiving unit
(202) to receive the one or more signals and is configured to execute
instructions stored in a memory (204) to:
10 validate the received query and one or more filtering
parameters associated with the one or more received signals based
on a set of validation rules;
process the one or more received signals for retrieving at
least one filtered data from a database (210-1, 210-2…210-N) based
15 on the one or more validated filtering parameters associated with the
one or more received signals;
process the retrieved filtered data to derive one or more computed values and one or more recommendations; and
transmit the retrieved filtered data, one or more derived
20 computed values, and one or more derived recommendations to a
display unit.
2. The system (108) of claim 1, wherein the processing unit (208) is further
configured to automatically correct the received query by employing an
artificial intelligence/machine learning algorithm upon detecting an error
25 during the validation.
3. The system (108) of claim 1, wherein the one or more filtering parameters
are selected from the group comprising a range filter, a match filter, a
wildcard filter, and a term filter.
4. The system (108) of claim 1, wherein the set of validation rules includes
data types, a format, a minimum value, a maximum value, a minimum
length, and a maximum length.
5. The system (108) of claim 1, wherein the processing unit (208) is further
5 configured to dynamically generate the one or more filtering parameters for
executing the received query.
6. The system (108) of claim 1, wherein the processing unit (208) is configured
to retrieve the data from each database (210-1, 210-2…210-N) of the cluster
of distributed databases (210) asynchronously or parallelly.
10 7. The system (108) of claim 1, wherein the processing unit (208) comprises a
generative Artificial Intelligence (AI) engine configured to generate the one or more recommendations based on the filtered data.
8. A method (500) of retrieving data from a cluster of distributed databases
(210), the method comprising:
15 receiving (502), via a receiving unit (202), one or more signals
indicative of a query from a user;
validating (504), by a processing unit (208), the received query and
one or more filtering parameters associated with the one or more received
signals based on a set of validation rules;
20 processing (506), by the processing unit (208), one or more received
signals for retrieving at least one filtered data from a database (210-1, 210-2…210-N) based on one or more validated filtering parameters associated with the one or more received signals;
processing (508), by the processing unit (208), the filtered data to
25 derive one or more computed values and recommendations; and
transmitting (510), by the processing unit (208), the filtered data, the one or more computed values, and one or more derived recommendations to a display unit.
9. The method (500) of claim 8, further comprising automatically correcting
the query by employing an artificial intelligence/ machine learning
algorithm upon detecting any errors during the validation.
10. The method (500) of claim 8, wherein the one or more filtering parameters
5 are selected from the group comprising a range filter, a match filter, a
wildcard filter, and a term filter.
11. The method (500) of claim 8, wherein the set of validation rules includes
data types, a format, a minimum value, a maximum value, a minimum
length, and a maximum length.
10 12. The method (500) of claim 8, further comprising dynamically generating,
by the processing unit (208), the one or more filtering parameters for executing the query.
13. The method (500) of claim 8, further comprising retrieving, by the
processing unit (208), the filtered data from each database (210-1, 210-
15 2…210-N) of the cluster of distributed databases (210) asynchronously or
parallelly.
14. The method (500) of claim 8, wherein the processing unit (208) comprises
a generative Artificial Intelligence (AI) engine configured to generate the
one or more recommendations based on the filtered data.
20 15. A user equipment (104) configured to retrieve data from a cluster of
distributed databases (210), the user equipment (104) comprising: a processor; and
a computer readable storage medium storing programming
instructions for execution by the processor, the programming instructions
25 to:
receive one or more signals indicative of a query from a user;
validate the received query and one or more filtering parameters associated with the one or more received signals based on a set of validation rules;
process one or more received signals for retrieving at least
5 one filtered data from a database (210-1, 210-2…210-N) based on
one or more validated filtering parameters associated with the one or more received signals;
process the filtered data to derive one or more computed
values and recommendations; and
10 transmit the filtered data, the one or more computed values,
and one or more derived recommendations to a display unit.
| # | Name | Date |
|---|---|---|
| 1 | 202321049335-STATEMENT OF UNDERTAKING (FORM 3) [21-07-2023(online)].pdf | 2023-07-21 |
| 2 | 202321049335-PROVISIONAL SPECIFICATION [21-07-2023(online)].pdf | 2023-07-21 |
| 3 | 202321049335-FORM 1 [21-07-2023(online)].pdf | 2023-07-21 |
| 4 | 202321049335-DRAWINGS [21-07-2023(online)].pdf | 2023-07-21 |
| 5 | 202321049335-DECLARATION OF INVENTORSHIP (FORM 5) [21-07-2023(online)].pdf | 2023-07-21 |
| 6 | 202321049335-FORM-26 [19-10-2023(online)].pdf | 2023-10-19 |
| 7 | 202321049335-FORM-26 [25-04-2024(online)].pdf | 2024-04-25 |
| 8 | 202321049335-FORM 13 [25-04-2024(online)].pdf | 2024-04-25 |
| 9 | 202321049335-FORM-26 [30-04-2024(online)].pdf | 2024-04-30 |
| 10 | 202321049335-Request Letter-Correspondence [03-06-2024(online)].pdf | 2024-06-03 |
| 11 | 202321049335-Power of Attorney [03-06-2024(online)].pdf | 2024-06-03 |
| 12 | 202321049335-Covering Letter [03-06-2024(online)].pdf | 2024-06-03 |
| 13 | 202321049335-CORRESPONDENCE(IPO)-(WIPO DAS)-10-07-2024.pdf | 2024-07-10 |
| 14 | 202321049335-ORIGINAL UR 6(1A) FORM 26-100724.pdf | 2024-07-15 |
| 15 | 202321049335-FORM-5 [19-07-2024(online)].pdf | 2024-07-19 |
| 16 | 202321049335-DRAWING [19-07-2024(online)].pdf | 2024-07-19 |
| 17 | 202321049335-CORRESPONDENCE-OTHERS [19-07-2024(online)].pdf | 2024-07-19 |
| 18 | 202321049335-COMPLETE SPECIFICATION [19-07-2024(online)].pdf | 2024-07-19 |
| 19 | 202321049335-FORM 18 [01-10-2024(online)].pdf | 2024-10-01 |
| 20 | Abstract-1.jpg | 2024-10-03 |