Storage provider that write ntuple pages into a file.
The written file can be either in ROOT format or in RNTuple bare format.
Definition at line 57 of file RPageStorageFile.hxx.
|
| | RPageSinkFile (const RPageSinkFile &)=delete |
| |
| | RPageSinkFile (RPageSinkFile &&)=default |
| |
| | RPageSinkFile (std::string_view ntupleName, std::string_view path, const RNTupleWriteOptions &options) |
| |
| | RPageSinkFile (std::string_view ntupleName, TFile &file, const RNTupleWriteOptions &options) |
| |
| | ~RPageSinkFile () override |
| |
| RPageSinkFile & | operator= (const RPageSinkFile &)=delete |
| |
| RPageSinkFile & | operator= (RPageSinkFile &&)=default |
| |
| void | ReleasePage (RPage &page) final |
| | Every page store needs to be able to free pages it handed out.
|
| |
| RPage | ReservePage (ColumnHandle_t columnHandle, std::size_t nElements) final |
| | Get a new, empty page for the given column that can be filled with up to nElements.
|
| |
| | RPagePersistentSink (const RPagePersistentSink &)=delete |
| |
| | RPagePersistentSink (RPagePersistentSink &&)=default |
| |
| | RPagePersistentSink (std::string_view ntupleName, const RNTupleWriteOptions &options) |
| |
| | ~RPagePersistentSink () override |
| |
| ColumnHandle_t | AddColumn (DescriptorId_t fieldId, const RColumn &column) final |
| | Register a new column.
|
| |
| std::uint64_t | CommitCluster (NTupleSize_t nEntries) final |
| | Finalize the current cluster and create a new one for the following data.
|
| |
| void | CommitClusterGroup () final |
| | Write out the page locations (page list envelope) for all the committed clusters since the last call of CommitClusterGroup (or the beginning of writing).
|
| |
| void | CommitDataset () final |
| | Finalize the current cluster and the entrire data set.
|
| |
| void | CommitPage (ColumnHandle_t columnHandle, const RPage &page) final |
| | Write a page to the storage. The column must have been added before.
|
| |
| void | CommitSealedPage (DescriptorId_t physicalColumnId, const RPageStorage::RSealedPage &sealedPage) final |
| | Write a preprocessed page to storage. The column must have been added before.
|
| |
| void | CommitSealedPageV (std::span< RPageStorage::RSealedPageGroup > ranges) final |
| | Write a vector of preprocessed pages to storage. The corresponding columns must have been added before.
|
| |
| const RNTupleDescriptor & | GetDescriptor () const final |
| | Return the RNTupleDescriptor being constructed.
|
| |
| void | InitFromDescriptor (const RNTupleDescriptor &descriptor) |
| | Initialize sink based on an existing descriptor and fill into the descriptor builder.
|
| |
| RPagePersistentSink & | operator= (const RPagePersistentSink &)=delete |
| |
| RPagePersistentSink & | operator= (RPagePersistentSink &&)=default |
| |
| void | UpdateSchema (const RNTupleModelChangeset &changeset, NTupleSize_t firstEntry) final |
| | Incorporate incremental changes to the model into the ntuple descriptor.
|
| |
| | RPageSink (const RPageSink &)=delete |
| |
| | RPageSink (RPageSink &&)=default |
| |
| | RPageSink (std::string_view ntupleName, const RNTupleWriteOptions &options) |
| |
| | ~RPageSink () override |
| |
| void | DropColumn (ColumnHandle_t) final |
| | Unregisters a column.
|
| |
| virtual RSinkGuard | GetSinkGuard () |
| |
| EPageStorageType | GetType () final |
| | Whether the concrete implementation is a sink or a source.
|
| |
| const RNTupleWriteOptions & | GetWriteOptions () const |
| | Returns the sink's write options.
|
| |
| void | Init (RNTupleModel &model) |
| | Physically creates the storage container to hold the ntuple (e.g., a keys a TFile or an S3 bucket) Init() associates column handles to the columns referenced by the model.
|
| |
| bool | IsInitialized () const |
| |
| RPageSink & | operator= (const RPageSink &)=delete |
| |
| RPageSink & | operator= (RPageSink &&)=default |
| |
| | RPageStorage (const RPageStorage &other)=delete |
| |
| | RPageStorage (RPageStorage &&other)=default |
| |
| | RPageStorage (std::string_view name) |
| |
| virtual | ~RPageStorage () |
| |
| virtual Detail::RNTupleMetrics & | GetMetrics () |
| | Returns the default metrics object.
|
| |
| const std::string & | GetNTupleName () const |
| | Returns the NTuple name.
|
| |
| RPageStorage & | operator= (const RPageStorage &other)=delete |
| |
| RPageStorage & | operator= (RPageStorage &&other)=default |
| |
| void | SetTaskScheduler (RTaskScheduler *taskScheduler) |
| |
|
| RNTupleLocator | CommitClusterGroupImpl (unsigned char *serializedPageList, std::uint32_t length) final |
| | Returns the locator of the page list envelope of the given buffer that contains the serialized page list.
|
| |
| std::uint64_t | CommitClusterImpl () final |
| | Returns the number of bytes written to storage (excluding metadata)
|
| |
| void | CommitDatasetImpl (unsigned char *serializedFooter, std::uint32_t length) final |
| |
| RNTupleLocator | CommitPageImpl (ColumnHandle_t columnHandle, const RPage &page) final |
| |
| RNTupleLocator | CommitSealedPageImpl (DescriptorId_t physicalColumnId, const RPageStorage::RSealedPage &sealedPage) final |
| |
| std::vector< RNTupleLocator > | CommitSealedPageVImpl (std::span< RPageStorage::RSealedPageGroup > ranges) final |
| | Vector commit of preprocessed pages.
|
| |
| void | InitImpl (RNTupleModel &model) final |
| | Updates the descriptor and calls InitImpl() that handles the backend-specific details (file, DAOS, etc.)
|
| |
| void | InitImpl (unsigned char *serializedHeader, std::uint32_t length) final |
| |
| virtual void | InitImpl (unsigned char *serializedHeader, std::uint32_t length)=0 |
| |
| void | EnableDefaultMetrics (const std::string &prefix) |
| | Enables the default set of metrics provided by RPageSink.
|
| |
| RSealedPage | SealPage (const RPage &page, const RColumnElementBase &element, int compressionSetting) |
| | Helper for streaming a page.
|
| |
| void | WaitForAllTasks () |
| |
Vector commit of preprocessed pages.
The ranges array specifies a range of sealed pages to be committed for each column. The returned vector contains, in order, the RNTupleLocator for each page on each range in ranges, i.e. the first N entries refer to the N pages in ranges[0], followed by M entries that refer to the M pages in ranges[1], etc. The default is to call CommitSealedPageImpl for each page; derived classes may provide an optimized implementation though.
Reimplemented from ROOT::Experimental::Internal::RPagePersistentSink.
Definition at line 133 of file RPageStorageFile.cxx.