DETAILED ACTION
Double Patenting
The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969).
A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP § 2146 et seq. for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The filing of a terminal disclaimer by itself is not a complete reply to a nonstatutory double patenting (NSDP) rejection. A complete reply requires that the terminal disclaimer be accompanied by a reply requesting reconsideration of the prior Office action. Even where the NSDP rejection is provisional the reply must be complete. See MPEP § 804, subsection I.B.1. For a reply to a non-final Office action, see 37 CFR 1.111(a). For a reply to final Office action, see 37 CFR 1.113(c). A request for reconsideration while not provided for in 37 CFR 1.113(c) may be filed after final for consideration. See MPEP §§ 706.07(e) and 714.13.
The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The actual filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/apply/applying-online/eterminal-disclaimer.
Claims 1-33 are rejected on the ground of nonstatutory obviousness-type double patenting as being unpatentable over claims 1-24 of U.S. Patent No. 11,907,507 and Yueh et al. (“Yueh”, Pub. No. 2018/0181469).
Instant Application
Pat. No. US 11,907,517
Claim 1
A system comprising: one or more memories having computer-readable instructions stored thereon; and one or more processors that execute the computer-readable instructions to:
-present a first user interface to receive a user request to create a cloned database from a source database;
-in response to receiving the user request, present at least one second user interface to: receive a first user input of either a first option to create the cloned database from a point in time or a second option to create the cloned database from an available snapshot; and
-receive a second user input indicative of a location where the cloned database is to be created; and
-display, responsive to creating the cloned source database based on the first user input and the second user input, the cloned database on a third user interface.
Claims 2-33
Claim 1
A system comprising: a memory storing computer-readable instructions in a virtual computing system; and a processor executing the computer-readable instructions to:
-present a first user interface to receive a user request to create a cloned database from a source database;
-in response to receiving the user request: present a second user interface to receive: a first user selection of a date from a calendar; and a second user selection of either a first option to create the cloned database from a point in time or a second option to create the cloned database from an available snapshot;
in response to receiving the first user selection and the second user selection, present a third user interface to receive a third user selection of a target database virtual machine on which the cloned database is to be created; and
-in response to receiving the third user selection, present a fourth user interface to receive a fourth user selection indicative of additional information related to the cloned database; create the cloned database based on the first user selection, the second user selection, the third user selection, and the fourth user selection; and display a status of the cloned source database on a fifth user interface indicating a progress of creation of the cloned database.
Claim 2-24
Although the conflicting claims are not identical, claims 1-24 of Pat. No. 11,907,517 contains every element of claims 1-33 of the instant application except for some obvious variations of “receive selection of the first option, receive selection of a time indicating the point in time at which the cloned database is to be created responsive to receiving selection of the first option, retrieve the snapshot based on the time that is selected, retrieve a transactional log based on the time that is selected; and create the cloned database based on the snapshot and the transactional log”, and “wherein the location where the cloned database is to be created comprises a cloud location”. However, the obvious variations were taught by Yueh in view of the rejections below. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to include the teaching of Yueh in the invention of Pat. No. 11,907,517 because doing so would enhance efficient by providing interfaces with a user to receive information necessary for creating a virtual database.
Claims 1-4, 12-15 and 23-26 is rejected on the ground of nonstatutory obviousness-type double patenting as being unpatentable over claims 1-23 of U.S. Patent No. 11,320, 978.
Instant Application
Patent No. 11,320, 978
Claim 1
A system comprising: one or more memories having computer-readable instructions stored thereon; and one or more processors that execute the computer-readable instructions to:
-present a first user interface to receive a user request to create a cloned database from a source database;
-in response to receiving the user request, present at least one second user interface to: receive a first user input of either a first option to create the cloned database from a point in time or a second option to create the cloned database from an available snapshot; and
-receive a second user input indicative of a location where the cloned database is to be created; and
-display, responsive to creating the cloned source database based on the first user input and the second user input, the cloned database on a third user interface.
Claims 2-4, 12-15 and 23-26
Claim 1
A system comprising: a memory storing computer-readable instructions in a virtual computing system; and a processor executing the computer-readable instructions to:
-display a dashboard configured to receive user selections to create a cloned source database;
- receive a first selection of a database engine type for provisioning a source database;
receive a third selection of a Service Level Agreement (“SLA”) defining a duration for which the source database is to be protected after creation of the cloned source database; receive a fourth selection of a protection schedule comprising a first frequency of capturing snapshots and indicating which of the captured snapshots are to be used for protecting the source database during the duration;
-receive a second selection of a source database virtual machine on which the cloned source database is to be created;
-create the cloned source database on the source database virtual machine based on the first selection, the second selection, the third selection, and the fourth selection from the dashboard; and display a status of the cloned source database on the dashboard indicating a progress of creation of the cloned source database on the source database virtual machine.
Claims 1-23
Claims 1-4, 12-15 and 23-26 are rejected on the ground of nonstatutory obviousness-type double patenting as being unpatentable over claims 1-23 of U.S. Patent No. 11,320,978. Although the conflicting claims are not identical, they are not patentably distinct from each other because Claims 1-23 of U.S. Patent No. 11,320,978 contains every element of claims 1-4, 12-15 and 23-26 of the instant application and thus anticipated the claims of the instant application. Claims of the instant application therefore are not patently distinct from the earlier patent claims and as such are unpatentable over obvious-type double patenting. A later patent/application claim is not patentably distinct from an earlier claim if the later claim is anticipated by the earlier claim.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claim(s) 1, 5-12, 16-23, and 27-33 is/are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Yueh et al. (“Yueh”, Pub. No. 2018/0181469).
Per claim 1, Yueh teaches a system comprising: one or more memories having computer-readable instructions stored thereon; and one or more processors that execute the computer-readable instructions to:
present a first user interface to receive a user request to create a cloned database from a source database(fig. 4; [0029]…FIG. 1 illustrates one embodiment for how information may be copied from a production database to a database storage system and provisioned as virtual databases using a file sharing system. The production database systems 110 manage data for an organization. In some embodiments information may be copied from storage level snapshots of production databases or clones of production databases instead of a live production database. [0031]…To create a virtual database, the database storage system 100 creates files that represent the information corresponding to the production database system 110 at a given point in time. The database storage system 100 exposes 170 the corresponding files to a virtual database system 130 using a file sharing system 120. The virtual database system 130 runs a database server that can operate with the files exposed 170 by the database storage system 100. Hence, a virtual copy of the production database is created for the virtual database system 130 for a given point in time in a storage efficient manner. [0059]… FIG. 4 shows a user interface for allowing a user to select a source database for creating a virtual database, in accordance with an embodiment of the invention. The user interface shown in FIG. 4 displays production database systems 110 as data sources 420);
in response to receiving the user request, present at least one second user interface to: receive a first user input of either a first option to create the cloned database from a point in time or a second option to create the cloned database from an available snapshot (fig. 5, point in time 530 and/or snapshot 510; [0029]…FIG. 1 illustrates one embodiment for how information may be copied from a production database to a database storage system and provisioned as virtual databases using a file sharing system. The production database systems 110 manage data for an organization. In some embodiments information may be copied from storage level snapshots of production databases or clones of production databases instead of a live production database. [0031]…To create a virtual database, the database storage system 100 creates files that represent the information corresponding to the production database system 110 at a given point in time. The database storage system 100 exposes 170 the corresponding files to a virtual database system 130 using a file sharing system 120. The virtual database system 130 runs a database server that can operate with the files exposed 170 by the database storage system 100. Hence, a virtual copy of the production database is created for the virtual database system 130 for a given point in time in a storage efficient manner. [0059]… In response to the user selecting a particular source database 410, the user interface provides information describing the source database including its status, size, name etc. as well as information describing the various point-in-time copies 430 stored on the database storage system 100. The information describing each point-in-time copy 430 comprises the time at which the point-in-time copy was made, the source database from which the point-in-time copy was made, and information describing the source database as well as the production database system 110 hosting the source database. The source database can be a virtual database associated with the data source. [0063]… FIG. 5 shows a user interface for allowing a user to select a particular point in time associated with the source database for creating a virtual database based on the selected point in time, in accordance with an embodiment of the invention. The point-in-time copies of the source database can be taken based on a schedule, for example, once a day. However, the transaction log manager 220 copies transaction logs from the source database and stores them on the database storage system 100 thereby allowing a virtual database to be created based on a state of the source database at a time in between the time of copying of two point-in-time copies of the source database. For example, the user selects a point-in-time copy 510 based on a source database 540 for creation of a virtual database. The user can be presented with a user interface 520 for selecting a time point after the time of copying of the point-in-time copy 510 (and before the time of copying of the next point-in-time copy, if available)); and
receive a second user input indicative of a location where the cloned database is to be created (figs. 8A and 8B; [0054]…The user interface 295 allows the user to select a destination database system 130 for accessing the VDB being created. The database storage system 100 receives 320 the selection of the destination database system 130 from the user. In an embodiment, the user interface 295 presents a list of previously selected destination database systems 130 to the user. Alternatively, the user interface 295 allows the user to enter information identifying the destination database systems 130, for example, using a machine name or internet protocol (IP) address. [0056]…The user interface 295 presents 330 to the user, the file paths where the database storage system 100 expects to create the files associated with the VDB. The user can modify the file paths as well as the file names. For example, certain applications using the VDB may require a special file naming convention or the files to be stored at a particular file path. The database storage system 100 received 335 the modifications to the file path. In an embodiment, the user interface 295 allows the user to map patterns in the default file path to patterns associated with a desired file path. The mapping of the patterns can be stored by the database storage system 100 and applied to subsequent VDBs created by the user. [0057]… Based on the input received by the database storage system 100 in the steps described above the database storage system 100 creates the VDB. The created VDB is based on a snapshot and transaction logs associated with the point-in-time value selected by the user. The database blocks of the source database associated with updates made in the source database prior to the selected point-in-time are linked to a file structure created for the VDB. The file structure for the VDB is mounted on the destination database system 130, thereby allowing the destination database system to access the VDB.); and
display, responsive to creating the cloned source database based on the first user input and the second user input, the cloned database on a third user interface (figs 10-11; [0073]… FIG. 10 shows the user interface for specifying various policies associated with entities associated with the database storage system 100, in accordance with an embodiment of the invention. These include policies associated with source databases, groups of source databases, point-in-time copies of source databases, and virtual databases. [0075]… A user can specify policies 1020 describing a schedule for making point-in-time copies of source databases. The source databases can include productions databases and virtual databases. [0076]…FIG. 11 shows metrics that provide a quantitative measure of storage savings as a result of use of the database storage system 100, in accordance with an embodiment of the invention. Metrics indicating storage savings comprise ratios based on size of storage required for storing virtual database compared with size of storage required for storing the same database conventionally (when the virtualization mechanisms described herein are not utilized). [0081]… FIG. 11 illustrates how the VDB ratio 1120 and the time-flow ratio 1110 can be presented to a user in graphical form. As shown in FIG. 11, geometric shapes represent the numerator and the denominator values such that the size of the geometric shape corresponds to the value represented. As shown in FIG. 11, the geometric shapes are rectangular but could be other shapes, for example, circular or elliptical. Fig. 11, VDBs: 4VDBs).
Per claim 5, Yueh teaches the system of claim 1, wherein the one or more processors further execute computer-readable instructions to: receive selection of the first option, receive selection of a time indicating the point in time at which the cloned database is to be created responsive to receiving selection of the first option, retrieve the snapshot based on the time that is selected, retrieve a transactional log based on the time that is selected; and create the cloned database based on the snapshot and the transactional log (fig. 5 shows selectable PIT 530 and snapshot 510; [0029]…FIG. 1 illustrates one embodiment for how information may be copied from a production database to a database storage system and provisioned as virtual databases using a file sharing system. The production database systems 110 manage data for an organization. In some embodiments information may be copied from storage level snapshots of production databases or clones of production databases instead of a live production database. [0031]…To create a virtual database, the database storage system 100 creates files that represent the information corresponding to the production database system 110 at a given point in time. The database storage system 100 exposes 170 the corresponding files to a virtual database system 130 using a file sharing system 120. The virtual database system 130 runs a database server that can operate with the files exposed 170 by the database storage system 100. Hence, a virtual copy of the production database is created for the virtual database system 130 for a given point in time in a storage efficient manner. [0057]… Based on the input received by the database storage system 100 in the steps described above the database storage system 100 creates the VDB. The created VDB is based on a snapshot and transaction logs associated with the point-in-time value selected by the user. The database blocks of the source database associated with updates made in the source database prior to the selected point-in-time are linked to a file structure created for the VDB. The file structure for the VDB is mounted on the destination database system 130, thereby allowing the destination database system to access the VDB. [0063]… FIG. 5 shows a user interface for allowing a user to select a particular point in time associated with the source database for creating a virtual database based on the selected point in time, in accordance with an embodiment of the invention. The point-in-time copies of the source database can be taken based on a schedule, for example, once a day. However, the transaction log manager 220 copies transaction logs from the source database and stores them on the database storage system 100 thereby allowing a virtual database to be created based on a state of the source database at a time in between the time of copying of two point-in-time copies of the source database. For example, the user selects a point-in-time copy 510 based on a source database 540 for creation of a virtual database. The user can be presented with a user interface 520 for selecting a time point after the time of copying of the point-in-time copy 510 (and before the time of copying of the next point-in-time copy, if available).).
Per claim 6, Yueh teaches the system of claim 5, wherein the one or more processors further execute computer-readable instructions to: present a time scale to receive the selection of the time and receive the selection of the time from the time scale, wherein the time scale comprises a time slot that is available to create the cloned database to the point in time (Fig. 4, “input Accurate time” comprises date and time. fig. 5 shows selectable PIT 530 and snapshot 510; [0064]… The user can select a particular time point by using a slider 530 or by clicking or double clicking at a particular position in the geometric shape. In an embodiment the user can be presented with a list of various time points based on textual representation, for example, a drop down list and the user can make a particular selection. Another embodiment, allows the user to enter a time value using a data entry widget, for example, text box. The value entered by the user can be validated by the interface manager 230, for example, to ensure that the value is within a valid range.).
Per claim 7, Yueh teaches the system of claim 1, wherein the location where the cloned database is to be created comprises a cloud location ([0047]… the interface manager 230 provides web services that allow web applications to access information available in the database storage system 100. For example, the database storage system can be part of a cloud computing environment. A third party vendor can use web services to implement various workflow scenarios based on VDBs, for example the various workflow scenarios described herein. This allows automation of the workflow scenarios based on VDBs).
Per claim 8, Yueh teaches the system of claim 1, wherein the one or more processors further execute computer-readable instructions to receive via the at least one second user interface, in response to receiving the user request, a third user input of a name for the cloned database ([0069]… The user interface shown in FIG. 8(b) allows the user to specify a database name 820 or identifier value for uniquely identifying the virtual database being created. The user can specify scripts 830 comprising instructions to be executed before creating the virtual database and/or scripts 840 comprising instructions to be executed after creating the virtual database. The user can also specify file paths or names for the files used in the file structure created for the virtual database. For example, certain database applications require a specific type of file structure for the database. The required file structure can be obtained by the user by specifying the file paths and/or names of the files created for the virtual database.).
Per claim 9, Yeuh teaches the system of claim 1, wherein the one or more processors further execute computer-readable instructions to create a new database server to create the cloned database in response to receiving the second user input ([0027]… A virtual database may be created on a database server by creating the database files for the production database corresponding to the state of the production database at a previous point in time, as required for the database server. The files corresponding to the virtual database are made available to the database server using a file sharing mechanism, which links the virtual database to the appropriate database blocks stored on the storage system. The process of making the virtual database available to a database server is called “provisioning” the virtual database. In some embodiments, provisioning the virtual database includes managing the process of creating a running database server based on virtual database. Multiple VDBs can be provisioned based on the state of the production database at the same point in time. On the other hand, different VDBs can be based on different point in time state of the same production database or different production databases. [0031] To create a virtual database, the database storage system 100 creates files that represent the information corresponding to the production database system 110 at a given point in time. The database storage system 100 exposes 170 the corresponding files to a virtual database system 130 using a file sharing system 120. The virtual database system 130 runs a database server that can operate with the files exposed 170 by the database storage system 100. Hence, a virtual copy of the production database is created for the virtual database system 130 for a given point in time in a storage efficient manner. [0054]…The user interface 295 allows the user to select a destination database system 130 for accessing the VDB being created. The database storage system 100 receives 320 the selection of the destination database system 130 from the user. In an embodiment, the user interface 295 presents a list of previously selected destination database systems 130 to the user. Alternatively, the user interface 295 allows the user to enter information identifying the destination database systems 130, for example, using a machine name or internet protocol (IP) address. [0083]… FIG. 13 shows the user interface for allowing a user to add a host server to the database storage system, in accordance with an embodiment of the invention. This user interface can be used to add a host server that acts as a production database systems 110 as well as virtual database system 130.)
Per claim 10, Yueh teaches the system of claim 1, wherein the one or more processors further execute computer-readable instructions to create the cloned database on an existing database server in response to receiving the second user input ([0027]… A virtual database may be created on a database server by creating the database files for the production database corresponding to the state of the production database at a previous point in time, as required for the database server. The files corresponding to the virtual database are made available to the database server using a file sharing mechanism, which links the virtual database to the appropriate database blocks stored on the storage system. The process of making the virtual database available to a database server is called “provisioning” the virtual database. In some embodiments, provisioning the virtual database includes managing the process of creating a running database server based on virtual database. Multiple VDBs can be provisioned based on the state of the production database at the same point in time. On the other hand, different VDBs can be based on different point in time state of the same production database or different production databases. [0031] To create a virtual database, the database storage system 100 creates files that represent the information corresponding to the production database system 110 at a given point in time. The database storage system 100 exposes 170 the corresponding files to a virtual database system 130 using a file sharing system 120. The virtual database system 130 runs a database server that can operate with the files exposed 170 by the database storage system 100. Hence, a virtual copy of the production database is created for the virtual database system 130 for a given point in time in a storage efficient manner. [0054]…The user interface 295 allows the user to select a destination database system 130 for accessing the VDB being created. The database storage system 100 receives 320 the selection of the destination database system 130 from the user. In an embodiment, the user interface 295 presents a list of previously selected destination database systems 130 to the user. Alternatively, the user interface 295 allows the user to enter information identifying the destination database systems 130, for example, using a machine name or internet protocol (IP) address. [0083]… FIG. 13 shows the user interface for allowing a user to add a host server to the database storage system, in accordance with an embodiment of the invention. This user interface can be used to add a host server that acts as a production database systems 110 as well as virtual database system 130.).
Per claim 11, Yeuh teaches the system of claim 1, wherein the one or more processors further execute computer-readable instructions to display a progress of creation of the cloned database on the third user interface (fig. 11, “Key metrics”: VDBs- 4VDBs. [0076]…FIG. 11 shows metrics that provide a quantitative measure of storage savings as a result of use of the database storage system 100, in accordance with an embodiment of the invention. Metrics indicating storage savings comprise ratios based on size of storage required for storing virtual database compared with size of storage required for storing the same database conventionally (when the virtualization mechanisms described herein are not utilized). [0081]… FIG. 11 illustrates how the VDB ratio 1120 and the time-flow ratio 1110 can be presented to a user in graphical form. As shown in FIG. 11, geometric shapes represent the numerator and the denominator values such that the size of the geometric shape corresponds to the value represented. As shown in FIG. 11, the geometric shapes are rectangular but could be other shapes, for example, circular or elliptical.).
Claims 12 and 16-22 are rejected under the same rationale as claims 1 and 5-11 respectively.
Claims 23 and 27-33 are rejected under the same rationale as claims 1 and 5-11 respectively.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claim(s) 2-4, 13-15, and 24-26 is/are rejected under 35 U.S.C. 103 as being unpatentable over Yueh et al. (“Yueh”, Pub. No. 2018/0181469) and Terry, II et al. (“Terry”, Pat. No. US 10,261,867).
Per claim 2, Yueh fairly discloses the system of claim 1, wherein the one or more processors further execute computer-readable instructions to receive via the at least one second user interface, in response to receiving the user request, a third user input of a date selected from a series of dates (fig. 4 shows “input Accurate Time comprises date and time; [0048]… a schedule can specify the frequency and times during the day for the PIT and log retrieval actions or it could be an a periodic schedule specifying the calendar days when the same action should take place.)
However, Terry clearly teaches in response to receiving the user request, a third user input of a date selected from a series of dates (figs. 3 and 4; col. 3, lines 48-53…after the user selects a date in the presented calendar and selects an hour of the day with an associated slider handle, the drop-down menu may present six available point-in-time copies of the requested data object, one at each ten-minute increment within the selected hour. Col. 5, lines 11-19…the point-in-time indicators associated with the particular date and a given time duration both before and after the particular date are retrieved. For example, point-in-time indicators corresponding to backup copies of the given data object for five weeks before the particular date and for five weeks after the particular date may be sent from the backup server to the computing device 12 in set 50. The time duration both before and after the particular date may be configurable. Col. 5, line 54-col. 6, line 2; col. 9, lines 47-50; col. 11, lines 31-39… the GUI 400 includes the time selector 406 with drop-down menus. The drop-down menus may be used to select a day of the month, an hour of the day, a minute of the hour, and an AM/PM setting for morning or evening time of day for a restore operation for the selected data object. The number of options presented in each drop-down menu may be set by a configurable and respective limit. The available values presented in the drop-down menus may be based on the limit values, previous selections and available point-in-time indicators retrieved earlier. The available point-in-time indicators may have been retrieved from the backup server when the year or month was selected in the calendar 304. col. 13, lines 15-27… the GUI 400 includes the time selector 406 with drop-down menus. The drop-down menus may be used to select a day of the month, an hour of the day, a minute of the hour, and an AM/PM setting for morning or evening time of day for a restore operation for the selected data object. The number of options presented in each drop-down menu may be set by a configurable and respective limit. The available values presented in the drop-down menus may be based on the limit values, previous selections and available point-in-time indicators retrieved earlier. The available point-in-time indicators may have been retrieved from the backup server when the year or month was selected in the calendar 304. Col. 12, lines 19-28… the user may provide an indication of a level of granularity for presentation of backup files that are available for restoration. For example, the user may be able to select a level of granularity of time for presenting points in time corresponding to the backup files that are available for restoration.) Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to include the teaching of Terry in the invention of Yueh to include user interface for browsing a point in time because doing so would enhance efficient search by providing available point-in-time indicators.
Per claim 3, the modified Yueh teaches the system of claim 2, wherein at least some of the series of dates provide a visual representation indicating a level of protection available for the at least some of the series of dates (Yueh, [0049]…a policy specifies rules for executing the specific operation. For example, a policy may specify the operation to be executed based on a predetermined schedule. A policy may determine when to purge PIT copies stored in the database storage system 100 based on number of PIT copies that have been accumulated for a production database. A policy may measure storage availability to determine when to purge information. For example, if the amount of storage available reaches below a threshold level, old PIT copies of selected databases may be purged. The policy may also specify priority of production databases to be used before purging information, for example, low priority database information is purged before purging high-priority database information. In a particular workflow scenario, a policy may determine when to obtain new information from a production database and automatically update VDB information and provision the updated VDB based on the new information. [0070]…FIG. 10 shows the user interface for specifying various policies associated with entities associated with the database storage system 100, in accordance with an embodiment of the invention. These include policies associated with source databases, groups of source databases, point-in-time copies of source databases, and virtual databases. A policy can specify a schedule for repeating a given action at a specific time in future or at a periodic interval, for example, at a particular time every day, or on certain days of the week. For certain long running tasks, the policy may specify a time interval during which the action should be performed. If the action is not completed during the specified time interval, the action is resumed at a subsequent time period specified by the schedule. FIG. 10 shows an example schedule 1050 that performs or repeats an action during a specific time interval each day of the week. Terry, col. 11, lines 31-39… the GUI 400 includes the time selector 406 with drop-down menus. The drop-down menus may be used to select a day of the month, an hour of the day, a minute of the hour, and an AM/PM setting for morning or evening time of day for a restore operation for the selected data object. The number of options presented in each drop-down menu may be set by a configurable and respective limit. The available values presented in the drop-down menus may be based on the limit values, previous selections and available point-in-time indicators retrieved earlier. The available point-in-time indicators may have been retrieved from the backup server when the year or month was selected in the calendar 304. col. 13, lines 15-27… the GUI 400 includes the time selector 406 with drop-down menus. The drop-down menus may be used to select a day of the month, an hour of the day, a minute of the hour, and an AM/PM setting for morning or evening time of day for a restore operation for the selected data object. The number of options presented in each drop-down menu may be set by a configurable and respective limit. The available values presented in the drop-down menus may be based on the limit values, previous selections and available point-in-time indicators retrieved earlier. The available point-in-time indicators may have been retrieved from the backup server when the year or month was selected in the calendar 304. Col. 12, lines 19-28… the user may provide an indication of a level of granularity for presentation of backup files that are available for restoration (i.e. a visualization of level of protection available). For example, the user may be able to select a level of granularity of time for presenting points in time corresponding to the backup files that are available for restoration). Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to include the teaching of Terry in the invention of Yueh to include user interface for browsing a point in time because doing so would enhance efficient search by providing available point-in-time indicators.
Per claim 4, the modified Yueh teaches the system of claim 2, wherein the at least some dates of the series of dates comprises a first date that provides a first visual representation indicative of a continuous protection, a second date that provides a second visual representation indicative of protection based on a daily snapshot, a third date that provides a third visual representation indicative of protection based on a weekly snapshot, a fourth date that provides a fourth visual representation indicative of protection based on a monthly snapshot, a fifth date that provides a fifth visual representation indicative of protection based on a quarterly snapshot, and a sixth date that provides a sixth visual representation indicative of protection based on a manually captured snapshot (Yueh, [0049]…a policy specifies rules for executing the specific operation. For example, a policy may specify the operation to be executed based on a predetermined schedule. A policy may determine when to purge PIT copies stored in the database storage system 100 based on number of PIT copies that have been accumulated for a production database. A policy may measure storage availability to determine when to purge information. For example, if the amount of storage available reaches below a threshold level, old PIT copies of selected databases may be purged. The policy may also specify priority of production databases to be used before purging information, for example, low priority database information is purged before purging high-priority database information. In a particular workflow scenario, a policy may determine when to obtain new information from a production database and automatically update VDB information and provision the updated VDB based on the new information. [0070]…FIG. 10 shows the user interface for specifying various policies associated with entities associated with the database storage system 100, in accordance with an embodiment of the invention. These include policies associated with source databases, groups of source databases, point-in-time copies of source databases, and virtual databases. A policy can specify a schedule for repeating a given action at a specific time in future or at a periodic interval, for example, at a particular time every day, or on certain days of the week. For certain long running tasks, the policy may specify a time interval during which the action should be performed. If the action is not completed during the specified time interval, the action is resumed at a subsequent time period specified by the schedule. FIG. 10 shows an example schedule 1050 that performs or repeats an action during a specific time interval each day of the week. Terry, figs. 3 and 4; col. 3, lines 48-53…after the user selects a date in the presented calendar and selects an hour of the day with an associated slider handle, the drop-down menu may present six available point-in-time copies of the requested data object, one at each ten-minute increment within the selected hour. Col. 5, lines 11-19…the point-in-time indicators associated with the particular date and a given time duration both before and after the particular date are retrieved. For example, point-in-time indicators corresponding to backup copies of the given data object for five weeks before the particular date and for five weeks after the particular date may be sent from the backup server to the computing device 12 in set 50. The time duration both before and after the particular date may be configurable. Col. 5, line 54-col. 6, line 2; col. 9, lines 47-50; col. 11, lines 31-39… the GUI 400 includes the time selector 406 with drop-down menus. The drop-down menus may be used to select a day of the month, an hour of the day, a minute of the hour, and an AM/PM setting for morning or evening time of day for a restore operation for the selected data object. The number of options presented in each drop-down menu may be set by a configurable and respective limit. The available values presented in the drop-down menus may be based on the limit values, previous selections and available point-in-time indicators retrieved earlier. The available point-in-time indicators may have been retrieved from the backup server when the year or month was selected in the calendar 304. col. 13, lines 15-27… the GUI 400 includes the time selector 406 with drop-down menus. The drop-down menus may be used to select a day of the month, an hour of the day, a minute of the hour, and an AM/PM setting for morning or evening time of day for a restore operation for the selected data object. The number of options presented in each drop-down menu may be set by a configurable and respective limit. The available values presented in the drop-down menus may be based on the limit values, previous selections and available point-in-time indicators retrieved earlier. The available point-in-time indicators may have been retrieved from the backup server when the year or month was selected in the calendar 304. Col. 12, lines 19-28 and lines 51-59… the user may provide an indication of a level of granularity for presentation of backup files that are available for restoration (i.e. a visualization of available snapshots). For example, the user may be able to select a level of granularity of time for presenting points in time corresponding to the backup files that are available for restoration… When continuous backup operations and deduplication operations are used, a number of available backup copies for a given data object on a given day may reach 86,400. Rather than provide such a large number to the user of available point-in-time indicators corresponding to the 86,400 available backup copies of the given data object, the GUI 300 presents a manageable number of available point-in-time ndicators using the snap values or using a limit within drop-down menus (i.e. visualization of continuous protection) Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to include the teaching of Terry in the invention of Yueh to include user interface for browsing a point in time because doing so would enhance efficient search by providing available point-in-time indicators.
Claims 13-15 are rejected under the same rationale as claims 2-4 respectively.
Claims 24-26 are rejected under the same rationale as claims 2-4 respectively.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Wu et al. (Pub. No. US 2010/0198791) discloses a system, method, and computer program product are provided for allowing access to backup data resulting from performance of one or more recovery point backup operations and one or more full backup operations.
Tekade et al. (Pub. No. US 2016/0077925) discloses multi-threaded smart copy.
Inquiries
Any inquiry concerning this communication or earlier communications from the examiner should be directed to THANH T VU whose telephone number is (571)272-4073. The examiner can normally be reached M-F: 7AM - 3:30PM.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Fred Ehichioya can be reached at (571) 272-4034. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/THANH T VU/Primary Examiner, Art Unit 2179