NAME
Data::AnyXfer::Elastic::Import::File::MultiPart - An object representing a collection of data spanning multiple entries in storage
SYNOPSIS
# create a multi-part entry...
my $file =
Data::AnyXfer::Elastic::Import::File::MultiPart->new(
name => 'My-Data',
storage => STORAGE,
part_size => 2);
# now use it exactly the same as a normal HH::C::ES::Import::File
# object...
DESCRIPTION
This is a low-level module representing a Data::AnyXfer::Elastic
collection of data, spanning multiple storage entries.
The interface allows the storage and interaction with the data collection.
The underlying file implementation is provided by: Data::AnyXfer::Elastic::Import::File::Simple
This module implements: Data::AnyXfer::Elastic::Import::File
ATTRIBUTES
- part_size
-
Optional. Determines the number of data elements to store within a single storage entry.
Defaults to:
1000
This only takes effect between seperate calls to "add" in Data::AnyXfer::Elastic::Import::File.
For example, with a
part_size
of 2...$file->add(1..100); $file->add(1) $file->add(2); $file->add('bob', 'pav');
Would be implemented across three underlying storage entries. Part 1, containing 100 elements (the list of numbers 1 through 100), Part 2, containing 2 elements (the numbers '1' and '2'), and Part 3, containing 2 elements (the strings 'bob', and 'pav')
DATA INTERFACE
Please see Data::AnyXfer::Elastic::Import::File::Simple and Data::AnyXfer::Elastic::Import::File
ADDITIONAL METHODS
list_part_names
my @names = $file->list_part_names;
# e.g. returns 'name_00', 'name_01', 'name_02'
Lists the underlying storage entry names this multi-part file is implemented on top of.
Takes no arguments. May return an empty list on as-yet unused / empty instances of this class.
COPYRIGHT
This software is copyright (c) 2019, Anthony Lucas.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.