[
https://issues.apache.org/jira/browse/HADOOP-9565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14612734#comment-14612734
]
Lei (Eddy) Xu commented on HADOOP-9565:
---------------------------------------
Hi, [~Thomas Demoor]. Thanks a lot for picking up this one.
I have a general question here. This 004 patch looks as a similar approach to
HADOOP-11525, in which it exposes storage semantics / characteris to the
caller. I got the impression that we were talking about some designs that hide
the file/object store implementation behind an interface (something like
{{write()}} vs {{atomicWrite()}}, or similar). Maybe I misunderstand this, but
do we have some consensus now about what the implementation should be?
[[email protected]] and [~Thomas Demoor], could you give us more color to the
design?
Right now, is the main caller change in {{FsShell}} and {{MapReduce}}. Do we
have a rough estimation about how many other code / projects can be benefits
from this? HBase ? Should they modify the code by detecting the semantics?
Last, addition to the consistency / atomic semantics, should we have some
performance-wise flags, e.g., {{SLOW_RENAME}}, {{SLOW_LIST_STATUS}} and etc.
For instance, if the keys are not range partitioned in an object store
(potentially in HDFS-7240), {{listStatus}} might be slow.
One minor improvement:
{code}
// lowest common denominator: AWS EAST provides no guarantees
122 public static final long SEMANTICS_DEFAULT = 0x0fL;
{code}
Could you calculate it by explicitly using {{StoreSemantics.Foo}}?
Thanks much. Looking forward to hear from you.
> Add a Blobstore interface to add to blobstore FileSystems
> ---------------------------------------------------------
>
> Key: HADOOP-9565
> URL: https://issues.apache.org/jira/browse/HADOOP-9565
> Project: Hadoop Common
> Issue Type: Improvement
> Components: fs, fs/s3, fs/swift
> Affects Versions: 2.6.0
> Reporter: Steve Loughran
> Assignee: Steve Loughran
> Labels: BB2015-05-TBR
> Attachments: HADOOP-9565-001.patch, HADOOP-9565-002.patch,
> HADOOP-9565-003.patch, HADOOP-9565-004.patch
>
>
> We can make the fact that some {{FileSystem}} implementations are really
> blobstores, with different atomicity and consistency guarantees, by adding a
> {{Blobstore}} interface to add to them.
> This could also be a place to add a {{Copy(Path,Path)}} method, assuming that
> all blobstores implement at server-side copy operation as a substitute for
> rename.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)