Archive for January, 2013

Following the structure VS unstructured data, introducing now what is called semi structured data. The semi structured data is like the structured data in few things, from entities, queries and some operations. However it doesn’t allow the relation between its tables like the structured do. Certainly like the structure data has its own primary key and foreign key, the unstructured data has its own identifiers.

When and why to use the unstructured data? Well the unstructured data gives you more flexibility to work with more scalability than the structured data. For more information about the Microsoft Windows Azure for semi structured data check the table storage and for Amazon please check the amazon S3.

Advertisements

Following a previous blog post on how to develop on Windows Azure, Microsoft Platform of Cloud Computing, I have wrote a document that I hope it might help you with your development with all the predefined functions of the blob storage. This type of storage is most likely used for storing unstructured data on the cloud. This is mainly all about the Microsoft.WindowsAzure.StorageClient..

Hope you like them, waiting for your feedback J

Now I have previously showed you how to work on Windows Azure using Blob Storage, and went through the Windows Azure Cloud Blob Container Class, let me go through the Cloud Blob Client Class

void testingcloudblobclientclass()

{

//creating the account using the connection string

//creating the blob client

CloudStorageAccount account = CloudStorageAccount.FromConfigurationSetting(“ConnectionString”);

CloudBlobClient client = account.CreateCloudBlobClient();

 

//creating the directory, a subdirectory and a uploading a text in a blob

client.GetBlobDirectoryReference(“myblobdirectoryname”)

.GetSubdirectory(“thesubdirectoryname”)

.GetBlobReference(“newblobname”)

.UploadText(“uploading a text into a subdirectory in windows azure blob storage”);

 

//getting all the containers details from its list

foreach (CloudBlobContainer y in client.ListContainers())

{

y.FetchAttributes();

string containername = y.Name;

NameValueCollection containermetadata = y.Metadata;

BlobContainerProperties property = y.Properties;

}

 

//getting the details of the blobs in the list starting by a specified prefix

foreach(CloudBlob h in client.ListBlobsWithPrefix(“test”))

{

h.FetchAttributes();

string blobname = h.Name;

BlobProperties p = h.Properties;

}

}

Continuing on my previous work on the Windows Azure blog posts, I have written this one to make a simple demonstration about how to use the Windows Azure Cloud Blob Container class. This example will contain, how to create the windows azure cloud blob container, set the container permissions, the blob request options, the shared access Signature.

This is an example of the #LiveinaCloudyWorld papers.

private void testcloudcontainerclass()

{

// associating the created accoutn for the existing connection string for the windows azure storage account

var account = CloudStorageAccount.FromConfigurationSetting(“ConnectionString”);

 

//creating a blob client

CloudBlobClient client = account.CreateCloudBlobClient();

 

//the following line will show you how to create a container with the reference name

//make sure to follow the container name rules

CloudBlobContainer container = client.GetContainerReference(“containername”);

 

//these lines will show you how to create a blobrequestoptions to associate it with the container created

BlobRequestOptions options = new BlobRequestOptions();

options.DeleteSnapshotsOption = DeleteSnapshotsOption.IncludeSnapshots;

options.UseFlatBlobListing = true;

options.BlobListingDetails = BlobListingDetails.All;

options.RetryPolicy = RetryPolicies.NoRetry();

 

//setting the container permissions

container.SetPermissions(new BlobContainerPermissions()

{

PublicAccess = BlobContainerPublicAccessType.Blob,

}, options);

 

//setting the container shared access signature

container.GetSharedAccessSignature(new SharedAccessPolicy()

{

Permissions = SharedAccessPermissions.Read | SharedAccessPermissions.Write | SharedAccessPermissions.Delete,

SharedAccessExpiryTime = DateTime.Parse(DateTime.Compare(new DateTime(2013,1,1),new DateTime(2013,12,31)).ToString()),

SharedAccessStartTime = DateTime.Now,

});

 

//uploading a blob

container.GetBlobReference(“myblob”).UploadText(“testing”);

}

Big Data

Posted: January 12, 2013 in Live in a Cloudy World, Windows Azure

Now for those who have worked a lot with the latest updates of Cloud Computing, you will certainly have been through the Big Data a lot. Certainly we all now the data where we work with rows, columns, tables, queries and so on, what we call structured data. Nowadays, the percentage of the usage of the unstructured data has increased dramatically, and everything has to be store on the servers. If you have been through the social media analytics before you will certainly knew that these analyses are based on data you share which are certainly a big percentage unstructured data.

As for the cloud consumers, and even for those who have their own data warehouse, their data nowadays may have reached certain number of petabytes. So the concern for a well-designed system to handle all these data, even though like Lyndsay Wise said: “simply managing this data is no longer enough. Without the ability to gain insights from information and actionize results gleaned from the analytics, data remains inaccessible and not worth muchfrom Expanding Big data management to include analytics.

As for big data and the data management, the competition between the cloud providers is very exciting for me and I am sure they are doing their all what they can do to get the customer’s satisfaction and attraction. For the Windows Azure, it is providing several tools to get the best out of the data you put on its datacenters, from system center, active directory, Windows Azure SQL Database, and HDinsight here you can find all about Windows Azure BigData. For the Amazon which a believe it is a very strong competitor in the cloud, it provides, mapreduced, hadoop, Dynamo DB and other tools you can find them here.

This is a very short blog to simplify and to show the main differences of what you may have heard the structured and the unstructured data. If you are a developer then you have certainly worked before with SQL Server or my SQL, creating tables, relations, columns, rows, queries and so on for a basic target is to have a well-structured database where you can easily manage your data, get reports, insert, delete and do all necessary main functions.

On the other hand, in your application you certainly have to work with other type of data, like videos, pictures and files, where you can only post them online but you cannot do to it the same things you do your database or your unstructured data. You cannot insert into the file, you cannot write queries to get few words or lines from specified file.

For sure the data types for the databases are changing from time to time, I mean you can insert now images and some unstructured data into it however can you still make analysis on the unstructured data you insert into your database? I am sure that each type of data has its own specific time to use, there is no specific type of data is preferred on the other one, it all depends on your needs and the cost.