Data export method and device, computer equipment and storage medium
1. A data export method is applied to a client, the client is connected with a server, and the data export method comprises the following steps:
generating a data export request when receiving a data export operation acting on a data export management page, wherein the data export request comprises an IP address of a server and a target file name;
responding to the data export operation, and loading a data export list on the data export management page;
sending the data export request to the server, wherein the server is pointed by the IP address and is used for responding the data export request to export target data with the file name as the target file name;
receiving the target data sent by the server;
updating the data export list.
2. The data export method of claim 1, wherein generating a data export request upon receiving a data export operation acting on the data export management page further comprises:
and displaying a data export management page, wherein the data export management page comprises an uploading control, and the uploading control is used for uploading a data export information table.
3. The data export method of claim 2, wherein generating a data export request upon receiving a data export operation acting on a data export management page comprises:
when a first operation acting on the uploading control is received, the IP address and the target file name of the server in the data export information table are obtained;
and generating a data export request containing the IP address and the target file name.
4. The data export method of claim 2 wherein the data export information table further comprises a target data export manner, and the loading a data export list on the data export management page in response to the data export operation comprises:
and responding to the data export operation, and loading export information of each target data on the data export management page, wherein the export information comprises at least one of a target file name, an export mode, an export state, an IP address of a server where the target data is located and the size of the exported target data.
5. The data export method of any of claims 1-4, wherein the data export list includes an export status of the target data, and wherein updating the data export list comprises:
acquiring the export progress of target data;
updating the export status of the target data in the data export list based on the export progress.
6. The data export method of any one of claims 1-4, wherein the data export list comprises export manners of the target data, and a switch control for switching the export manner of each target data, and prior to the updating the data export list, further comprises:
receiving a second operation acting on the switching control;
said updating said data export list, comprising:
in response to the second operation, displaying the displayed first switching control as a second switching control in the data export list, and updating the export mode of the target data from the first export mode to a second export mode;
when the first switching control is switched to the periodically derived control, the second switching control is switched to the offline derived control, and when the first switching control is switched to the offline derived control, the second switching control is switched to the periodically derived control.
7. The data export method according to any one of claims 1 to 4, wherein the data export list includes a display control for loading export details of each target data, and after the receiving the target data sent by the server, further includes:
receiving a third operation acting on the display control;
in response to the third operation, loading export details of the target data.
8. A data export apparatus, applied to a client connected to a server, the data export apparatus comprising:
the data export request generation module is used for generating a data export request when receiving data export operation acting on a data export management page, wherein the data export request comprises an IP address of a server and a target file name;
the data export list loading module is used for responding to the data export operation and loading a data export list on the data export management page;
a data export request sending module, configured to send the data export request to a server, where the server is a server pointed by the IP address, and the server is configured to respond to the data export request to export target data whose file name is the target file name;
the target data receiving module is used for receiving the target data sent by the server;
and the data export list updating module is used for updating the data export list.
9. A computer device, characterized in that the computer device comprises:
one or more processors;
a memory for storing one or more programs,
when executed by the one or more processors, cause the one or more processors to implement a data derivation method as claimed in any one of claims 1-7.
10. A computer-readable storage medium, on which a computer program is stored, which, when being executed by a processor, carries out the data derivation method of any one of claims 1 to 7.
Background
Data analysis refers to analyzing collected data to maximize data development function and exert data functions, nowadays, more and more enterprises choose to analyze data of owned business data, and since data of many enterprises are huge and data in tables are hundreds of millions, how to simply and efficiently derive needed data from a database becomes an important problem.
One of the current ways of exporting data is to use an exp command, but the exp command can only be run at a server and cannot be run at a client, for example, some companies specially used for data analysis cannot be connected with a database server when the party A only provides connection information for connecting resource libraries such as url, user name and password, and the like, and the exp command uses a script, so that the user operation is complex and the experience is poor.
Disclosure of Invention
The embodiment of the invention provides a data export method, a data export device, computer equipment and a storage medium, and aims to solve the problems of complex user operation and poor experience of the existing data export method.
In a first aspect, an embodiment of the present invention provides a data export method, which is applied to a client, where the client is connected to a server, and the method includes:
generating a data export request when receiving a data export operation acting on a data export management page, wherein the data export request comprises an IP address of a server and a target file name;
responding to the data export operation, and loading a data export list on the data export management page;
sending the data export request to the server, wherein the server is pointed by the IP address and is used for responding the data export request to export target data with the file name as the target file name;
receiving the target data sent by the server;
updating the data export list.
Optionally, when receiving a data export operation acting on the data export management page, generating a data export request further includes:
and displaying a data export management page, wherein the data export management page comprises an uploading control, and the uploading control is used for uploading a data export information table.
Optionally, the generating a data export request when receiving a data export operation acting on the data export management page includes:
when a first operation acting on the uploading control is received, the IP address and the target file name of the server in the data export information table are obtained;
and generating a data export request containing the IP address and the target file name.
Optionally, the data export information table further includes an export manner of the target data, and the loading, in response to the data export operation, a data export list on the data export management page includes:
and responding to the data export operation, and loading export information of each target data on the data export management page, wherein the export information comprises at least one of a target file name, an export mode, an export state, an IP address of a server where the target data is located and the size of the exported target data.
Optionally, the data export list includes an export status of the target data, and the updating the data export list includes:
acquiring the export progress of the target data;
updating the export status of the target data in the data export list based on the export progress.
Optionally, the data export list includes an export manner of the target data, and a switching control for switching an export manner of each target data, before the updating the data export list, the method further includes:
receiving a second operation acting on the switching control;
said updating said data export list, comprising:
in response to the second operation, displaying the displayed first switching control as a second switching control in the data export list, and updating the export mode of the target data from the first export mode to a second export mode;
when the first switching control is switched to the periodically derived control, the second switching control is switched to the offline derived control, and when the first switching control is switched to the offline derived control, the second switching control is switched to the periodically derived control.
Optionally, the data export list includes a display control for loading export details of each target data, and after the receiving the target data sent by the server, the method further includes:
receiving a third operation acting on the display control;
in response to the third operation, loading export details of the target data.
In a second aspect, an embodiment of the present invention further provides a data export apparatus, which is applied to a client, where the client is connected to a server, and the data export apparatus includes:
the data export request generation module is used for generating a data export request when receiving data export operation acting on a data export management page, wherein the data export request comprises an IP address of a server and a target file name;
the data export list loading module is used for responding to the data export operation and loading a data export list on the data export management page;
a data export request sending module, configured to send the data export request to a server, where the server is a server pointed by the IP address, and the server is configured to respond to the data export request to export target data whose file name is the target file name;
the target data receiving module is used for receiving the target data sent by the server;
and the data export list updating module is used for updating the data export list.
In a third aspect, an embodiment of the present invention further provides a computer device, where the computer device includes:
one or more processors;
a memory for storing one or more programs,
when executed by the one or more processors, cause the one or more processors to implement a data derivation method as described in the first aspect.
In a fourth aspect, the embodiments of the present invention also provide a computer-readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements the data export method according to the first aspect.
The data export method is applied to a client, the client is configured with a data export management page, when receiving data export operation acting on the data export management page, the client generates a data export request comprising an IP address and a target file name of a server, loads a data export list on the data export management page, after sending the data export request to the server pointed by the IP address, the server responds to the data export request and then exports target data with the file name of the target file name, then sends the target data to the client, and the client updates the data export list after receiving the target data. The client side provides the data export management page, a user only needs to conduct export operation on the data management page, target data can be automatically exported, an exp command is not needed, the data management page is visualized in an export list form, the operation is simple, the user can know the data export state in real time, and the use experience of the user for exporting data is improved.
Drawings
Fig. 1 is a flowchart of a data export method according to an embodiment of the present invention;
fig. 2 is a schematic diagram of an export list in a data export management page according to an embodiment of the present invention;
fig. 3 is a schematic diagram of a detail page in a data export management page according to an embodiment of the present invention;
fig. 4 is a schematic structural diagram of a data export apparatus according to a second embodiment of the present invention;
fig. 5 is a schematic structural diagram of a computer device according to a third embodiment of the present invention.
Detailed Description
The present invention will be described in further detail with reference to the accompanying drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the invention and are not limiting of the invention. It should be further noted that, for the convenience of description, only some of the structures related to the present invention are shown in the drawings, not all of the structures.
Example one
Fig. 1 is a flowchart of a data export method according to an embodiment of the present invention, where the embodiment is applicable to exporting data from a server to a client, the method may be executed by a data export apparatus, the data export apparatus may be implemented by software and/or hardware, and is generally configured in a computer device, for example, a server, a personal computer, and the like, and the data export method may include the following steps:
s101, when receiving a data export operation acting on a data export management page, generating a data export request, wherein the data export request comprises an IP address and a target file name of a server.
The server is a database server, data is generally stored in the database in a data table form, and the name of a target file requested to be exported by the client is the table name of the data table.
The IP Address (Internet Protocol Address) is an Internet Protocol Address, and is a uniform Address format provided by an IP Protocol, and each computer and other devices on the Internet have a unique "IP Address", so that when a client requests to export a target file from a server, a data export request carries the IP Address of the server.
In addition, the data export request may further carry at least one of a port, a user name, a password, a service name, and an export manner of the target file of the database server, and if the data table is stored in the schema of the database, the data export request may further include a schema name, and the like.
The data export management page is a graphic management application program of the client system, namely an application program in an application layer, an application calling kernel, a kernel calling driver and a driver for controlling a real hardware display.
In an optional embodiment of the present invention, before receiving the data export operation acting on the data export management page, the method may further include: and displaying a data export management page, wherein the data export management page comprises an uploading control used for uploading a data export information table, and the data export information table comprises information required for generating a data export request.
The control is the encapsulation of data and methods, the control can have its own attributes and methods, the attributes are simple visitors of the control data, the methods are some simple and visible functions of the control, the control creating process includes the design, development and debugging work, and then the use of the control.
In another optional embodiment, when the first operation acting on the upload control is received, the IP address and the target file name of the server in the data export information table are obtained, and a data export request containing the IP address and the target file name is generated.
The data export information table comprises information required for generating a data export request, specifically, a client can provide template downloading of the data export information table, after the template downloading of the data export information table, a user fills an IP address, a port, a service name, a user name, a password, a mode name, a table name, an export mode and the like of a database server in the data export information table, the user stores the data export information table after filling, the upload control is triggered, and the client generates the data export request after receiving an operation acting on the upload control.
The following table is an example of a data derivation information table:
a data export request refers to a request from a client to a database server to export specified data, the request being issued by the client, and the server exporting data in response to the request.
In an alternative embodiment of the present invention, the database may be an oracle database, the Sqluldr2 is used as a data export tool to generate a data export request, and the Sqluldr2 is used as one of the export tools specialized for large data volume, and the efficiency is 70% faster than that of the ordinary export. An example of the call sqluldr2 command of the present embodiment is: sqlulder 2 hr/[email protected]:1521/XE query "select from user _ t" field: "head ═ yes" D: \\ sqlulder 2\ user _ t \ b.csv batch rows:500000log: + D:sqlulder 2\ log user _ t.
Wherein, hr is the user name of the database server;
hr123 is the password of the database server;
192.168.0.1 is the IP of the database server;
1521 is a port of a database server;
XE is the service name of the data table;
query represents data needing to be exported, the content in the quotation mark is an sql statement, and the user _ t is a target file name;
field denotes a separator for each column of content in the derived file content, and in this example, an english comma is used as the separator;
the head represents whether the column name with the table is needed or not, and the value is yes or no;
file: \ sqluldr2\ user _ t _% b.csv, file represents the output directory of the exported data file,% B represents the placeholder, which is automatically replaced with the number (1, 2, 3 …) when the file data amount exceeds the preset data amount and the file is to be split, and in the present example, the format of the data exported file is csv;
the batch indicates whether the file needs to be segmented when the data volume of the file exceeds a preset data volume, and the value is yes or no;
rows, which represents how many rows of data to split when a file needs to be split, in this example, one file is split every 500000 rows of data.
log represents an output directory of a log file, the log comprises the data volume derived from the command and the consumed time, and the log represents that the log is written in an apend mode, wherein the log is an event record generated when the service program operates, and the log of each line records the description of related operations such as date, time, user, action and the like.
Of course, the tool for deriving data by using Sqluldr2 as oracle data is only used as an example, and besides the tool for deriving data and the database, a person skilled in the art may also use other tools for deriving data according to actual needs, and may also perform data derivation on other types of databases, which is not limited by the embodiment of the present invention.
And S102, responding to the data export operation, and loading a data export list on the data export management page.
In an optional embodiment of the present invention, the data export information table may include an export manner of the target data, and the export information of each target data may be loaded on the data export management page, where the export information includes at least one of a name of the target file, an export manner, an export state, an IP address of a server where the target data is located, and a size of the exported target data.
In an optional embodiment of the present invention, as shown in fig. 2, the export list of the data export management page is a schematic diagram, in fig. 2, the export list includes a name of a target file, an export manner, an export state, an IP address of a server where the target data is located, an accumulated number of operations, an accumulated export data amount, a creation time, an update time, and an operation bar, where the export manner includes a periodic export and an offline export, the periodic export may be to export incremental data of the target file in a preset period, and the offline export may be to stop exporting current data of the target file; when the export task of the target file is newly established in the data export list and the data export is not started, the export state of the target file is displayed as initialization, and the cumulative operation times and the cumulative export data amount are both 0.
S103, sending the data export request to a server, wherein the server is pointed by the IP address, and the server is used for responding the data export request to export target data with the file name as the target file name.
The data export request comprises the IP address of the server, the client can address the corresponding server through the IP address, establish connection with the server and send the data export request to the server, the server analyzes the data export request after receiving the data export request to obtain the name of the target file, searches data with the file name as the name of the target file from a local database of the server or a database connected with the server as target data and sends the target data to the client.
S104, receiving the target data sent by the server.
When the client receives target data sent by the server, namely the target data is stored in a pre-designated directory, considering that the export of the target data is pipeline processing, when the target data is exported, an export file of the target data is continuously written with the data, and at the moment, the export file cannot be operated if the data is not exported yet.
And S105, updating the data export list.
The export list comprises export information of at least one target file, and the update data export list is the export information of the target file updated according to the latest export condition of the target file.
In an alternative embodiment of the present invention, as shown in fig. 2, the target file t _ user _1 has not started to export data, so the export information of t _ user _1 is not updated; if the target file t _ user _2 is in a data receiving state, updating the export state of the t _ user _2 to be in operation, and not updating other export information; if the target file t _ user _3 finishes data export and is in a state of waiting for next data export, updating the export state of the t _ user _3 into a waiting operation state, wherein the accumulated operation times are increased by 1 time compared with the last update, and the accumulated export data amount is increased by the incremental data compared with the last update; and if the target file t _ user _4 finishes the current data export and is in a state of stopping data export, updating the export state of the t _ user _4 to be stopped, increasing the accumulative running times by 1 time compared with the last update, and increasing the data quantity of incremental data compared with the last update by the accumulative export data quantity.
Of course, the above-mentioned manner for updating the data export list is only an example, and besides the above-mentioned manner for updating the data export list, a person skilled in the art may also adopt other manners for updating the data export list according to actual needs, for example, when the export manner of the target file is offline export and no data is exported this time, the export information of the target file is not updated, and the like, which is not limited in this embodiment of the present invention.
In another alternative embodiment, the data export list includes the export manners of the target data, and a switching control for switching the export manner of each target data, and when a second operation acting on the switching control is received, the displayed first switching control may be displayed as the second switching control in the data export list, and the export manner of the target data may be updated from the first export manner to the second export manner in response to the second operation; when the first switching control is switched to the periodically derived control, the second switching control is switched to the offline derived control, and when the first switching control is switched to the offline derived control, the second switching control is switched to the periodically derived control.
As shown in fig. 2, the export mode of the target file t _ user _1 is periodic export, the export mode switching control corresponding to the operation bar is a transfer offline export control, and if an operation for transferring to the offline export control is received, the export mode of t _ user _1 may be switched to offline export, and the offline export control is changed and displayed to be a transfer periodic export control; correspondingly, the export mode of the target file t _ user _2 is offline export, the export mode switching control corresponding to the operation bar is a conversion period export control, if an operation acting on the conversion period export control is received, the export mode of the t _ user _2 can be switched to period export, and the period export control is changed and displayed to be converted to the offline export control.
The embodiment of the invention is provided with the control for switching the export mode of the target file, when the export mode is set wrongly, the target data is increased or the plan of exporting the target file is changed, the incremental export of the data can be controlled by switching the export mode without stopping the data export system to reconfigure and upload data export information, the export of other target data is not influenced, the batch information of the target data of the switched export mode can be linked, the data management by a user is more convenient, on the other hand, the export mode switching is quick and simple, and the data export efficiency of the user is improved.
In yet another alternative embodiment of the present invention, after updating the data export list, the client may receive a third operation acting on the display control, and in response to the third operation, load export details of the target data, where the export details may include a start time and an end time of each batch of export target data recorded in the export log and an amount of data exported. As shown in fig. 2, the display control may be a cumulative operation time control or a detail control, and the display details page after clicking displays details of each batch of the current target file as shown in fig. 3, including an export start time, an export end time, and an export data amount of each batch of data.
According to the embodiment of the invention, the control for inquiring the export details is arranged, so that a user can quickly and intuitively know the export time and data volume information of each batch of data on the data export management page, the data do not need to be inquired and obtained from the export log, the use is convenient and quick, and the efficiency of obtaining the export information is improved.
The data export method is applied to a client, the client is configured with a data export management page, when receiving data export operation acting on the data export management page, the client generates a data export request comprising an IP address and a target file name of a server, loads a data export list on the data export management page, after sending the data export request to the server pointed by the IP address, the server responds to the data export request and then exports target data with the file name of the target file name, then sends the target data to the client, and the client updates the data export list after receiving the target data. The client side provides the data export management page, a user only needs to conduct export operation on the data management page, target data can be automatically exported, an exp command is not needed, the data management page is visualized in an export list form, the operation is simple, the user can know the data export state in real time, and the use experience of the user for exporting data is improved.
Example two
Fig. 4 is a block diagram of a data export apparatus according to a second embodiment of the present invention, and as shown in fig. 4, the data export apparatus according to the second embodiment of the present invention may specifically include the following modules:
a data export request generation module 401, configured to generate a data export request when receiving a data export operation acting on a data export management page, where the data export request includes an IP address of a server and a target file name;
a data export list loading module 402, configured to respond to the data export operation, load a data export list on the data export management page;
a data export request sending module 403, configured to send the data export request to a server, where the server is a server pointed by the IP address, and the server is configured to export, in response to the data export request, target data whose file name is the target file name;
a target data receiving module 404, configured to receive target data sent by the server;
a data export list update module 405 for updating the data export list.
Optionally, the data deriving device further comprises:
and the data export management page display module is used for displaying the data export management page, and the data export management page comprises an uploading control which is used for uploading the data export information table.
Optionally, the data export request generating module 401 further includes:
the device comprises an export information acquisition unit, a data export information processing unit and a data export information processing unit, wherein the export information acquisition unit is used for acquiring the IP address and the target file name of a server in a data export information table when receiving a first operation acting on an upload control;
and the data export request generating unit is used for generating a data export request containing the IP address and the target file name.
Optionally, the data export information table further includes an export manner of the target data, and the data export list loading module 402 further includes:
and the export information loading unit is used for responding to the data export operation and loading the export information of each target data on the data export management page, wherein the export information comprises at least one of the name of the target file, the export mode, the export state, the IP address of the server where the target data is located and the size of the exported target data.
Optionally, the data export list includes an export state of the target data, and the data export list update module 405 includes:
a lead-out progress acquiring unit for acquiring a lead-out progress of the target data;
and the export state updating unit is used for updating the export state of the target data in the data export list based on the export progress.
Optionally, the data export list includes an export manner of the target data, and a switching control for switching an export manner of each target data, and the data export apparatus further includes:
the switching control module is used for receiving a second operation acting on the switching control;
the data export list update module 405 includes:
the export mode updating unit is used for responding to the second operation, displaying the displayed first switching control as a second switching control in the data export list, and updating the export mode of the target data from the first export mode to a second export mode;
when the first switching control is switched to the periodically derived control, the second switching control is switched to the offline derived control, and when the first switching control is switched to the offline derived control, the second switching control is switched to the periodically derived control.
Optionally, the data export list includes a display control for loading export details of each target data, and the data export apparatus further includes:
the third operation receiving module is used for receiving a third operation acting on the display control;
an export details loading module to load export details of the target data in response to the third operation
The data export device provided by the embodiment of the invention can execute the data export method provided by the first embodiment of the invention, and has the functional modules and the beneficial effects corresponding to the execution method.
EXAMPLE III
Fig. 5 is a schematic structural diagram of a computer device according to a third embodiment of the present invention. FIG. 5 illustrates a block diagram of an exemplary computer device 12 suitable for use in implementing embodiments of the present invention. The computer device 12 shown in FIG. 5 is only an example and should not bring any limitations to the functionality or scope of use of embodiments of the present invention.
As shown in FIG. 5, computer device 12 is in the form of a general purpose computing device. The components of computer device 12 may include, but are not limited to: one or more processors or processing units 16, a system memory 28, and a bus 18 that couples various system components including the system memory 28 and the processing unit 16.
Bus 18 represents one or more of any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of a variety of bus architectures. By way of example, such architectures include, but are not limited to, Industry Standard Architecture (ISA) bus, micro-channel architecture (MAC) bus, enhanced ISA bus, Video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnect (PCI) bus.
Computer device 12 typically includes a variety of computer system readable media. Such media may be any available media that is accessible by computer device 12 and includes both volatile and nonvolatile media, removable and non-removable media.
The system memory 28 may include computer system readable media in the form of volatile memory, such as Random Access Memory (RAM)30 and/or cache memory 32. Computer device 12 may further include other removable/non-removable, volatile/nonvolatile computer system storage media. By way of example only, storage system 34 may be used to read from and write to non-removable, nonvolatile magnetic media (not shown in FIG. 5, and commonly referred to as a "hard drive"). Although not shown in FIG. 5, a magnetic disk drive for reading from and writing to a removable, nonvolatile magnetic disk (e.g., a "floppy disk") and an optical disk drive for reading from or writing to a removable, nonvolatile optical disk (e.g., a CD-ROM, DVD-ROM, or other optical media) may be provided. In these cases, each drive may be connected to bus 18 by one or more data media interfaces. Memory 28 may include at least one program product having a set (e.g., at least one) of program modules that are configured to carry out the functions of embodiments of the invention.
A program/utility 40 having a set (at least one) of program modules 42 may be stored, for example, in memory 28, such program modules 42 including, but not limited to, an operating system, one or more application programs, other program modules, and program data, each of which examples or some combination thereof may comprise an implementation of a network environment. Program modules 42 generally carry out the functions and/or methodologies of the described embodiments of the invention.
Computer device 12 may also communicate with one or more external devices 14 (e.g., keyboard, pointing device, display 24, etc.), with one or more devices that enable a user to interact with computer device 12, and/or with any devices (e.g., network card, modem, etc.) that enable computer device 12 to communicate with one or more other computing devices. Such communication may be through an input/output (I/O) interface 22. Also, computer device 12 may communicate with one or more networks (e.g., a Local Area Network (LAN), a Wide Area Network (WAN), and/or a public network such as the Internet) via network adapter 20. As shown, network adapter 20 communicates with the other modules of computer device 12 via bus 18. It should be understood that although not shown in the figures, other hardware and/or software modules may be used in conjunction with computer device 12, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems, among others.
The processing unit 16 executes various functional applications and data processing, such as implementing the data derivation methods provided by embodiments of the present invention, by executing programs stored in the system memory 28.
Example four
A fourth embodiment of the present invention further provides a computer-readable storage medium, where a computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the computer program implements each process of the data exporting method, and can achieve the same technical effect, and in order to avoid repetition, details are not repeated here.
A computer readable storage medium may include, for example, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, 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.
It is to be noted that the foregoing is only illustrative of the preferred embodiments of the present invention and the technical principles employed. It will be understood by those skilled in the art that the present invention is not limited to the particular embodiments described herein, but is capable of various obvious changes, rearrangements and substitutions as will now become apparent to those skilled in the art without departing from the scope of the invention. Therefore, although the present invention has been described in greater detail by the above embodiments, the present invention is not limited to the above embodiments, and may include other equivalent embodiments without departing from the spirit of the present invention, and the scope of the present invention is determined by the scope of the appended claims.