@InterfaceAudience.Public @InterfaceStability.Stable public class FileSplit extends InputSplit implements Writable
InputFormat.getSplits(JobContext)
and passed to
InputFormat.createRecordReader(InputSplit,TaskAttemptContext)
.Constructor and Description |
---|
FileSplit() |
FileSplit(Path file,
long start,
long length,
String[] hosts)
Constructs a split with host information
|
FileSplit(Path file,
long start,
long length,
String[] hosts,
String[] inMemoryHosts)
Constructs a split with host and cached-blocks information
|
Modifier and Type | Method and Description |
---|---|
long |
getLength()
The number of bytes in the file to process.
|
SplitLocationInfo[] |
getLocationInfo()
Gets info about which nodes the input split is stored on and how it is
stored at each location.
|
String[] |
getLocations()
Get the list of nodes by name where the data for the split would be local.
|
Path |
getPath()
The file containing this split's data.
|
long |
getStart()
The position of the first byte in the file to process.
|
void |
readFields(DataInput in)
Deserialize the fields of this object from
in . |
String |
toString() |
void |
write(DataOutput out)
Serialize the fields of this object to
out . |
public FileSplit()
public FileSplit(Path file, long start, long length, String[] hosts)
file
- the file namestart
- the position of the first byte in the file to processlength
- the number of bytes in the file to processhosts
- the list of hosts containing the block, possibly nullpublic FileSplit(Path file, long start, long length, String[] hosts, String[] inMemoryHosts)
file
- the file namestart
- the position of the first byte in the file to processlength
- the number of bytes in the file to processhosts
- the list of hosts containing the blockinMemoryHosts
- the list of hosts containing the block in memorypublic Path getPath()
public long getStart()
public long getLength()
getLength
in class InputSplit
public void write(DataOutput out) throws IOException
Writable
out
.write
in interface Writable
out
- DataOuput
to serialize this object into.IOException
- any other problem for write.public void readFields(DataInput in) throws IOException
Writable
in
.
For efficiency, implementations should attempt to re-use storage in the existing object where possible.
readFields
in interface Writable
in
- DataInput
to deseriablize this object from.IOException
- any other problem for readFields.public String[] getLocations() throws IOException
InputSplit
getLocations
in class InputSplit
IOException
@InterfaceStability.Evolving public SplitLocationInfo[] getLocationInfo() throws IOException
InputSplit
getLocationInfo
in class InputSplit
SplitLocationInfo
s describing how the split
data is stored at each location. A null value indicates that all the
locations have the data stored on disk.IOException
Copyright © 2023 Apache Software Foundation. All rights reserved.