IP Library › Granted Patent US 12,632,474
Granted Patent B2
US 12,632,474 · App. 19/022,884 · Granted May 19, 2026

Clustering key selection based on machine-learned key selection models for data processing service

Inventors: Terry Kim (Bellevue, WA); Lin Ma (Ann Arbor, MI); Rahul Shivu Mahadev (Santa Clara, CA); Rahul Potharaju (San Ramon, CA)
Assignee: Databricks, Inc.
G06F16/285G06F16/211G06F16/2246
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,632,474
App. No.
19/022,884
Granted
May 19, 2026
Kind
B2
Abstract

The disclosed configurations provide a method (and/or a computer-readable medium or system) for determining, from a table schema describing keys of a data table, one or more clustering keys that can be used to cluster data files of a data table. The method includes generating features for the data table, generating tokens from the features, generating a prediction for each token by applying to the token a machine-learned transformer model trained to predict a likelihood that the key associated with the token is a clustering key for the data table, determining clustering keys based on the predictions, and clustering data records of the data table into data files based on key-values for the clustering keys.

Claims (64)

1 . A computer-implemented method, comprising:

obtaining a data table clustered according to a set of clustering keys among one or more keys of the data table;

identifying a set of features for the data table, wherein for each key in the one or more keys of the data table, the set of features including at least a name label for the key;

generating a set of tokens from the set of features, wherein the set of tokens are numerical representations of features in the set of features, each token associated with a respective key in the one or more keys;

obtaining a set of labels for the one or more keys, wherein the set of labels includes a label for each key indicating whether the key is one of the set of clustering keys;

generating a set of estimated predictions for the one or more keys by applying parameters of a transformer model to at least information obtained from the set of tokens;

computing a loss function indicating a difference between the set of estimated predictions and the set of labels; and

updating the parameters of the transformer model by backpropagating one or more terms obtained from the loss function.

2 . The computer-implemented method of claim 1 , wherein generating the set of estimated predictions by applying the transformer model to at least the information obtained from the set of tokens comprises:

generating a set of estimated output embeddings for the set of tokens; and

generating the set of estimated predictions by applying inputting the set of estimated output embeddings to a classifier model to generate the set of estimated predictions.

3 . The computer-implemented method of claim 2 , wherein a token in the set of tokens is a first token in a respective set of tokens encoding the name label of the key associated with the token, and wherein an estimated prediction for the key associated with the token is generated by applying the classifier model to an estimated output embedding for the token.

4 . The computer-implemented method of claim 1 , wherein the transformer model is configured as a bi-directional encoding representation from transformers (BERT) model.

5 . The computer-implemented method of claim 1 , wherein for each key in the one or more keys of the data table, and the set of features further includes a data type associated with the key.

6 . The computer-implemented method of claim 1 , further comprising:

obtaining a table schema including at least one or more keys of a second data table;

generating a second set of features for the second data table including name labels and data types associated with the one or more keys of the second data table;

generating a set of predictions by applying the transformer model to information obtained from the second set of features for the second data table;

identifying one or more clustering keys for the second data table based on the set of predictions; and

clustering data records of the second data table into one or more data files based on key-values for the one or more clustering keys.

7 . The computer-implemented method of claim 1 , further comprising storing the parameters of the transformer model on a computer readable medium.

8 . A non-transitory computer-readable medium comprising stored instructions, the instructions when executed by at least one processor of one or more computing devices, cause the one or more computing devices to:

obtain a data table clustered according to a set of clustering keys among one or more keys of the data table;

identify a set of features for the data table, wherein for each key in the one or more keys of the data table, the set of features including at least a name label for the key;

generate a set of tokens from the set of features, wherein the set of tokens are numerical representations of features in the set of features, each token associated with a respective key in the one or more keys;

obtain a set of labels for the one or more keys, wherein the set of labels includes a label for each key indicating whether the key is one of the set of clustering keys;

generate a set of estimated predictions for the one or more keys by applying parameters of a transformer model to at least information obtained from the set of tokens;

compute a loss function indicating a difference between the set of estimated predictions and the set of labels; and

update the parameters of the transformer model by backpropagating one or more terms obtained from the loss function.

9 . The non-transitory computer-readable medium of claim 8 , wherein the instructions further cause the one or more computing devices to:

generate a set of estimated output embeddings for the set of tokens; and

generate the set of estimated predictions by applying inputting the set of estimated output embeddings to a classifier model to generate the set of estimated predictions.

10 . The non-transitory computer-readable medium of claim 9 , wherein a token in the set of tokens is a first token in a respective set of tokens encoding the name label of the key associated with the token, and wherein an estimated prediction for the key associated with the token is generated by applying the classifier model to an estimated output embedding for the token.

11 . The non-transitory computer-readable medium of claim 8 , wherein the transformer model is configured as a bi-directional encoding representation from transformers (BERT) model.

12 . The non-transitory computer-readable medium of claim 8 , wherein for each key in the one or more keys of the data table, and the set of features further includes a data type associated with the key.

13 . The non-transitory computer-readable medium of claim 8 , wherein the instructions further cause the one or more computing devices to:

obtain a table schema including at least one or more keys of a second data table;

generate a second set of features for the second data table including name labels and data types associated with the one or more keys of the second data table;

generate a set of predictions by applying the transformer model to information obtained from the second set of features for the second data table;

identify one or more clustering keys for the second data table based on the set of predictions; and

cluster data records of the second data table into one or more data files based on key-values for the one or more clustering keys.

14 . The non-transitory computer-readable medium of claim 8 , wherein the instructions further cause the one or more computing devices to store the parameters of the transformer model on a computer readable medium.

15 . A computer system, comprising:

one or more computing devices; and

a non-transitory computer-readable storage medium comprising instructions when executed by at least one processor of the one or more computing devices, cause the one or more computing devices to:

obtain a data table clustered according to a set of clustering keys among one or more keys of the data table;

identify a set of features for the data table, wherein for each key in the one or more keys of the data table, the set of features including at least a name label for the key;

generate a set of tokens from the set of features, wherein the set of tokens are numerical representations of features in the set of features, each token associated with a respective key in the one or more keys;

obtain a set of labels for the one or more keys, wherein the set of labels includes a label for each key indicating whether the key is one of the set of clustering keys;

generate a set of estimated predictions for the one or more keys by applying parameters of a transformer model to at least information obtained from the set of tokens;

compute a loss function indicating a difference between the set of estimated predictions and the set of labels; and

update the parameters of the transformer model by backpropagating one or more terms obtained from the loss function.

16 . The computer system of claim 15 , wherein the instructions further cause the one or more computing devices to:

generate a set of estimated output embeddings for the set of tokens; and

generate the set of estimated predictions by applying inputting the set of estimated output embeddings to a classifier model to generate the set of estimated predictions.

17 . The computer system of claim 16 , wherein a token in the set of tokens is a first token in a respective set of tokens encoding the name label of the key associated with the token, and wherein an estimated prediction for the key associated with the token is generated by applying the classifier model to an estimated output embedding for the token.

18 . The computer system of claim 15 , wherein the transformer model is configured as a bi-directional encoding representation from transformers (BERT) model.

19 . The computer system of claim 15 , wherein for each key in the one or more keys of the data table, and the set of features further includes a data type associated with the key.

20 . The computer system of claim 15 , wherein the instructions further cause the one or more computing devices to:

obtain a table schema including at least one or more keys of a second data table;

generate a second set of features for the second data table including name labels and data types associated with the one or more keys of the second data table;

generate a set of predictions by applying the transformer model to information obtained from the second set of features for the second data table;

identify one or more clustering keys for the second data table based on the set of predictions; and

cluster data records of the second data table into one or more data files based on key-values for the one or more clustering keys.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 16, 2025
From: KIM, TERRY; MA, LIN; MAHADEV, RAHUL SHIVU; POTHARAJU, RAHUL
To: DATABRICKS, INC.
Reel/Frame 069893/0428 →
Continuity (2)
Continuation 18501830 · Nov 3, 2023
Related Publication 20250156448A1 · May 15, 2025
References Cited (6)
US 9384571B1 · Covell · 2016 [cited by examiner]
US 11995215B2 · De Gaetano · 2024 [cited by examiner]
US 20090043797A1 · Dorie · 2009 [cited by examiner]
US 20150331936A1 · Alqadah · 2015 [cited by examiner]
US 20220245322A1 · Lundin · 2022 [cited by examiner]
US 20250315781A1 · Mesard · 2025 [cited by examiner]