Disclosure of Invention
According to the invention, by constructing the data synchronization strategy, the data synchronization between the source system (CRM) and different target systems (ERP, hadoop) and the data synchronization between different target systems are realized, and the data consistency in the data synchronization process is ensured.
The technical scheme provided by the invention is that the method for processing the enterprise business data based on the AI comprises the following steps:
step 1, acquiring source system data, and storing the acquired data into one or more target systems;
Step 2, constructing a data synchronization strategy, monitoring and managing data synchronization among databases of a target system based on the data synchronization strategy, wherein the method comprises the following steps:
Generating a data synchronization policy based on the data synchronization cost;
After quantifying the importance of the data and the data synchronization task, combining the importance with the data synchronization cost, and optimizing a data synchronization strategy;
adding an adjustment rule in the optimized data synchronization strategy, and dynamically adjusting the importance of data or tasks;
and 3, sending the data of one or more target systems to a cloud platform for storage.
Preferably, the source system comprises a customer relationship management system CRM and a business intelligent BI system, and the target system comprises an enterprise resource planning ERP system and a big data processing Hadoop system;
before acquiring the source system data and storing the acquired data in the target system database, the method further comprises:
Judging whether the target system database is communicated with the source system or not;
judging the consistency of data synchronized by a source system to different target systems;
the step of judging whether the target system database is communicated with the source system or not comprises the following steps:
Modifying one or more fields in the source system, detecting whether the corresponding field of the target system is changed, if so, entering a step 2, otherwise, entering the following steps:
modifying one or more fields in the target system, checking whether corresponding automation in the source system is synchronous, if so, entering step 2, otherwise, entering the following steps:
Comparing the sampled and exported target system data with the sampled and exported source system data, judging whether the sampled and exported target system data are consistent with the sampled and exported source system data, if so, entering the step 2, otherwise, entering the following steps:
Checking an API (application program interface) call log of a target system, and confirming whether an exchange record exists in a source system, if so, entering a step 2, otherwise, automatically opening a database of the target system and the source system, wherein the method specifically comprises the following steps of:
determining data fields needing to be synchronized;
identifying sensitive fields in the synchronous data fields, encrypting or hashing the sensitive fields, and establishing independent indexes for the high-frequency query fields;
Calling an API interface of the target system to be in butt joint with the source system, or extracting data from the source system by using an ETL tool, and loading the data to the ERP system after cleaning;
And according to the preset monitoring frequency, periodically auditing the access rights of the API interface and removing the redundant account information.
Preferably, the determining the consistency of the data synchronized by the source system to the different target systems includes:
acquiring a plurality of data to be checked from different target systems, and partitioning according to the same rule to acquire a plurality of corresponding data blocks I and data blocks II;
calculating and obtaining a first hash value of each first data block and a second hash value of each second data block;
Constructing a Merck tree I based on the hash value I, and constructing a Merck tree II based on the hash value II;
acquiring a root hash value of the first merck tree and a root hash value of the second merck tree, comparing, if the difference exists, searching for a corresponding first data block and a corresponding second data block, and covering the corresponding second data block by taking the first data block as a reference;
if the second data block cannot be automatically covered, the first difference data block and the second difference data block are pushed to the upper computer to be manually processed.
Preferably, the generating the data synchronization policy based on the data synchronization cost includes:
Constructing a dynamic adjustment model, and dynamically adjusting the data volume proportion of full-volume data and incremental data, specifically:
Building a state matrix, wherein,The rate of change of the data is indicated,Representing the cost of synchronizing the full amount of data,Representing the cost of incremental data synchronization,Representing the average time consumption of the history synchronization;
Constructing a weight matrixThe first line element of the weight matrix is expressed in a decision vector corresponding to full data synchronization, and the second line element of the weight matrix is expressed in a decision vector corresponding to incremental data synchronization;
Generating synchronization policiesWhereinAndA data proportion representing full synchronization and an incremental synchronization data proportion;
optimizing weight matrices by gradient descent to minimize synchronization costsThe gradient calculation process comprises the following steps:
;
The updated weight matrix is;
When (when)Triggering full data synchronization when in use, otherwise, according to the followingThe proportion is used for synchronizing the increment data, wherein,Representing a full synchronization threshold.
Preferably, after quantifying the importance of the data and the data synchronization task, the optimizing the data synchronization policy in combination with the data synchronization cost includes:
Extracting importance of data and importance of a data synchronization task from metadata of a target system, wherein the importance of the data is defined as influence weight of the extracted data on system business based on business rules preset by the target system, the importance of the data synchronization task is defined as priority of the task based on a type of the synchronization task, and the type of the task comprises a real-time report task and an offline analysis task;
specifically, based on the ratings of clients corresponding to the data, the importance of the data is associated with the ratings, and the importance of the data is quantified by the client ratingsBased on the priority of the data synchronization task, the importance of the data synchronization task is related to the priority, and the importance of the data synchronization task is quantized by the priority;
Will beAndAdded toIn (3) forming a new state matrix;
Construction of new synchronization costs, wherein,Represents a penalty coefficient and,Representing a delay time when incremental data is synchronized;
updating weight matrix by gradient descent method, minimizingWherein the gradient calculation process is as follows: wherein, the method comprises the steps of,,;
The optimized synchronization strategy:;
When (when)When the data is synchronized in full, that is,Wherein, the method comprises the steps of,Representing a task importance threshold one;
When (when)When the incremental data synchronization delay is allowed,Representing a task importance threshold two.
Preferably, adding an adjustment rule in the optimized data synchronization strategy, dynamically adjusting the importance of data or tasks, including:
Based on customer behavior, transaction data and system business rules, quantifying customer value, formulating dynamic adjustment rules of customer ratings, comprising the following steps:
acquiring client behavior, transaction data and system business rule data from a target system database to form a client data set;
Extracting key features from a customer dataset to form a customer key feature setThe real-time key features comprise the accumulated transaction amount, the maximum transaction amount, the liveness and the repurchase rate of the clients;
after normalizing the customer key feature set, inputting the customer key feature set into a time sequence model ARIMA, and predicting the consumption of the customer for 6 months in the future;
Constructing a customer value scoring model:
, wherein,Respectively representing scoring weight coefficients; representing a maximum transaction amount for the customer; Representing an accumulated transaction amount; representing the repurchase rate; A forecast value representing a customer's future 6 months of consumption; represents the coefficient of attenuation and,;
Setting a customer value scoring classification interval,When the client is judged to be a high-value client, whenWhen the client is judged to be a low-value client;
The dynamic adjustment rule of the priority of the task is formulated by combining the type of the data synchronization task, the timeliness requirement and the value of the associated data, and the method specifically comprises the following steps:
the types of the data synchronization tasks are divided into real-time wind control, real-time report forms, batch analysis and history archiving according to the data purposes;
Assigning task weights to different types of data synchronization tasks;
Constructing a task importance scoring model:
wherein, the method comprises the steps of,The task weight vector is represented as a vector of weights,;Indicating that the task has been delayed in time,Representing the adjustment coefficient; the importance of the data is indicated and,;
Setting task importance scoring classification interval,When the task is judged to be the task with the highest priority; judging that the synchronous task is a low-priority task;
Setting adjustment rules:
Triggering the upgrading of the customer value score when the trade amount of the customer on a single day is 5 times of the average value of the first 6 months;
When the customer has no transaction data for 3 consecutive months, andTriggering the customer value score to be degraded when the task priority associated with the customer is continuously reduced;
Transmitting customer transaction data through Kafka, calling a customer value scoring model through a Flink, calculating a customer value score, and writing the customer value score into Redis for real-time inquiry of a system;
the time series model ARIMA is periodically trained by Spark to update the Hive table.
Preferably, the adding an adjustment rule in the optimized data synchronization policy dynamically adjusts importance of data or tasks, and further includes:
The temporary importance adjusting mechanism is added to realize temporary improvement and reduction of the importance of data or tasks, and the method specifically comprises the following steps:
Adding a temporary adjustment table in a target system database, wherein the temporary adjustment table comprises an adjustment record ID, an adjustment object type, a client ID, a synchronous task ID, an importance before adjustment, an importance after adjustment, an effective time, a failure time, an operator ID and an adjustment reason;
the adjustment mechanism is that the importance value of the current effect isWherein, the method comprises the steps of,A quantized value representing the importance of the current effect,Indicating the importance of the adjustment after the adjustment,Representing the output of a task importance scoring model or a customer value scoring model,The current time is indicated as such,Indicating the time of the effective period of the adjustment,Indicating an adjusted expiration time;
covering the importance before adjustment by using the importance after adjustment through the priority covering middleware;
According to the preset scanning frequency, automatically scanning and recording the expired adjustment, and automatically stopping the temporary importance adjustment mechanism after triggering the notification information.
Preferably, the method for overlaying the importance before the adjustment by the priority overlay middleware further comprises integrating the customer importance score, the task importance score, the data importance and the temporary adjustment record to generate the comprehensive importance, and generating the final adjusted importance based on the comprehensive importance and the adjusted importance in the temporary adjustment form, wherein the method comprises the following specific steps of:
Obtaining customer importance scores based on a customer value score model;
Acquiring task importance scores based on task importance score models;
Acquiring data importanceAnd a quantized value of the adjusted importance;
Will be、、AndCarrying out normalization treatment;
Comprehensive importance;
Wherein,Representing the weight coefficient of the resource, wherein,Representation of、Normalized values.
An AI-based enterprise business data processing system comprises a processor, a memory and a communication module connected with the processor, wherein the system is used for executing the AI-based enterprise business data processing method.
A computer readable storage medium storing a computer program for execution by a processor to implement the AI-based enterprise business data processing method.
The invention has the beneficial effects that:
1. According to the invention, whether the client data of the source system (CRM system) and the target system (ERP) are communicated or not is judged, and the safe communication is realized under the condition that the client data are not communicated, so that the client data are ensured to be in different data.
2. According to the method, after the client data and the target system are communicated, different data storage schemes are kept consistent through the design of the data synchronization strategy, for example, partial data or analysis is stored in the Hadoop while the source system is synchronized to the database of the ERP system, and the data consistency of the database of the ERP system and the Hadoop storage scheme is ensured through the data synchronization strategy.
3. According to the invention, the dynamic adjustment model is used for adding an adjustment rule in the data synchronization process to adjust the importance of data or tasks, and the proportion of the total data and the incremental data in the data synchronization process is dynamically adjusted according to the importance of the data and the tasks.
Detailed Description
The following description is presented to enable one of ordinary skill in the art to make and use the invention. The preferred embodiments in the following description are by way of example only and other obvious variations will occur to those skilled in the art. The basic principles of the invention defined in the following description may be applied to other embodiments, variations, modifications, equivalents, and other technical solutions without departing from the spirit and scope of the invention.
It will be understood that the terms "a" and "an" should be interpreted as referring to "at least one" or "one or more," i.e., in one embodiment, the number of elements may be one, while in another embodiment, the number of elements may be plural, and the term "a" should not be interpreted as limiting the number.
Embodiment one:
referring to fig. 1, the technical scheme provided by the invention is that an enterprise business data processing method based on AI comprises the following steps:
Step 1, acquiring source system data, and storing the acquired data into one or more target systems, wherein the source system comprises a customer relationship management system CRM and a business intelligent BI system, and the target systems comprise an enterprise resource planning ERP system and a big data processing Hadoop system;
Step 2, constructing a data synchronization strategy, monitoring and managing data synchronization among databases of a target system based on the data synchronization strategy, and comprising the following substeps:
And 2.1, generating a data synchronization strategy based on the data synchronization cost. Comprises the following substeps:
Constructing a dynamic adjustment model, and dynamically adjusting the data volume proportion of full-volume data and incremental data, specifically:
Building a state matrix, wherein,The rate of change of the data is indicated,Representing the cost of synchronizing the full amount of data,Representing the cost of incremental data synchronization,Representing the average time consumption of the history synchronization.
The data change rate is the percentage of the number of newly added or modified records in unit time to the total number of records, the number of changed records can be counted from a database log, the total data synchronization cost is the time, bandwidth and computing resources (CPU and memory utilization rate) consumed during the total synchronization, the incremental data synchronization cost is the resource consumption (CPU and memory utilization rate) of a CDC (CDC) tool, and the average time consumption of the historical synchronization is the average time consumption of N times of past synchronization tasks.
Constructing a weight matrixThe first line element of the weight matrix is expressed in a decision vector corresponding to full data synchronization, and the second line element of the weight matrix is expressed in a decision vector corresponding to incremental data synchronization;
Generating synchronization policiesWhereinAndA data proportion representing full synchronization and an incremental synchronization data proportion;
optimizing weight matrices by gradient descent to minimize synchronization costsThe gradient calculation process comprises the following steps:
;
The updated weight matrix is;
When (when)Triggering full data synchronization when in use, otherwise, according to the followingThe proportion is used for synchronizing the increment data, wherein,Representing a full synchronization threshold.
For example, in the present embodiment, the state vector in the current state is;
The weight matrix is,;
Normalized by Softmax to obtain,;
The synchronization strategy is that 52% of the synchronous data volume adopts full volume synchronization and 48% adopts increment synchronization.
And 2.2, after quantifying the importance of the data and the data synchronization task, combining the importance with the data synchronization cost, and optimizing the data synchronization strategy. Comprises the following substeps:
Extracting importance of data and importance of a data synchronization task from metadata of a target system, wherein the importance of the data is defined as influence weight of the extracted data on system business based on business rules preset by the target system, the importance of the data synchronization task is defined as priority of the task based on a type of the synchronization task, and the type of the task comprises a real-time report task and an offline analysis task;
specifically, based on the ratings of clients corresponding to the data, the importance of the data is associated with the ratings, and the importance of the data is quantified by the client ratingsBased on the priority of the data synchronization task, the importance of the data synchronization task is related to the priority, and the importance of the data synchronization task is quantized by the priority;
Will beAndAdded toIn (3) forming a new state matrix;
Construction of new synchronization costs, wherein,Represents a penalty coefficient and,Representing a delay time when incremental data is synchronized;
updating weight matrix by gradient descent method, minimizingWherein the gradient calculation process is as follows:;
Wherein,,;
The optimized synchronization strategy:;
When (when)When the data is synchronized in full, that is,Wherein, the method comprises the steps of,Representing a task importance threshold one;
When (when)When the incremental data synchronization delay is allowed,Representing a task importance threshold two.
For example, in this embodiment, the two target systems are an ERP system and a Hadoop system, and after the data of the CRP system (source system) is accessed to the ERP system, the data needs to be synchronized to the Hadoop for backup.
There is now a need to synchronize the order data of VIP clientsThe type of the synchronous task is order data, the priority of the order data task is set to be 3, namely;
When (when),,,In the time-course of which the first and second contact surfaces,
;
Optimal solution whenIn the time-course of which the first and second contact surfaces,When (1)In the time-course of which the first and second contact surfaces,. Because of the high importance of VIP clients' data, the system chooses full synchronization (avoiding the risk of penalty of 75 units) even though the cost at full synchronization is somewhat higher.
And 2.3, adding an adjustment rule in the optimized data synchronization strategy, and dynamically adjusting the importance of the data or the task. Comprises the following substeps:
Based on customer behavior, transaction data and system business rules, quantifying customer value, formulating dynamic adjustment rules of customer ratings, comprising the following steps:
acquiring client behavior, transaction data and system business rule data from a target system database to form a client data set;
Extracting key features from a customer dataset to form a customer key feature setThe real-time key features comprise the accumulated transaction amount, the maximum transaction amount, the liveness and the repurchase rate of the clients;
after normalizing the customer key feature set, inputting the customer key feature set into a time sequence model ARIMA, and predicting the consumption of the customer for 6 months in the future;
Constructing a customer value scoring model:
, wherein,Respectively representing scoring weight coefficients; representing a maximum transaction amount for the customer; Representing an accumulated transaction amount; representing the repurchase rate; A forecast value representing a customer's future 6 months of consumption; represents the coefficient of attenuation and,;
Setting a customer value scoring classification interval,When the client is judged to be a high-value client, whenWhen the client is judged to be a low-value client;
The dynamic adjustment rule of the priority of the task is formulated by combining the type of the data synchronization task, the timeliness requirement and the value of the associated data, and the method specifically comprises the following steps:
the types of the data synchronization tasks are divided into real-time wind control, real-time report forms, batch analysis and history archiving according to the data purposes;
Assigning task weights to different types of data synchronization tasks;
Constructing a task importance scoring model:
wherein, the method comprises the steps of,The task weight vector is represented as a vector of weights,;Indicating that the task has been delayed in time,Representing the adjustment coefficient; the importance of the data is indicated and,;
Setting task importance scoring classification interval,When the task is judged to be the task with the highest priority; judging that the synchronous task is a low-priority task;
Setting adjustment rules:
Triggering the upgrading of the customer value score when the trade amount of the customer on a single day is 5 times of the average value of the first 6 months;
When the customer has no transaction data for 3 consecutive months, andTriggering the customer value score to be degraded when the task priority associated with the customer is continuously reduced;
Transmitting customer transaction data through Kafka, calling a customer value scoring model through a Flink, calculating a customer value score, and writing the customer value score into Redis for real-time inquiry of a system;
the time series model ARIMA is periodically trained by Spark to update the Hive table.
And 3, generating data of one or more target systems to the cloud platform for storage.
The method further comprises the following steps before the step 1:
And judging whether the target system database is communicated with the source system or not, and judging the consistency of the data synchronized by the source system to different target systems.
The method for judging whether the target system database is communicated with the source system comprises the following steps:
Modifying one or more fields in the source system, detecting whether the corresponding field of the target system is changed, if so, entering a step 2, otherwise, entering the following steps:
modifying one or more fields in the target system, checking whether corresponding automation in the source system is synchronous, if so, entering step 2, otherwise, entering the following steps:
Comparing the sampled and exported target system data with the sampled and exported source system data, judging whether the sampled and exported target system data are consistent with the sampled and exported source system data, if so, entering the step 2, otherwise, entering the following steps:
Checking an API (application program interface) call log of a target system, and confirming whether an exchange record exists in a source system, if so, entering a step 2, otherwise, automatically opening a database of the target system and the source system, wherein the method specifically comprises the following steps of:
determining data fields needing to be synchronized;
identifying sensitive fields in the synchronous data fields, encrypting or hashing the sensitive fields, and establishing independent indexes for the high-frequency query fields;
Calling an API interface of the target system to be in butt joint with the source system, or extracting data from the source system by using an ETL tool, and loading the data to the ERP system after cleaning;
And according to the preset monitoring frequency, periodically auditing the access rights of the API interface and removing the redundant account information.
The method for judging the consistency of the data synchronized by the source system to different target systems comprises the following steps:
acquiring a plurality of data to be checked from different target systems, and partitioning according to the same rule to acquire a plurality of corresponding data blocks I and data blocks II;
calculating and obtaining a first hash value of each first data block and a second hash value of each second data block;
Constructing a Merck tree I based on the hash value I, and constructing a Merck tree II based on the hash value II;
acquiring a root hash value of the first merck tree and a root hash value of the second merck tree, comparing, if the difference exists, searching for a corresponding first data block and a corresponding second data block, and covering the corresponding second data block by taking the first data block as a reference;
if the second data block cannot be automatically covered, the first difference data block and the second difference data block are pushed to the upper computer to be manually processed.
Embodiment two:
In this embodiment, on the basis of the first embodiment, an adjustment rule is added when the importance of data or tasks is dynamically adjusted. The method specifically comprises the following steps:
The temporary importance adjusting mechanism is added to realize temporary improvement and reduction of the importance of data or tasks, and the method specifically comprises the following steps:
Adding a temporary adjustment table in a target system database, wherein the temporary adjustment table comprises an adjustment record ID, an adjustment object type, a client ID, a synchronous task ID, an importance before adjustment, an importance after adjustment, an effective time, a failure time, an operator ID and an adjustment reason;
the adjustment mechanism is that the importance value of the current effect isWherein, the method comprises the steps of,A quantized value representing the importance of the current effect,Indicating the importance of the adjustment after the adjustment,Representing the output of a task importance scoring model or a customer value scoring model,The current time is indicated as such,Indicating the time of the effective period of the adjustment,Indicating an adjusted expiration time;
covering the importance before adjustment by using the importance after adjustment through the priority covering middleware;
According to the preset scanning frequency, automatically scanning and recording the expired adjustment, and automatically stopping the temporary importance adjustment mechanism after triggering the notification information.
In this embodiment, the temporary importance adjustment mechanism cooperates with the dynamic adjustment model, so that business personnel of the enterprise can quickly respond to the time length change and temporarily adjust the importance of data or tasks.
Embodiment III:
On the basis of the second embodiment, the method first integrates the customer importance score, the task importance score, the data importance and the temporary adjustment record to generate the comprehensive importance, and then compares the comprehensive importance with the adjusted importance in the temporary adjustment table to generate the final adjusted importance. To achieve the effect of managing customer importance scores, task importance scores and data importance and temporarily adjusting records through the priority overlay middleware. The method specifically comprises the following steps:
Obtaining customer importance scores based on a customer value score model;
Acquiring task importance scores based on task importance score models;
Acquiring data importanceAnd a quantized value of the adjusted importance;
Will be、、AndCarrying out normalization treatment;
Comprehensive importance;
Wherein,Representing the weight coefficient of the resource, wherein,Representation of、The value after the normalization is carried out,
If it isThen useForced coverageOtherwise use。
For example, take the slicing task of a 5G network as an example:
the input variables are,,In effect;The values are respectively 0.3, 0.2 and 0.2;
Comprehensive importance;
Due toUsingForced coverage,The final adjusted importance was 0.9.
If the adjusted importance is the importance of the data, using the adjusted importance of the data to replace the importance of the data quantified based on the customer ratingAnd forming a new state matrix, further finally obtaining the data proportion and the increment synchronization data proportion of the full synchronization, and controlling the data synchronization process according to the data proportion and the increment synchronization data proportion of the full synchronization.
The invention also provides an AI-based enterprise business data processing system, which comprises a processor, a memory and a communication module, wherein the memory and the communication module are connected with the processor, and the system is used for executing the AI-based enterprise business data processing method.
The present invention also provides a computer readable storage medium storing a computer program that is executed by a processor to implement the AI-based business data processing method.
The processes described above with reference to flowcharts may be implemented as computer software programs in accordance with the disclosed embodiments of the application. Embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method shown in the flow chart. In such embodiments, the computer program may be downloaded and installed from a network via a communication portion, and/or installed from a removable medium. The above-described functions defined in the method of the present application are performed when the computer program is executed by a Central Processing Unit (CPU). The computer readable medium of the present application may be a computer readable signal medium or a computer readable storage medium, or any combination of the two. The computer readable storage medium can be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing. More specific examples of a computer-readable storage medium may include, but are not limited to, an electrical connection having one or more wire segments, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In the present application, however, the computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, with the computer-readable program code embodied therein. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination of the foregoing. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless segments, radio lines, fiber optic cables, RF, etc., or any suitable combination of the foregoing.
The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
It will be understood by those skilled in the art that the embodiments of the present invention described above and shown in the drawings are merely illustrative and not restrictive of the current invention, and that this invention has been shown and described with respect to the functional and structural principles thereof, without departing from such principles, and that any changes or modifications may be made to the embodiments of the invention without departing from such principles.