US 12,072,913 B1
Unhandled data protection for programmatic input/output routing to datasets with user-defined partitions
Alexander D. James, Sammamish, WA (US); Vinayak Bhakta, San Jose, CA (US); Venkatasubramanian Jayaraman, Issaquah, WA (US); Ganesh Jothikumar, Los Altos, CA (US); Andrew John Peters, Sammamish, WA (US); and Amy Sutedja, Seattle, WA (US)
Assigned to Splunk Inc.
Filed by Splunk Inc., San Francisco, CA (US)
Filed on Jan. 31, 2023, as Appl. No. 18/162,639.
Int. Cl. G06F 16/28 (2019.01); G06F 16/248 (2019.01)
CPC G06F 16/285 (2019.01) [G06F 16/248 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A computer-implemented method comprising:
obtaining, by a data intake and query system, specification of a partitioned dataset,
the specification identifying a set of user-defined partitions included in the partitioned dataset and, for each partition of the set of user-defined partitions, user-defined criteria for routing requests to write data objects to the partitioned dataset to a user-defined data storage location corresponding to the partition,
wherein the user-defined criteria for different partitions of the set of user-defined partitions are non-exclusive;
generating, by the data intake and query system, a definition of the partitioned dataset according to the specification, wherein generating the definition of partitioned dataset comprises including, in the definition of the partitioned dataset, a default partition to which a request to write an individual data object is routed when the individual data object fails to satisfy the user-defined criteria of any of the set of user-defined partitions identified in the specification;
obtaining, by the data intake and query system, a request to write one or more data objects to the partitioned dataset; and
writing, by the data intake and query system, the one or more data objects to the partitioned dataset, wherein writing the one or more data objects to the partitioned dataset comprises:
when a data object of the one or more data objects satisfies the user-defined criteria for an individual partition of the set of user-defined partitions, routing the request to write the one or more data objects to the user-defined data storage location corresponding to the individual partition within the specification; and
when the data object of the one or more data objects fails to satisfy the user-defined criteria for routing the request to write the one or more data objects to any of the user-defined data storage locations corresponding to individual partitions of the set of user-defined partitions, routing the request to write the one or more data objects to a data storage location corresponding to the default partition.