Uploaded image for project: 'Jackrabbit Oak'
  1. Jackrabbit Oak
  2. OAK-4933

Create a data store implementation that integrates with Microsoft Azure Blob Storage



    • Epic
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.7.0, 1.6.2, 1.8.0
    • blob, core
    • None
    • AzureDataStore - Oak Data Store backed by Azure Blob Storage


      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:

      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.


        1. full-patch-1.6.patch
          133 kB
          Raul Hudea
        2. OAK-4933-v5.patch
          133 kB
          Raul Hudea

        Issue Links



              amitjain Amit Jain
              mattvryan Matt Ryan
              0 Vote for this issue
              7 Start watching this issue