Google App Engine for Small BusinessBy Vishal Biyani
Every business today, small or big uses IT to automate business process. While big business have capital and man power to develop and maintain software and hardware, for small businesses it always may not be worth the ROI. The good news is in today’s world and specially in last couple of years, we have options of “pay as you go”, both software and hardware. While there are many choices available in market, we are going to look at “Google App Engine”.
Google app Engine lets you deploy applications developed by you to their cloud with much ease. You can also leverage Google’s other applications like Gmail, Google docs to plug and play with your custom developed application/s.
What you get:
Infrastructure and platform at cost of use only
GAE provides platform for deployment of your applications and supporting infrastructure. While there is a free quota, if your business demands exceeds, you have to only pay for spikes. The increase in your site’s traffic is taken care dynamically and you can rest assured of good speeds all the time.
Plug and play
A typical business needs email system, office suite, a scheduling system etc. Functions such as authentication are simple, but cumbersome to develop & maintain. You can rely on Google’s infrastructure for such modules, which reduce burden of development and maintenance for your enterprise, at the same time leveraging the best one in industry. Gmail, Google docs and Calendar are few such products which are user proven and plug well with custom developed apps.
Develop fast, get running quickly
One of best features of Google app engine is it’s one click deployment. This leaves your developers to focus solely on their task: development, thus increasing efficiency of the developers. Support for popular languages like Java and Python gives you access to vast pool of developers available.
What you need to plan for
Different type of DB & backup:
Google app engine employes a NO SQL DB, which is not like a traditional relational DB. This means your domain model might need to be modeled differently, and developer need to code it differently. NO SQL DB is well suited for cases where variation in schema is too high, and works extremely well in most cases, but you have to count for effort of migration & remodelling if you are moving from an existing relational DB.
You need to also have a strategy in place for backing up your DB frequently, as this is a new thing in NO SQL DBs, and in worst case you might need to plan for moving your DB back to a relational DB.
Due to inherent structure of NO SQL DB and its evolving technology, there are some limitations imposed on what kind of queries you can execute. Google also places some limitations on data/request time etc. You need to evaluate such limitations against requirement for your business process. For example if you are planning to develop or migrate a photo print ordering application to GAE, you might need to evaluate if photo upload will time out due to limitations of GAE. You might also need to look at alternatives possible based on your process.
Moving complete stack to cloud
With GAE, you wil be moving your complete application stack to cloud including application & data. While this is a good idea from performance perspective, some organizations might have compliance/IP restrictions to do so. Also some enterprises might prefer just to move application in cloud and leave the data in house.
GAE presents a great opportunity for small business/enterprises to leverage well developed infrastructure like mail, online office suite and plug with custom developed application that business process might demand. But businesses have to evaluate their business process in depth to check if it can fit in available technology. The cost opportunity presented can add to your bottomline if the technology is well evaluated and work around is well thought and planned of.