GitHub user kl0u opened a pull request:
https://github.com/apache/flink/pull/6281
[FLINK-9750] Add new StreamingFileSink with ResumableWriter.
## What is the purpose of the change
This PR is the first step towards introducing a new Streaming Filesystem
sink that works on top of Flink's filesystem abstraction and provides support
for both row and block-based formats (like ORC/Parquet).
The current version only supports the LocalFileSystem.
## Brief change log
The first commit introduces the new `ResumableWriter` abstraction and an
implementation for the `LocalFileSystem`, while the second introduces the new
`StreamingFileSink`.
## Verifying this change
This changes add tests in the `LocalStreamingFileSinkTest` and the
`BucketStateSerializerTest`.
## Does this pull request potentially affect one of the following parts:
- Dependencies (does it add or upgrade a dependency): (yes / **no**)
- The public API, i.e., is any changed class annotated with
`@Public(Evolving)`: (**yes** / no)
- The serializers: (yes / **no** / don't know)
- The runtime per-record code paths (performance sensitive): (yes /
**no** / don't know)
- Anything that affects deployment or recovery: JobManager (and its
components), Checkpointing, Yarn/Mesos, ZooKeeper: (yes / **no** / don't know)
- The S3 file system connector: (yes / **no** / don't know)
## Documentation
- Does this pull request introduce a new feature? yes
- If yes, how is the feature documented? not documented yet
**NOTE TO REVIEWER**: Still logging is missing.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/kl0u/flink bucketing-local-inv
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/flink/pull/6281.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #6281
----
commit 64cdd7b57f6f71db3fa8fe90d9eb37e784b9ae56
Author: Stephan Ewen <sewen@...>
Date: 2018-06-29T17:27:58Z
[hotfix] [core] Remove unused class AbstractMultiFSDataInputStream
commit 2a7ed070dd7b57a58a7588b7ce03c4032a3283fc
Author: Stephan Ewen <sewen@...>
Date: 2018-06-29T17:15:54Z
[FLINK-9751][filesystem] Add PersistentResumableWriter interface.
commit da64fedced17cef7d53448dac360a26ae9d32204
Author: kkloudas <kkloudas@...>
Date: 2018-07-06T14:38:08Z
[FLINK-9750] Add new StreamingFileSink on top of the ResumableWriter.
This commit introduces the new sink and tests it on the LocalFileSystem.
----
---