Top Special Offer! Check discount
Get 13% off your first order - useTopStart13discount code now!
After being hired as a database consultant for Silicon Valley startup, XYZ Blogs, to design a cloud-based system, there are a lot of things to think about before getting started. Among these are available cloud-based technologies and implementation techniques. In this study work, I will explore concerns such as the description of cloud-based systems, as well as recommendations for database implementation, maintenance, and recovery procedures. These procedures are intended to let XYZ Blogs compete advantageously with huge names like blogger.com and WordPress. The description of cloud computing is usually based on two ways: the cloud location or the service offered by the cloud. On the basis of location, the cloud computing services can be classified as public, hybrid, private and community cloud (Candrlic, 2013). On the other hand, the description based on service provided by the cloud we have software-as-a-service (SaaS), platform-as-a-service (PaaS), infrastructure-as-a-service (IaaS) and Storage, Process, Information, Application, Security, Integration, Management, Testing –as-a-service. This paper compares the SaaS, PaaS and IaaS systems which are based on the services provided by the cloud.
Figure 1: the cloud-based systems (retrieved from GlobalDots by Candrlic, 2013).
The above figure is a representation of the cloud-based systems with example of companies that are using the systems. At the top is the Software as a service (SaaS) and is popular with the end users. The Platform as a service (PaaS) is the middle system and is best suited for developers. The third one at the base is the infrastructure as a system (IaaS) and it is common with system administrators.
Software-as-a-service (SaaS)
This is a software distribution model type of cloud computing system in which a third-party provider host is involved making the software available over the internet to customers. It, therefore, eliminate the need for companies to eliminate and run applications on their data centers or on their computers. Consequently, the cost of hardware acquisition, maintenance and software support, installation and licensing for the company involved I using this service is eliminated.
Figure 2: The timeline for the development of SaaS cloud system (Hang & Dibie, 2013)
The above figure is a representation of the timeline if the development of the SaaS as a cloud-based system. It shows the way the system ended up providing an all-inclusive computing environment where the users of the system as demonstrated in the right part of the figure have complete systems. From the beginning, the system had little to provide with single tenant web applications. The multi-tenant is the latest providing all the software required by the clients. Some of the companies that make use of the SaaS include YouTube, Gmail, FaceBook, amazon.com and eBay among other.
In terms of business perspective, the SaaS cloud system appeals to businesses because of the following reasons: firstly, it is of low cost, shared license ad fast investment; secondly, it has a multi-tenant software architecture; thirdly, it has easy customization and high manageability and last but not the least, it can scale well in terms of commercialization (Hang & Dibie, 2013).
The advantages that SaaS has in terms of its management include the following: they are easy to use as most do not require more than a web browser to use. Secondly, they are cheap as they use the ‘pay as you go’ criteria. Thirdly, they are less prone to data loss with the data being stored in the cloud. Fourthly, they favor agile development life cycle. Last but not the least, the application can be scaled up and down to meet the demand of consumers (Hang & Dibie, 2013).
On the other hand, the flaws that are with the SaaS cloud system include the following: firstly, the SaaS software is not as robust as the traditional applications. This is due to the browser limitations. Secondly, there is privacy concern given that all the users’ data are stored in the cloud. For example, the Google Company which uses SaaS system has been attacked and its privacy compromised. Last but not the least, the reliability of the system can be questioned at times especially when the system goes down (Hang & Dibie, 2013).
Platform-as-a-service
This is a cloud computing model that involves a third-party provider get both software and hardware tools (in most cases those required for application development) delivered to the users over the internet. In this regard, the PaaS system ensures that clients are free from having to install in-house software and hardware
Figure 3: The PaaS cloud system (derived from Zoho, created by Towing & Textil, 2016)
The above figure shows the PaaS cloud system where it provides the services to clients such as create custom web applications, setting up servers, hosting and databases among others. The concept of PaaS is also referred to as cloud computing platform and its applications are known as web-based, on-demand or SaaS applications (Towing & Textil, 2016).
The benefits of PaaS to developers include the following: it minimizes the cost of operation through enabling timely marketing, easy collaboration, enhanced productivity, minimized operational cost and access to information anywhere and anytime. To the developers, PaaS enable them to focus only on innovation in instead of infrastructure set up. This it does by providing lower risk, zero infrastructure, quick and easy development, integration with other web services and reusable business logic among others (Towing & Textil, 2016).
On the other hand, the demerits of PaaS include the following: firstly, the resilience of the system may be a concern which may result in costly lapses of productivity. Secondly, the provider lock-in is of concern as well give that the users have no easy migration ability of the provided services from the system to a competing product. Last but not the least, the PaaS requires that the users have to evaluate their business risks of service and lock-in prior to their commitment to a PaaS provider (Rouse, 2014).
Infrastructure-as-a-service
This cloud computing model provides visualized computing resources via the internet. It is one of the three main subparts of cloud computing services. Its working includes the cloud provider hosting the components of the infrastructure traditionally in an on-premises data center (Manvi & Shyam, 2014). Some of the services that are availed by the IaaS provider include monitoring, log access, billing, load balancing, security, and clustering and storage resiliency. The providers of the IaaS are third-party organizations such as Google Cloud Platform (GCP) and Amazon Web Services (AWS).
The merits of the IaaS are among the following: firstly, the system is faster, easier and cost-efficient inn operating workload without the need to buy and manage the underlying infrastructure. There is also the possibility of businesses to lend and lease the infrastructure from other business. Another merit of the system is that the users have to pay per use basis and this eliminates the capital expense used in deploying in-house software and hardware (Manvi & Shyam, 2014).
On the other hand, the flaws of the system are as follows: firstly, the billing system can be a challenge to some businesses as it is granular to reflect the detailed usage of services. The users can also have sticker-shock upon realizing that they have higher bills than expected. Another issue with the IaaS system is involving insight where the performance is not transparent to the users due to the configuration of the system. Last but not the least, there is also a concern of resilience where the provider dictates the availability and performance of the system (Manvi & Shyam, 2014).
PaaS vs. SaaS vs. IaaS
PaaS system boasts to be one of the three categories in cloud computing services. The other two are software as a service and infrastructure as a service. The IaaS allows for the providers to supply along with hypervisor, the basic storage, compute and networking infrastructure. The users then have to create virtual machines and install relevant components before commencing usage. The PaaS have their providers offer more application stack than the case with IaaS providers (Rouse, 2014). This ends up adding middleware and operating system among other things in the cloud environment. Finally, the case with SaaS, there is the entire provision of application stack and the users have to simply log in and utilize the application that they need. With regard to these comparisons, the database management aspect applies as follows: in IaaS, the database can be built, with SaaS, the database can be bought and with PaaS, the database can be deployed (Colman, 2013).
Selection Recommendation for the Above Systems
From the above cloud-based systems: IaaS, SaaS and PaaS, there are questions pegged to their usage as to which is the best. This according to Colman (2013) depends on what a client really want to use the systems for as they are specific to given functions. For example, when a business needs to access software without physically purchasing them, they will be required to utilize the Software as a service cloud system. On the other hand, when a business needs to utilize virtualization technology, they will be using the platform as a service cloud system. Lastly, if a business needs to utilize a wide range of cloud technology tools, they can opt for infrastructure as a service.
However, from the three cloud systems, the one that provides a wide range of services is the Infrastructure as a service (IaaS). Some of the services that they get through IaaS include monitoring, log access, billing, load balancing, security, and clustering and storage resiliency (Colman, 2013). From this perspective, we can conclude that the IaaS is the best among the three cloud-based systems. Hence the users can as well outsource and build ‘virtual data centers’ and save access to similar technologies in addition to resource capabilities of tradition data centers without the need to invest in physical maintenance, capacity planning or management of the system.
Some of the other reasons for IaaS to be the best include the system being very flexible I cloud computing is that it avails automated deployment of processing power, servers, networking, and storage. This, therefore, means that the users of IaaS have got the high potential of control over their infrastructure than similar cases in SaaS and PaaS (Colman, 2013).
Implementation Documentation
The implementation of the database management can be done through the use of Infrastructure-as-a-service (IaaS) cloud system because of the simple reason that the system is very versatile as compared to SaaS and PaaS. The implementation of follows three entities: user accounts, articles, and groups. The following are the implementation documentation of the database building.
The data definition commands for each of the entity are listed below (Coronel & Morris, 2016):
User accounts:
Create:
CREATE table users_accounts(user_idINT AUTO_INCREMENT, user_email_address VARCHAR not null, user_password VARCAR not null, first_name VARCHAR not null, last_name VARCHAR not null, PRIMARY KEY(user_id));
Alter:
ALTER table users_accountADD (gender TEXT not null);
Rename:
RENAME table users_accounts to user_account;
Drop:
DROP table users_account;
Explanation: The create command will create a table in the database in the name “user_accounts”, which will later be renamed into ”user_account”. The command tells the table include five attributes namely, user_id, user_email_address, user_password, first_name and last_name. It is followed by an alter command, which adds new attributes gender to the users_accounts table. The rename command will rename the table to user_account from user_accounts. Finally, the drop command will delete the entire table including all its contents and data from the database(Powell, 2006).
Articles:
Create:
CREATE table articles (article_id INT AUTO_INCREMENT, title VARCHAR not null, content VARCHAR not null, date_createdDATE not null, date_editedDATE, comments VARCHAR, PRIMARY KEY(article_id));
Alter:
ALTER table articles ADD (status TEXT not null);
Rename:
RENAME table articles to article;
Drop:
DROP table article;
Explanation: The create command will create a table in the database in the name ”articles”, which will later be renamed into ”article“ using the rename data definition command. The command tells the table include seven attributes namely, article_id, title, content, date_created, date_edited, comments, user_id. It is followed by an alter command, which adds new attributes statusto the existing articles table. The rename command will rename the table to article from article. Finally, the drop command will delete the entire table including all its contents and data from the database (Powell, 2006).
Groups:
Create:
CREATE table groups (group_id INT AUTO_INCREMENT, group_name VARCHAR not null, group_members VARCHAR not null, user_id INT, article_id INT PRIMARY KEY(group_id));
Rename:
RENAME Groups to group;
Drop:
Drop table groups;
Explanation: The create command will create a table in the database in the name ”groups”, which will later be renamed into ”group” using the rename data definition command. The command tells the table include three attributes namely, group_id, group_name and group_members. The rename command will rename the table to groups from group. Finally, the drop command will delete the entire table including all its contents and data from the database (Powell, 2006).
Article_group:
Create:
CREATE table article_group (article_group_id INT AUTO_INCREMENT, user_idINT not null, group_id VARCHAR not null, PRIMARY KEY(article_group_id), FOREIGN KEY (user_id, group_id);
Explanation: The create command will create a new table article_group that will define the relationship between different entities. Here, each entry of the table will be assigned to a unique article_group_id and it will contain data for user_id, group_id and article_id. This will bound all these attributes into single relationship. Since the primary key is article_group_id, it will be able to incorporate multiple groups and articles with single or multiple users. Clearly, this table will be used to define the relationship that exists between tables or attributes.
Recommend Implementation, Maintenance, and Recovery Strategies
The implementation of the XYZ Blogs database upon creation through the IaaS cloud system can be done through the following steps (Database Design Phase 3: Implementation. 2017): firstly, installing the database management system (DBMS). Secondly, tuning the setup variables to be in line with the software, hardware and the usage conditions. Thirdly, the creation of the database and the tables. Thirdly, loading the data. Fourthly, setting up for the users and security and lastly implementing the backup regime.
Maintenance of the Database
The maintenance of the database aims at ensuring that the system works well at all times to meet the goals and objectives of the business organization. The database maintenance will have the following routine management (OfficeTools. 2015): firstly, defragmentation of the index, maintenance of the log file, file/data compaction and integrity check.
Recovery strategy for the Database
The recovery strategies for the database are meant to restore data whenever they get lost. One of the basic methods for the recovery is to restore the good copy from the database back up and consequently roll the database forward using the transaction log files that had been generated. This follows such steps as ensuring that there is a good back up, ensuring that all the generated log files are undamaged and finally ensuring that the database is not corrupted or unintended deletion was done. Some of the other recovery strategies that can be used include the moving of mailboxes, repairing the database and finally, restoring, repairing and merging the database (Database Recovery Strategies n.d).
Conclusion
The above research project has outlined the process of database management. The findings from the research paper are that the Infrastructure-as-a-service (IaaS) cloud-based system is the best for the management of the database because of its versatility. The implementation documentation also has been given in the research work followed by recommending implementation, maintenance, and recovery strategies for the database to ensure that it does its work and ensure that the XYZ Blogs compete favorably with other companies.
References
Candrlic, G. (2013). Types of Cloud Computing Explained | GlobalDots. GlobalDots - CDN, Security and Performance Solutions. Retrieved 5 November 2017, from http://www.globaldots.com/cloud-computing-types-of-cloud/
Colman, E. (2013). When to use SaaS, PaaS, and IaaS. ComputeNext. Retrieved 5 November 2017, from https://www.computenext.com/blog/when-to-use-saas-paas-and-iaas/
Coronel, C., & Morris, S. (2016). Database Systems: Design, Implementation, & Management. Cengage Learning.
Database Design Phase 3: Implementation. (2017). MariaDB KnowledgeBase. Retrieved 5 November 2017, from https://mariadb.com/kb/en/library/database-design-phase-3-implementation/
Database Maintenance Explained - OfficeTools. (2015). OfficeTools. Retrieved 5 November 2017, from https://www.officetools.com/knowledgebase/database-maintenance-explained/
Database Recovery Strategies. Technet.microsoft.com. Retrieved 5 November 2017, from https://technet.microsoft.com/en-us/library/aa998090(v=exchg.65).aspx
Hang, H., & Dibie, O. (2013). Software as a service. Presentation, https://www.cs.colorado.edu/~kena/classes/5828/s12/presentation-materials/dibieogheneovohanghaojie.pdf.
Manvi, S. S., & Shyam, G. K. (2014). Resource management for Infrastructure as a Service (IaaS) in cloud computing: A survey. Journal of Network and Computer Applications, 41, 424-440.
Rouse, M. (2014). What is Platform as a Service (PaaS)? - Definition from WhatIs.com. SearchCloudComputing. Retrieved 5 November 2017, from http://searchcloudcomputing.techtarget.com/definition/Platform-as-a-Service-PaaS
Towing, S., & Textil, T. (2016). Platform as a Service, Cloud Computing Platform - Zoho Creator. Zoho.com. Retrieved 5 November 2017, from https://www.zoho.com/creator/paas.html
Hire one of our experts to create a completely original paper even in 3 hours!