5 Reasons to go Serverless With Azure.

Ajiri Gunn
The Startup
Published in
6 min readJul 14, 2020

If your mobile(android) project would require some data to be stored on the internet like most modern applications, you'll save yourself a lot of headache using ready-made cloud storage (serverless) services especially if you have enough code to write for the native app. A serverless architecture would eliminate the hassle of setting up your server space, managing your RESTful APIs and handling security (authentication & encryption) among other technicalities. Microsoft offers such service on the azure platform. Even though it’s not the only one, we won’t be comparing them all.

Apart from all the bells and whistles that come with any serverless cloud service, the azure platform offers a lot more. Whether you already use a different cloud storage or are looking for a convenient way to save / transmit your app’s data with the internet, here are 5 reasons why azure is a great option.

  1. Accessibility.

The azure platform is really versatile. It’s why it literally has a marketplace. There are so many tools you could use to work on almost any project. So it doesn’t matter if your project incorporates IOT, computer vision, machine learning or any deep technology at all, your data would remain accessible across multiple projects as long as they’re built on the azure platform.

It’s also very accessible externally. The platform has really comprehensive REST APIs which means it doesn’t matter the programming language you use or the client processor that’s accessing your cloud data. As long as your client device can connect to the internet, you can write code to access and process your data conveniently. So if you’re developing a cross platform application or working on an IOT project, azure would be a great option.

A lot of android developers (Java/Kotlin fans) I know find it easier to work with Standard Development Kits (SDKs) but the official documentation coupled with the large user community makes working with azure APIs almost as friendly. The point is your data can be accessed from anywhere with ease.

2. AI Compatibility.

As far as the modern world is concerned, your app is hardly an innovation if it doesn’t leverage on some form of artificial intelligence. The azure platform has really great AI tools which you can easily make a part of your app with a few clicks. Just like that, your data can be fetched using semantic search algorithms so not just keywords but synonyms of keywords can be used to search through and fetch your data. Even the images you store on the azure platform can become searchable data and the only thing you need to do to leverage these applications is to save your data on azure servers.

With azure, artificial intelligence is basically off-the-shelf technology. You don’t necessarily have to go through the hassle of data mining and training models. There are already really advanced AI models just waiting to be applied to your data and if you’re still into training your own models, the azure platform (often) makes it a drag and drop affair. With your app’s data on the azure platform, you can rightfully claim to incorporate artificial intelligence in your project (with only a few clicks).

3. Robust Architecture.

“It’s like they thought of everything”. When I got my head around the different storage options that azure provides, those were my thoughts.

If you’re like me, then you prefer not to deal with tables, rows and proper query formats on the cloud because you already have enough SQL(lite) to deal with on the local application. Besides, schema modifications and compatibility could easily become an issue. It’s why azure’s NoSQL storage architecture allows you to store both structured and unstructured data as JSON objects, JSON arrays or just text and binary data. There’s also a lot of support material on the different storage options.

The official documentation explains them really well but I’ll just briefly go over the core packages.

Azure Blob Storage: This package allows you store massive amounts of unstructured text and binary data. It basically allows you to store most kinds of data (text, jpg, avi etc. ) as blobs in your storage account. There’s also an advanced version of this package that performs big data analytics on your data called azure data-lake storage.

Azure Tables: This package allows you to store structured data in a NoSQL database. This is very practical for modern apps since we usually want to store sets of objects in key value pairs and qbe able to easily adapt the cloud database to the local schema. An optimized version of this package is the CosmosDB which you should also check out since it overcomes some limitations of the regular tables.

Azure Files: As the name implies, it’s meant to store files. It’s mostly for organizations who’d like to backup or replace their servers. But there are lots of other applications. Files in this store are accessed via Server Message Block (SMB) protocol.

Azure Queues: This package allows you to store messages and access them from anywhere via authenticated HTTP/HTTPS requests. Currently, your messages last on a queue for 7 days by default but you have the option of changing the duration. It has lots of applications but it’s really up to your imagination.

Azure Disks: You can provision a disk on azure servers and let azure manage it. A cool feature here is that your data’s backup literally has a backup.

4. Security.

Obviously, it’s managed by Microsoft. Especially if you’re developing a mobile app for someone else (a client maybe), you’ll sound more reassuring telling your employer (client) that his/her data is secured by Microsoft.

As mentioned earlier, cloud engineering is a world of its own and black hat hackers pose a real threat. If you’ve always only been a mobile app developer or if you don’t trust your cloud skills, then you’re safer allowing Microsoft save you the stress.

In simple terms, your data at rest is encrypted with a 256 bit AES-key which Microsoft regularly rotates by default. You can change these keys in the key vault but unless you have very specific needs, it’s not a very good idea. You also have the option to enforce secure transfer on the azure portal so that only authenticated HTTPS (Secure Hypertext Transfer Protocol) requests are attended to (recommended).

You really don’t have to worry about the security of your data on azure and there’s usually more you can do to secure your data.

5. Great Pricing.

How does 0.21 USD/GB (July 2020) sound? To me, it’s great considering the AI capabilities that the store provides. The above rate goes for blob storage premium package and azure data lake.

If you’re making a mobile app, there should be read/write operations which you’ll also be charged for. Again, it’s not much of an issue. The popular blob premium package charges $0.025 per 10000 write operations and $0.002 for every 10000 read operations. You can check out the comprehensive storage pricing documentation .

The applications of the storage packages are really up to your imagination but before you exploit the awesomeness of azure, do go through the storage learning path.

--

--