-
公开(公告)号:US11841967B2
公开(公告)日:2023-12-12
申请号:US17562387
申请日:2021-12-27
Applicant: salesforce.com, inc.
Inventor: Terry Chong , Jameison Bear Martin , Thomas Fanghaenel , Andrew Tucker , Nathaniel Wyatt , Raghavendran Hanumantharau , Assaf Ben Gur , William Charles Mortimore, Jr.
IPC: G06F21/62 , G06F16/2455 , G06F21/60 , H04L9/08
CPC classification number: G06F21/6218 , G06F16/24552 , G06F21/604 , H04L9/08
Abstract: System and methods of the disclosed subject matter provide segregating, at a memory storage coupled to a multitenant database system, first tenant data of a first tenant from at least second tenant data of a second tenant, based on a first tenant identifier. A first encryption key associated with the first tenant may be retrieved from a key cache memory based on the first tenant identifier, to encrypt one or more fragments of the first tenant data. The fragments of the first tenant data may be encrypted based on the retrieved encryption key. Non-encrypted header information may be generated for each of the encrypted fragments of the first tenant data, where the header information may have metadata including the first tenant identifier. The encrypted fragments of the first tenant data and the corresponding non-encrypted header information may be stored in the immutable storage.
-
公开(公告)号:US11797498B2
公开(公告)日:2023-10-24
申请号:US16950086
申请日:2020-11-17
Applicant: salesforce.com, inc.
Inventor: Jameison Bear Martin , Nathaniel Wyatt , Gary J. Baker , Thomas Fanghaenel , Terry Chong
CPC classification number: G06F16/214 , G06F16/2246 , G06F16/2282
Abstract: Systems and methods are provided for migrating a tenant of a database system from a source database instance to a destination database instance. The systems and methods include quiescing the tenant data of the tenant to be migrated from the source database instance to the destination database instance so that no new data is written to the storage of the database system associated with the tenant identifier at the source database instance, transmitting metadata of the tenant to be migrated from the source database instance to the destination database instance, and modifying, at the destination database instance, the metadata of the tenant so that the destination database instance has information to point to groupings of data in the storage for the destination database to access the tenant data.
-
公开(公告)号:US11775524B2
公开(公告)日:2023-10-03
申请号:US17653820
申请日:2022-03-07
Applicant: salesforce.com, inc.
Inventor: Thomas Fanghaenel , Jameison Bear Martin , Nathaniel Wyatt , Diego Ongaro , Terry Chong
IPC: G06F12/0891 , G06F16/172 , G06F16/22 , G06F16/2455 , G06F16/84
CPC classification number: G06F16/24552 , G06F12/0891 , G06F16/172 , G06F16/2246 , G06F16/86 , G06F2212/1024 , G06F2212/163 , G06F2212/608
Abstract: Techniques are disclosed relating to maintaining a cache usable to locate data stored in a data structure. A computer system, in various embodiments, maintains a data structure having a plurality of levels that store files for a database. The files may include one or more records that each have a key and corresponding data. The computer system may also maintain a cache for the database whose entries store, for a key, an indication of a location of a corresponding record in a file of the data structure. In some embodiments, the computer system receives a request to access a particular record stored in the data structure where the request specifies a key usable to locate the particular record. The computer system may retrieve, from the cache via the key, a particular indication of a location of the particular record and may use the particular indication to access the particular record.
-
公开(公告)号:US11663207B2
公开(公告)日:2023-05-30
申请号:US16139889
申请日:2018-09-24
Applicant: salesforce.com, inc.
Inventor: Thomas Fanghaenel
IPC: G06F16/00 , G06F16/2452 , G06F16/22 , G06F16/30
CPC classification number: G06F16/2452 , G06F16/221 , G06F16/2237 , G06F16/2291
Abstract: Systems, devices, and techniques are disclosed for translation of tenant identifiers. A record may be received. A value of a tenant identifier for the record may be determined from a key for the record or a scan descriptor. The value of the tenant identifier in the key for the record may be replaced with a new value for the tenant identifier. A bitmap stored in a record header of the record may be used to identify columns of the record that stored an encoded value of the tenant identifier. An encoded new value of the tenant identifier may be stored in columns identified by the bitmap stored in the record header that include an attribute indicating that tenant identifier translation is enabled.
-
公开(公告)号:US20230060733A1
公开(公告)日:2023-03-02
申请号:US17458591
申请日:2021-08-27
Applicant: salesforce.com, inc.
Inventor: Vaibhav Arora , Terry Chong , Thomas Fanghaenel
IPC: G06F16/23 , G06F16/2455 , G06F16/22 , G06F12/0815 , G06F12/02
Abstract: Techniques are disclosed relating to truncating a tenant's data from a table. A database node may maintain a multi-tenant table having records for tenants. Maintaining the table may include writing a record for a tenant into an in-memory cache and performing a flush operation to flush the record to a shared storage. The database node may write a truncate record into the in-memory cache that truncates a tenant from the table such that records of the tenant having a timestamp indicating a time before the truncate record cannot be accessed as part of a record query. While the truncate record remains in the in-memory cache, the database node may receive a request to perform a record query for a key of the tenant, make a determination on whether a record was committed for the key after the truncate record was committed, and return a response based on the determination.
-
公开(公告)号:US20220188317A1
公开(公告)日:2022-06-16
申请号:US17653820
申请日:2022-03-07
Applicant: salesforce.com, inc.
Inventor: Thomas Fanghaenel , Jameison Bear Martin , Nathaniel Wyatt , Diego Ongaro , Terry Chong
IPC: G06F16/2455 , G06F12/0891 , G06F16/22 , G06F16/84 , G06F16/172
Abstract: Techniques are disclosed relating to maintaining a cache usable to locate data stored in a data structure. A computer system, in various embodiments, maintains a data structure having a plurality of levels that store files for a database. The files may include one or more records that each have a key and corresponding data. The computer system may also maintain a cache for the database whose entries store, for a key, an indication of a location of a corresponding record in a file of the data structure. In some embodiments, the computer system receives a request to access a particular record stored in the data structure where the request specifies a key usable to locate the particular record. The computer system may retrieve, from the cache via the key, a particular indication of a location of the particular record and may use the particular indication to access the particular record.
-
公开(公告)号:US20220067004A1
公开(公告)日:2022-03-03
申请号:US17009605
申请日:2020-09-01
Applicant: salesforce.com, inc.
Inventor: Rohit Agrawal , Aditya Shetty , Kaushal Mittal , Terry Chong , Thomas Fanghaenel , Vaibhav Arora
Abstract: Techniques are disclosed relating to merge operations for multi-level data structures, such as log-structured merge-trees (LSM trees). A computer system may store, in a database, a plurality of files as part of an LSM tree and a plurality of database key structures. A given one of the plurality of database key structures may indicate, for a corresponding one of the plurality of files, a set of key ranges derived from database records that are included in the corresponding file. The computer system may determine, using ones of the plurality of database key structures, a key range overlap that is indicative of an extent of overlap of key ranges from a set of the plurality of files with respect to a particular key range. Based on the determined key range overlap, the computer system may assign a priority level to a merge operation that involves the set of files.
-
公开(公告)号:US11238174B2
公开(公告)日:2022-02-01
申请号:US16263751
申请日:2019-01-31
Applicant: salesforce.com, inc.
Inventor: Terry Chong , Jameison Bear Martin , Thomas Fanghaenel , Andrew Tucker , Nathaniel Wyatt , Raghavendran Hanumantharau , Assaf Ben-Gur , William Charles Mortimore, Jr.
IPC: G06F21/62 , G06F16/2455 , G06F21/60 , H04L9/08
Abstract: System and methods of the disclosed subject matter provide segregating, at a memory storage coupled to a multitenant database system, first tenant data of a first tenant from at least second tenant data of a second tenant, based on a first tenant identifier. A first encryption key associated with the first tenant may be retrieved from a key cache memory based on the first tenant identifier, to encrypt one or more fragments of the first tenant data. The fragments of the first tenant data may be encrypted based on the retrieved encryption key. Non-encrypted header information may be generated for each of the encrypted fragments of the first tenant data, where the header information may have metadata including the first tenant identifier. The encrypted fragments of the first tenant data and the corresponding non-encrypted header information may be stored in the immutable storage.
-
公开(公告)号:US11151110B2
公开(公告)日:2021-10-19
申请号:US16139594
申请日:2018-09-24
Applicant: salesforce.com, inc.
Inventor: Thomas Fanghaenel , Stephane Geneix
IPC: G06F16/22 , G06F16/27 , G06F16/23 , G06F16/2452
Abstract: Systems, devices, and techniques are disclosed for identification of records for post-cloning tenant identifier translation. Records may be received from a database system executing a database executor at a computing device executing a database application. The database application may identify, from among the records, records that include a record header that includes a bit indicating that an encoded value of a tenant identifier is stored in the record in a column of the record that is not a tenant identifier column. The database application may generate an index based on the records identified by the database application. The database application may access the records using the index and replace the encoded value of the tenant identifier stored in columns of the records with an encoded new value of a tenant identifier.
-
公开(公告)号:US11061889B2
公开(公告)日:2021-07-13
申请号:US16139166
申请日:2018-09-24
Applicant: salesforce.com, inc.
Inventor: Terry Chong , Jameison Bear Martin , Thomas Fanghaenel
IPC: G06F16/23 , G06F3/06 , G06F16/245
Abstract: Systems and methods are provided for receiving, at a database system having a memory and at least one persistent storage device to store records, a query for a least one record, where the query uses a first version of a manifest, and where each version of the records that are stored in the at least one persistent storage device are represented by metadata that is part of the first version of the manifest. A first operation may be performed based on a scan operation. The database system may determine whether a purge of the memory has occurred after the first operation. When it is determined that the memory purge has occurred, the scan operation may be restarted from a last position of the scan operation prior to the memory purge using a second version of the manifest.
-
-
-
-
-
-
-
-
-