Giter VIP home page Giter VIP logo

blobsync's Introduction

BlobSync Nuget:

Rename the Dummy_App.config and add entries:

<appSettings>
    <add key="AzureAccountKey" value="Azure Account Key, please see the Azure Portal" />
    <add key="AzureAccountName" value="Azure Account Name" />
	<add key="SignatureSize" value="10000" />

	<add key="IsDev" value="1"/>    1 for Azure storage emulator, 0 for real Azure.
    <add key="ParallelFactor" value="4"/>

</appSettings>

The assembly will then be ready to use. 


=================================

BlobSyncCmd:

Quick use scenario.

Add an App.config to the BlobSyncCmd project and add the entries:

<appSettings>
    <add key="AzureAccountKey" value="Azure Account Key, please see the Azure Portal" />
    <add key="AzureAccountName" value="Azure Account Name" />
	<add key="SignatureSize" value="100000" />
</appSettings>

Compile the solution then you'll have an example executable called BlobSyncCmd.
As an example usage of uploading files then uploading deltas, find a suitably large file (say test.txt) and issue the command (from command prompt):

blobsynccmd.exe upload test.txt mycontainer myblob

This will upload the file into a container called mycontainer and the blob will be called myblob. All rather unexciting (so far)

Now, modify (or make a copy and modify) test.txt. 

Reissue the same command as before:

blobsynccmd.exe upload test.txt mycontainer myblob

This time around, it has detected which parts of the file need to be uploaded and which can be reused from the previous version.
The granularity of what needs to be uploaded is based off the "SignatureSize" in the app.config. In this case we're dealing with 100k chunks.
This means that chunks of 100k in size will be replaced. Replacing 100k of a 10M file is far better than having to upload the entire 10M again if the 
change was small.

Please see blog post http://kpfaulkner.wordpress.com/2014/01/04/optimising-azure-blob-updating-part-1/ for more details.


blobsync's People

Contributors

erkkov2lja avatar kpfaulkner avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.