MODULE_3_FREE_ELECTIVE

Download as pdf or txt
Download as pdf or txt
You are on page 1of 19

I.

Hello and welcome to Module 3 of this course Platform Technologies.

In this video, we have the following learning objectives:

1. Explain the role of cloud computing and virtualization in platform technologies,

2. Analyze and evaluate big data and analytics platforms, and

3. How are applications for mobile and web platforms developed?

At the end of this module, we should be able to:

Define what is a technology platform and why it is essential for IT professionals.

Provide some examples of technology platforms and their benefits.

In today's digital age, technology platforms are essential for IT professionals to develop and deploy
applications.

A technology platform provides a foundation for software developers to create and run applications on a
specific operating system or hardware.

It includes:

programming languages,

software development kits,


frameworks,

libraries, and

other tools that enable developers to build, test, and deploy applications efficiently.

This lesson will cover the fundamentals of platform technologies and tools, focusing on cloud computing
and virtualization, big data and analytics platforms, and mobile and web platforms.

By the end of this lesson, you will have better understanding on the role of technology platforms in IT
and the tools available to IT professionals.

II.

Hello and welcome to our topic

Big Data and Analytics Platform

Lets start!

By the end of this video, you should be able to:

Explain big data and how it is generated, stored, processed, and analyzed

Describe the characteristics and challenges of big data.

Explain what an analytics platform is and how it helps extract insights from big data

Compare and contrast different analytics platforms and their features and applications
What is Big Data?

Big Data is a term that refers to large, diverse, and complex sets of information generated from various
sources such as social media, IoT devices, sensors, weblogs, mobile devices, and more.

Traditional data management tools cannot process Big Data, requiring specialized platforms to store,
process, and analyze it to extract insights and make informed decisions.

Big Data can be used for business intelligence, predictive analytics, machine learning, and data mining.
However, it also poses challenges and requires special tools and techniques to handle it effectively.

Big data has five characteristics, known as the five Vs:

Volume,

Velocity,

Variety,

Veracity, and

Value.

Volume refers to the amount of data, velocity refers to the speed at which data is generated and
consumed, variety refers to the different types of data, veracity refers to the accuracy and reliability of
data, and value refers to the business value of data.

The characteristics of big data are the features that describe the nature and challenges of dealing with
large and complex data sets.

Let me explain each of them briefly:


Volume refers to the amount or size of data produced and stored.

Big Data can range from gigabytes to petabytes or even exabytes of data.

For example, in a classroom setting, you may have data from hundreds of students' assignments, quizzes,
exams, feedback, and online activities.

Velocity refers to the speed or rate at which data is generated and processed.

Big Data can be produced and consumed in real-time or near real-time.

For example, in a classroom setting, you may have data from students' interactions with online learning
platforms, such as clicks, views, likes, comments, and submissions.

Variety:

This refers to the diversity of types of available data.

Big Data can be structured, semi-structured, or unstructured.

Structured data has a predefined format and can be easily stored and queried in databases or
spreadsheets.

Semi-structured data has some structure elements but also contains free-form text or other data types.

Unstructured data has no fixed format and can include text, images, audio, video, etc.

For example, in a classroom setting, you may have data from students' essays, presentations, portfolios,
blogs, podcasts, etc.
Veracity:

This refers to the quality or reliability of collected and analyzed data.

Big Data can be noisy, incomplete, inconsistent, inaccurate, or fraudulent.

For example, in a classroom setting, you may have data from students' self-reports, peer reviews,
surveys, or online sources that may not reflect their actual performance or opinions.

Value:

This refers to the usefulness or relevance of extracted and interpreted data.

Big Data can provide valuable insights and knowledge that can help improve decision-making, problem-
solving, innovation, and learning outcomes.

For example, in a classroom setting, you may use data to personalize learning experiences for students
based on their preferences, needs, goals, and progress.

Some of the main challenges of Big Data are:

Managing massive amounts of data:

Big Data requires considerable storage capacity and scalable infrastructure to store and access it
efficiently.

Cloud computing is one of the solutions that offers flexible and cost-effective storage options for Big
Data.
Integrating data from multiple sources:

Big Data comes from various sources with different formats and structures.

Data integration combines and reconciles data from different sources into a common format and
structure.

Data integration software, ETL software, and business intelligence software are some of the tools that
can help with this process.

Ensuring data quality:

Big Data can be affected by errors, inconsistencies, incompleteness, or fraudulence that can compromise
its validity and reliability.

Data quality is the process of ensuring that data is accurate, complete, consistent, and trustworthy.

Data quality software, data cleansing software, and data governance software are some of the tools that
can help with this process.

Keeping data secure:

Big Data can contain sensitive or confidential information that can be vulnerable to cyberattacks or
unauthorized access.

Data security is the process of protecting data from unauthorized use, disclosure, modification, or
destruction.

Data security software, encryption software, and identity management software are some of the tools
that can help with this process.
Selecting the right big data tools:

Big Data requires specialized tools and techniques to process and analyze it effectively.

There are many big data tools available in the market that offer different features, functions, and
benefits.

Choosing the right big data tool depends on various factors, such as the type, size, and complexity of
data, the purpose and goal of analysis, the budget and resources available, and the skills and expertise
required.

Some examples of big data tools are Hadoop, Spark, Storm, MongoDB, Cassandra, Tableau, Power BI, etc.

Scaling systems and costs efficiently:

Big Data requires high-performance computing power and bandwidth to process and analyze it quickly
and accurately.

Scaling is adjusting the computing resources according to the changing demands of big data applications.

Scaling can be done horizontally (adding more nodes or machines) or vertically (adding more power or
memory to existing machines).

Scaling can also be done dynamically (automatically adjusting resources based on demand) or statically
(manually adjusting resources based on prediction).

Scaling can affect big data systems' performance, cost, and reliability.

Therefore, it is crucial to find the optimal balance between these factors.

Lack of skilled data professionals:


Big Data requires skilled data professionals who can handle big data projects' technical and analytical
aspects.

Data professionals include data engineers, data analysts, data scientists, data architects, data managers,
etc.

These professionals need to have a combination of technical skills (such as programming, database,
statistics, machine learning, etc.), domain knowledge (such as business, education, health, etc.), and soft
skills (such as communication, collaboration, problem-solving, etc.).

There is a high demand but a low supply of qualified data professionals.

Therefore, investing in training and education programs to develop and retain data talent is important.

Organizational resistance:

Big Data can bring significant changes and challenges to the organizational culture and structure.

Big Data can require new roles, processes, policies, and strategies to manage and use effectively.

Big Data can also require embracing and adopting new mindsets, attitudes, and behaviors.

Organizational resistance is the opposition or reluctance of people or groups to accept or support big
data initiatives.

Various factors can cause organizational resistance, such as fear of change, lack of awareness, lack of
trust, lack of involvement, lack of incentives, etc.

Therefore, addressing these factors and fostering a data-driven culture that values and leverages big data
is essential.
Let's discuss the Analytics Platform

An analytics platform is a software solution that helps businesses collect, process, analyze, and visualize
data from various sources to gain insights and make data-driven decisions.

Analytics platforms can help businesses improve their performance, efficiency, profitability, and
customer satisfaction by uncovering hidden patterns, trends, and correlations in large and complex
datasets.

Analytics platforms provide tools and frameworks for data processing, analysis, and visualization.

Many different analytics platforms are available in the market, each with its own strengths and
weaknesses.

the most popular analytics platforms are:

Google Analytics 360,

Adobe Analytics,

SAP Analytics Cloud

Some of the factors that can be used to compare and contrast them are:

Data sources:

The types and formats of data the platform can connect to and ingest, such as databases, files, APIs, web
pages, social media, IoT devices, etc.
Data preparation:

The tools and features that the platform provides to clean, transform, enrich, and integrate data from
multiple sources and make it ready for analysis.

Data modeling:

The platform's ability to create and manage data models that define the relationships, hierarchies,
calculations, and measures of the data.

Data analysis:

The methods and techniques that the platform supports to explore, query, manipulate, and calculate
data, such as SQL, Python, R, machine learning, natural language processing, etc.

Data visualization:

The options and capabilities that the platform offers to create and customize charts, graphs, dashboards,
reports, and stories that present the data visually and interactively.

Data delivery:

The ways that the platform can share and distribute the data insights to different audiences and devices,
such as web browsers, mobile apps, email, PDFs, embedded widgets, etc.

Data security:

The measures and standards that the platform follows to protect the data from unauthorized access,
modification, or loss, such as encryption, authentication, authorization, backup, etc.

Data privacy:
The compliance and adherence of the platform to the relevant data protection laws and regulations in
different regions and industries, such as GDPR, CCPA, HIPAA, etc.

Customer support:

The quality and availability of the platform's customer service and technical assistance for users who
need help or encounter issues with the platform.

Let's summarize what we have learned

Big Data and Analytics Platforms are software frameworks that help organizations collect, store, process,
and analyze large and complex data sets.

They provide the infrastructure, tools, and technologies to handle and derive insights from big data. They
can improve operations, customer satisfaction, competitiveness, and data quality.

They can also enable data preparation, data blending, data visualization, machine learning, business
intelligence, and predictive analytics. They can support various applications and use cases across
different industries and domains.

Some examples of Big Data and Analytics Platforms are Microsoft Azure, Google BigQuery, MongoDB,
Cloudera Enterprise Big Data, and Tableau.

III.

Hello and welcome to our topic

Cloud Computing and Virtualization

I'm really happy to see you again and very eager to learn.
Lets start!

By the end of this video, you should be able to:

Explain what cloud computing is and how it works,

Describe the types of cloud services (IaaS, PaaS, SaaS) and their advantages and disadvantages,

Explain what virtualization is and how it supports cloud computing, and

Compare and contrast virtualization technologies (hypervisor, container, serverless) and their use cases.

Lets define what is cloud computing?

Cloud computing is a technology platform that provides on-demand access to shared computing
resources, such as servers, storage, applications, and services, over the Internet.

Cloud computing allows you to access and use these services without buying, installing, or maintaining
any hardware or software on your own devices.

You only pay for what you use and can scale up or down your resources as needed.

It offers several benefits, including scalability, flexibility, cost-effectiveness, and reduced IT complexity.

How does cloud computing work?

Cloud computing works by using a network of remote servers that are hosted on the internet.

Cloud providers like Microsoft Azure, Amazon Web Services, and Google Cloud Platform manage these
servers.
When you use cloud computing, you connect to these servers through the internet and access their
services.

For example, you can store your files on a cloud server instead of your local hard drive or run an
application on a cloud server instead of your local computer.

Cloud computing services are divided into three categories: Infrastructure as a Service (IaaS), Platform as
a Service (PaaS), and Software as a Service (SaaS).

IaaS:

Infrastructure as a Service is the most basic type of cloud service. It provides raw computing resources
like servers, storage, network, and operating systems. You have complete control over these resources
and can configure them as you wish. However, you are also responsible for managing and maintaining
them. IaaS is suitable for users who need a lot of flexibility and customization in their cloud environment.

PaaS:

Platform as a Service is a cloud service that provides a ready-made platform for developing and
deploying applications. It includes the infrastructure resources, tools, and frameworks you need to
create your applications. You do not have to worry about managing or maintaining the underlying
infrastructure, but you have less control over it. PaaS suits users who want to focus on application
development and deployment without dealing with infrastructure complexities.

SaaS:

Software as a Service is a cloud service that provides ready-made software applications that run on the
cloud. You do not have to install or update any software on your devices, but you can access them
through the internet using a web browser or an app. You do not have to worry about managing or
maintaining any infrastructure or platform, but you have the least control over them. SaaS suits users
who want to use software applications without buying or maintaining them.

What are the advantages and disadvantages of cloud services?


Cloud services have many advantages and disadvantages depending on your needs and preferences.
Here are some of them:

Advantages:

Cost-effective:

You only pay for what you use and do not have to invest in expensive hardware or software.

Scalable:

You can easily adjust your resources according to your demand and performance needs.

Reliable:

With an internet connection, you can access your services anytime and anywhere. You also benefit from
the backup and recovery features of the cloud providers.

Secure:

You can protect your data and applications from unauthorized access or attacks using the security
measures of the cloud providers.

Innovative:

You can access cloud providers' latest technologies and features without upgrading your devices or
software.

Disadvantages:
Dependency:

You rely on the internet connection and the cloud providers' availability to access your services.

You may lose access to your data or applications if there is any outage or disruption.

Privacy:

You entrust your data and applications to the cloud providers who may have access to them or share
them with third parties.

You also must comply with the laws and regulations of the countries where the cloud providers operate.

Compatibility:

You may face compatibility issues between your devices, software, and cloud services.

You may also have difficulty migrating your data or applications from one cloud provider to another.

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

What is Virtualization?

Virtualization is a technology that enables multiple virtual machines or VMs to run on a single physical
server.

It abstracts the hardware resources, such as CPU, memory, and storage, and allocates them to the VMs.
You can view virtualization as creating a virtual version of something, such as a computer, an operating
system, a network, or a storage device.

Virtualization allows multiple virtual entities to run on a single physical entity, thus improving efficiency,
flexibility, and scalability.

Virtualization supports cloud computing by enabling VMs to run on multiple physical servers, providing
high availability and fault tolerance.

Different virtualization technologies exist, including hypervisor, container, and serverless.

Cloud computing delivers services over the internet, such as servers, storage, databases, networking,
software, analytics, and intelligence.

Cloud computing relies on virtualization to provide these services on demand without requiring physical
infrastructure or maintenance.

Different virtualization technologies, such as hypervisor, container, and serverless, support cloud
computing.

Here is a brief comparison and contrast of these technologies and their use cases:

Hypervisor:

A hypervisor is a software that creates and manages virtual machines (VMs), isolated environments that
emulate a complete computer system.

A hypervisor runs on a host machine or bare-metal server, allowing multiple VMs to share the same
hardware resources.

Each VM has its operating system (OS), applications, libraries, and settings. Hypervisor products include
VMware ESXi¹, Microsoft Hyper-V², and Oracle VM VirtualBox³.
The advantages of hypervisor technology are that it can run any application on any OS and provides
strong isolation and security.

The disadvantages are that it consumes more resources than other technologies and has lower
performance and scalability.

Container:

A container is software that packages an application and its dependencies into a self-contained unit that
can run on any OS.

A container runs on top of a shared OS kernel and uses less resources than a VM.

Each container has its libraries, settings, and file system.

Examples of container products are Docker, Kubernetes, and Amazon Elastic Container Service.

The advantages of container technology are that it is lightweight, fast, portable, and scalable.

The disadvantages are that it has less isolation and security than VMs and requires more management
and orchestration tools.

Serverless:

Serverless is a computing model that abstracts away the servers and infrastructure from the developers
and allows them to focus on writing code.

Serverless applications are composed of functions triggered by events and run on demand.
The functions are hosted and managed by a third-party vendor who charges based on the execution time
and resources used.

Examples of serverless products are AWS Lambda, Azure Functions, and Google Cloud Functions.

The advantages of serverless technology are that it is cost-effective, scalable, flexible, and easy to use.

The disadvantages are that it has limited functionality, control, and visibility and may incur latency and
cold start issues.

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

Let's do a brief summary of what we have learned:

Cloud computing and virtualization are two related but different concepts.

Virtualization is a technology that creates multiple virtual environments or resources from one physical
system.

Cloud computing is a model that uses virtualization to provide IT services over the Internet.

Cloud computing also adds self-service, automation, orchestration, and metering features.

Virtualization can improve hardware utilization, reduce power consumption, and enable server
consolidation.

Cloud computing can offer cost reduction, scalability, elasticity, and reliability benefits.

Cloud computing models and services differ in the ownership, location, access, abstraction, and control
of cloud resources.
Virtualization is a technology that supports cloud computing, while cloud computing is a model that
leverages virtualization.

I hope you enjoyed this topic. Thank you for watching!

For other topics, check out these links!

You might also like