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.