Patent ID: 9483512
Filing Date: 2016-11-01
CPC Classification: G06F

Claim Text:
1. A non-transitory computer program product storing instructions that, when executed by at least one programmable processor, cause the at least one programmable processor to perform operations comprising: persisting a table of a columnar database to a plurality of virtual files provided by a persistence layer of the columnar database, the columnar database comprising a columnar data store and a physical data storage, the persistence layer being intermediate to the physical data storage and the columnar data store, each virtual file of the plurality of virtual files being stored in the physical data storage and comprising a database object for storing data records, some or all of the plurality of virtual files being available for transient caching in the persistence layer; processing, in the columnar database, operations using a virtual file of the plurality of virtual files, the operations comprising at least one of truncation, overwriting, and appending of data records in the virtual file; storing, as part of the processing, truncation records for the virtual file in virtual file metadata, each truncation record comprising a creating transaction identifier (TID) for a truncation operation associated with the truncation record, information identifying an oldest readable position, and information identifying a last previous truncation record to the truncation record; truncating the virtual file as part of a first transaction while second transaction is being executed at least partially in parallel with the first transaction such that the virtual file is available to the second transaction prior to the first transaction committing, the truncating comprising: