jackrabbit-oak-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Amit Jain (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (OAK-4933) Create a data store implementation that integrates with Microsoft Azure Blob Storage
Date Tue, 28 Mar 2017 06:52:41 GMT

    [ https://issues.apache.org/jira/browse/OAK-4933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15944651#comment-15944651
] 

Amit Jain commented on OAK-4933:
--------------------------------

Sorry for the confusion. No, the module *does* depend only on API available since 1.6. 
My point was about which version of Oak the module gets released with - assumption in my earlier
comment was 1.7, but it should be 1.6, so, any related changes in these other modules should
be backported to 1.6 also (whichever make sense). 
And for using the bundle with the current trunk we ensure that there are no backwards incompatible
change which should already be the case. 

> Create a data store implementation that integrates with Microsoft Azure Blob Storage
> ------------------------------------------------------------------------------------
>
>                 Key: OAK-4933
>                 URL: https://issues.apache.org/jira/browse/OAK-4933
>             Project: Jackrabbit Oak
>          Issue Type: Epic
>          Components: blob, core
>            Reporter: Matt Ryan
>            Assignee: Amit Jain
>             Fix For: 1.7.0, 1.8
>
>         Attachments: full-patch-1.6.patch, OAK-4933-v5.patch
>
>
> This epic proposes the creation of a new type of Oak data store, AzureDataStore, that
offers an integration between Oak and Microsoft Azure Blob Storage.  AzureDataStore would
be very similar in purpose and functionality to S3DataStore, with a different backend that
uses Azure Blob Storage instead of S3.
> Some initial exploration into this concept can be seen in my github here:  https://github.com/mattvryan/jackrabbit-oak/tree/azure-blob-store
> More info about Azure Blob Storage:
> * [Java SDK|https://azure.microsoft.com/en-us/documentation/articles/storage-java-how-to-use-blob-storage/]
> * [Javadoc|http://azure.github.io/azure-storage-java/]
> * [Source|https://github.com/azure/azure-storage-java] (GitHub) - Microsoft's Azure Storage
Java SDK is open source and Apache licensed
> * [Package info|https://mvnrepository.com/artifact/com.microsoft.azure/azure-storage]
on mvnrepository.com
> As I see it, the following work would be required:
> * Create an AzureDataStore class that extends CachingDataStore
> * Create a new backend for Azure Blob Storage
> * Comprehensive unit testing of the new data store and backend classes
> * Create test "mocks" for the necessary Azure Storage classes to facilitate unit testing
(they are all final classes and cannot be mocked directly)
> * Create SharedAzureDataStore class
> * Create AzureDataStoreService class
> * Implement similar JMX metrics as exist for S3DataStore
> * Combine and refactor existing Oak code with newly added code to make best reuse of
existing code, etc.
> * Integration testing with system configured with AzureDataStore, comparison w/ S3DataStore
in terms of performance and correctness
> * Modify Azure Storage SDK code to make it into a valid OSGi bundle, and submit these
changes back to that project (currently it is not an OSGi bundle and therefore currently has
to be embedded)
> List isn't purported to be comprehensive of course.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message