[ 
https://issues.apache.org/jira/browse/BEAM-5036?focusedWorklogId=145916&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-145916
 ]

ASF GitHub Bot logged work on BEAM-5036:
----------------------------------------

                Author: ASF GitHub Bot
            Created on: 20/Sep/18 03:09
            Start Date: 20/Sep/18 03:09
    Worklog Time Spent: 10m 
      Work Description: reuvenlax commented on issue #6289: [BEAM-5036] 
Optimize the FileBasedSink WriteOperation.moveToOutput()
URL: https://github.com/apache/beam/pull/6289#issuecomment-423025772
 
 
   The main point is that the usage by sinks needs to be idempotent on retry.
   Whether that's done by the FileSystem interface skipping existing files or
   by catching those exceptions and ignoring them (as long as we can well
   distinguish those exceptions) doesn't matter too much.
   
   On Wed, Sep 19, 2018 at 7:53 PM Chamikara Jayalath <[email protected]>
   wrote:
   
   > +1 for adding an OVERWRITE_EXISTING_FILES option to FileSystems interface
   > to make this explicit.
   >
   > I think FileSystems is the place where we should try to enforce an easy to
   > use API that is consistent across file-system implementations of Beam. For
   > example rename with OVERWRITE_EXISTING_FILES should work for renaming using
   > a loop as Luke mentioned.
   >
   > I expect FileSystem interface to be flexible and to be somewhat file
   > system dependent. This will make the life easy for people who want to add
   > support for new file systems.
   >
   > Seems like Java File API allows similar flexibility across platforms. For
   > example,
   >
   > 
https://docs.oracle.com/javase/7/docs/api/java/io/File.html#renameTo(java.io.File)
   > "Many aspects of the behavior of this method are inherently
   > platform-dependent"
   >
   > —
   > You are receiving this because you were mentioned.
   > Reply to this email directly, view it on GitHub
   > <https://github.com/apache/beam/pull/6289#issuecomment-423023221>, or mute
   > the thread
   > 
<https://github.com/notifications/unsubscribe-auth/AUGE1RiJAG0OqmtKkQVeYFpWsj3d1kaZks5ucwMbgaJpZM4WQHrB>
   > .
   >
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


Issue Time Tracking
-------------------

    Worklog Id:     (was: 145916)
    Time Spent: 2h 50m  (was: 2h 40m)

> Optimize FileBasedSink's WriteOperation.moveToOutput()
> ------------------------------------------------------
>
>                 Key: BEAM-5036
>                 URL: https://issues.apache.org/jira/browse/BEAM-5036
>             Project: Beam
>          Issue Type: Improvement
>          Components: io-java-files
>    Affects Versions: 2.5.0
>            Reporter: Jozef Vilcek
>            Assignee: Tim Robertson
>            Priority: Major
>          Time Spent: 2h 50m
>  Remaining Estimate: 0h
>
> moveToOutput() methods in FileBasedSink.WriteOperation implements move by 
> copy+delete. It would be better to use a rename() which can be much more 
> effective for some filesystems.
> Filesystem must support cross-directory rename. BEAM-4861 is related to this 
> for the case of HDFS filesystem.
> Feature was discussed here:
> http://mail-archives.apache.org/mod_mbox/beam-dev/201807.mbox/%3CCAF9t7_4Mp54pQ+vRrJrBh9Vx0=uaknupzd_qdh_qdm9vxll...@mail.gmail.com%3E



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to