This document provides an overview of Google Cloud Platform (GCP) services. It discusses computing services like App Engine and Compute Engine for hosting applications. It covers storage options like Cloud Storage, Cloud Datastore and Cloud SQL. It also mentions big data services like BigQuery and machine learning services like Prediction API. The document provides brief descriptions of each service and highlights their key features. It includes code samples for using Prediction API to train a model and make predictions on new data.
Microsoft Azure is an ever-expanding set of cloud services to help your organization meet your business challenges. It’s the freedom to build, manage, and deploy applications on a massive, global network using your favorite tools and frameworks.
Productive
Reduce time to market, by delivering features faster with over 100 end-to-end services.
Hybrid
Develop and deploy where you want, with the only consistent hybrid cloud on the market. Extend Azure on-premises with Azure Stack.
Intelligent
Create intelligent apps using powerful data and artificial intelligence services.
Trusted
Join startups, governments, and 90 percent of Fortune 500 businesses who run on the Microsoft Cloud today.
Amazon Web Services (AWS) is a comprehensive cloud computing platform that provides infrastructure as a service (IaaS), platform as a service (PaaS), and software as a service (SaaS). AWS offers global compute, storage, database, analytics, application, and deployment services to help organizations increase agility and lower costs. Key advantages of AWS include cost efficiency, reliability with 24/7 access and redundancy, unlimited storage, easy backup and recovery, and easy access to information from anywhere via the internet. AWS training in Bangalore teaches skills like using EC2, S3, load balancers, and VPC to deploy and manage applications in the cloud. With Bangalore's large IT industry and growing demand for AWS
Amazon Web Services (AWS) provides on-demand computing resources and services in the cloud, with pay-as-you-go pricing. This session provides an overview and describes how using AWS resources instead of your own is like purchasing electricity from a power company instead of running your own generator. Using AWS resources provides many of the same benefits as a public utility: Capacity exactly matches your need, you pay only for what you use, economies of scale result in lower costs, and the service is provided by a vendor experienced in running large-scale networks. A high-level overview of AWS infrastructure (such as AWS Regions and Availability Zones) and AWS services is provided as part of this session.
Speaker: Tom Whateley, Solutions Architect and Stephanie Zieno, Account Manager, Amazon Web Services
The document provides an overview of Amazon EC2, including:
- AWS concepts like regions, availability zones, and instance types
- Storage options like EBS, S3, and instance store
- Networking options like VPC, subnets, and load balancers
- Monitoring tools like CloudWatch and how to set up alarms
- Security measures like IAM roles and encryption
- Deployment options including AMIs, auto scaling, and CodeDeploy
Cloud computing allows companies to outsource their infrastructure needs to large cloud providers like Amazon Web Services (AWS). This reduces costs and provides scalability. AWS offers services like S3 for storage, EC2 for virtual servers, SQS for messaging, and SimpleDB for databases. Companies pay for only the resources they use, allowing them to scale up or down as needed. However, companies must ensure their applications and data are secure when using cloud services.
Google provides Infrastructure as a Service (IaaS) through Compute Engine, which allows users to create and run virtual machines on Google's infrastructure. It also provides Platform as a Service (PaaS) through services like App Engine, a fully managed platform for developing and hosting web applications at scale using popular programming languages. Google's cloud services run on the same infrastructure used for its consumer products and offer reliability, security, scalability and pay-as-you-go pricing.
This document provides an overview of Google Cloud Platform (GCP) services. It begins by explaining why GCP is underpinned by Google's infrastructure and innovation. It then outlines GCP's compute, networking, storage, big data, and machine learning services. These include Compute Engine, Container Engine, App Engine, load balancing, Cloud DNS, Cloud Storage, Cloud Datastore, Cloud Bigtable, Cloud SQL, BigQuery, Dataflow, Pub/Sub, Dataproc, and Cloud Datalab. Machine learning services such as Translate API, Prediction API, Cloud Vision API, and Cloud Speech API are also introduced.
Getting Started with Google's Infrastructure is summarized as follows:
1. Google Cloud Platform provides infrastructure services including virtual machines, networking, and storage hosted on Google's global network of data centers.
2. Google Compute Engine is an infrastructure as a service offering that allows users to launch and manage virtual machine instances.
3. The document provides an overview of Google Compute Engine including machine types, regions, persistent disks, load balancing, and pricing models.
Cloud computing is the delivery of computing resources like servers, storage, databases, and software over the Internet. There are different types of cloud including public, private, and hybrid clouds. Google Cloud Platform (GCP) provides various computing, storage, networking, security, and other services to users. GCP offers products and services for compute, storage, networking, security, big data, machine learning, and management tools to build solutions in the cloud. Some advantages of GCP include flexible billing, fast scaling, global datacenter network, and petabyte data processing capabilities.
Learn how to deliver software like Pivotal and Google.
In this one-day program, Pivotal and Google share how we deliver software applications. By demonstrating the capabilities of a cloud-native software organization, we’ll share the promises Pivotal Cloud Foundry can help you keep when combined with industry-leading services and infrastructure using Google Cloud Platform (GCP).
We built Pivotal Cloud Foundry so you can deliver software with increased velocity and reduced risk. Together we will share how to make the principles of Google’s Site Reliability Engineering (SRE) achievable on Pivotal Cloud Foundry. Google and Pivotal collaborated to make Pivotal Cloud Foundry a reliable place for your applications to live.
The day will open with an introduction to Pivotal, Google, and our shared partner ecosystem. Pivotal will share how culture and technology combine to reinforce each other. We will go hands-on to show you how easy it is to develop applications with Spring Boot, integrate with Google Cloud services, and use Concourse to automate shipping applications to Pivotal Cloud Foundry.
In the afternoon, we’ll show you how Pivotal Cloud Foundry operators can empower development teams by enabling GCP integrations in their Pivotal Cloud Foundry environment. We’ll then focus on the developer experience of integrating applications with GCP’s powerful services.
Questions? Please email us at cloudnativeroadshow@pivotal.io.
The document provides an overview of the Windows Azure Platform. It describes the client, integration, and application layers that make up the platform. It also outlines the data services available, including storage, databases, computing resources, and networking capabilities. Finally, it discusses high availability and deployment options for ensuring reliability and uptime of applications and services built on the Azure platform.
Google Cloud Networking provides a global, flexible, and secure networking foundation for applications and data. Key elements include:
- A global fiber network with over 100 points of presence and hundreds of thousands of miles of cable connecting Google's regions and zones.
- The Andromeda network virtualization stack, which powers VPC networking and provides scalable isolation, high performance, and distributed firewall capabilities.
- Global and regional load balancing options like HTTP(S) and TCP/UDP load balancing for optimizing application delivery worldwide.
- Hybrid connectivity options like Cloud Interconnect, VPN, and Direct Peering to build hybrid cloud architectures connecting on-premises to Google Cloud.
Cloud computing involves delivering computing services over the Internet. Instead of running programs locally, users access software and storage that resides on remote servers in the "cloud." The concept originated in the 1950s but Amazon launched the first major public cloud in 2006. Cloud computing has three main components - clients that access the cloud, distributed servers that host applications and data, and data centers that house these servers. There are different types of clients, deployment models for clouds, service models, and cloud computing enables scalability, reliability, and efficiency for applications accessed over the Internet like email, social media, and search engines.
View these slides if you're you new to cloud computing and would like to learn more about Amazon Web Services (AWS), if you intend to implement a project and would like to discover the basics of the AWS cloud or if you are a business looking to evaluate cloud computing.
In the webinar based on these slides, we answered the following questions:
• What is Cloud Computing with AWS and what benefits can it deliver?
• Who is using AWS and what are they using it for?
• How can I use AWS Services to run my workloads?
View the webinar recording on YouTube here: http://youtu.be/QROD20r6-sQ
Microsoft Azure Platform-as-a-Service (PaaS)Chris Dufour
Azure is Microsoft’s cloud computing platform made up of a growing collection of integrated services: compute, storage, data, networking and apps.
Azure is the only major cloud platform ranked by Gartner as an industry leader for both Infrastructure-as-a-Service (IaaS) and Platform-as-a-Service (PaaS). This powerful combination of managed and unmanaged services lets you build, deploy and manage applications in any way you like for unmatched productivity.
In this talk we will take a look at Microsoft’s cloud strategy and see how you can leverage PaaS in your environment.
The document discusses cloud computing, providing definitions and an overview of key concepts. It describes the three main cloud service models - Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS). Examples of applications are given for each model. Advantages of cloud computing include lower costs, automatic software updates, unlimited storage, and collaboration capabilities. However, cloud computing also has disadvantages such as reliance on internet connectivity and potential security and data loss issues.
OpenStack is an open source cloud computing platform used to build private and public clouds. It controls large pools of compute, storage, and networking resources throughout a data center. OpenStack provides an API and dashboard for provisioning resources on-demand. It uses a modular architecture with components like Nova (compute), Swift (object storage), Cinder (block storage), Neutron (networking), and Keystone (identity). BRAC adopted OpenStack in 2014 to transform its IT infrastructure from physical servers to a private cloud, gaining agility, scalability and cost savings.
This document provides an overview of using Google App Engine to develop a file repository application. It first discusses cloud computing and Google App Engine, including its architecture, key concepts like Bigtable distributed storage and the datastore. It then describes building a file repository app with functions like upload, download and file listing. The app is implemented using Java servlets, JSP, Apache Commons FileUpload and Google APIs.
This document provides an overview of Google App Engine for Java (GAE/J) through a presentation. It discusses key aspects of GAE/J including the scalable infrastructure, programming languages supported, frameworks, development tools, deployment, data storage using the datastore, testing, limits, and services. It emphasizes that GAE/J handles the infrastructure and allows developers to focus on application code without worrying about scaling or maintaining servers.
Java Web Programming on Google Cloud Platform [1/3] : Google App EngineIMC Institute
Google App Engine is a platform for hosting web applications in Google's data centers. It allows developers to build applications on scalable infrastructure without having to manage servers. Key features include automatic scaling, high availability, easy deployment, and built-in services like Datastore, Memcache and Task Queue. The development process involves using the App Engine SDK, which includes a local development server that emulates the live environment. Applications are deployed to App Engine by uploading the compiled code.
This document provides an overview of Google App Engine, including what cloud computing is, the different types of cloud computing models, how App Engine provides a scalable infrastructure, the programming languages and frameworks supported, how data is stored and accessed via the datastore, services available on App Engine like caching, task queues, and mail, and tips for testing and deploying App Engine applications.
The document discusses using Google App Engine and Google Web Toolkit to develop a simple stock market analysis program. It provides an overview of cloud computing and the key aspects of Google App Engine, including its architecture, data storage via Bigtable, and development process. It then describes how the stock analysis program was built with GWT to allow users to search for stock quotes, view their portfolio, and remove stocks, all while taking advantage of Google's cloud infrastructure. Code snippets demonstrate integrating GWT with App Engine for user login/logout and accessing data from the cloud.
This document provides an overview of developing Ajax web applications with Google Web Toolkit (GWT). It begins with introducing traditional web development, rich internet applications (RIAs), and the emergence of Ajax. It then discusses key Ajax technologies like XML, JSON, and JavaScript. The document proceeds to explain GWT, how it allows developing web apps in Java instead of JavaScript, and its benefits like reusability and maintainability. It also provides steps on installing GWT and the GWT Eclipse plugin, creating a sample project structure, and running a basic GWT application.
Scale with a smile with Google Cloud Platform At DevConTLV (June 2014)Ido Green
What is new and hot on Google Cloud?
How can you work like a pro with some (or all) the new APIs and services... Here are some good starting points to follow.
Built on the same infrastructure that allows Google to return billions of search results in milliseconds, serve 6 billion hours of YouTube video per month and provide storage for 680 million Gmail users, Google Cloud Platform enables developers to build, test and deploy applications on Google’s highly-scalable and reliable infrastructure. Wether you use Google Deployment Manager, Ansible, Chef, Puppet, or Salt, you can now virtually automate everything!
App Engine is Google's fully managed platform as a service that allows developers to build and run applications on Google's infrastructure. It provides several services including Cloud Datastore for scalable storage, Cloud SQL for relational databases, Cloud Storage for file storage, and Task Queues for background processing. Developers can build and deploy applications using App Engine's SDKs and APIs, and App Engine automatically scales applications up and down as traffic levels change.
Developing Java Web Applications In Google App EngineTahir Akram
The document provides an overview of developing Java-based web applications using Google App Engine. It discusses the key features and services of GAE including the runtime environment, datastore, memcache, mail, task queues, images, cron jobs, and user authentication. It also covers limitations, demo examples, and resources for learning more.
The document discusses Google App Engine (GAE) and its support for PHP. It provides an overview of GAE and PHP, including supported PHP extensions, tools, and how to connect to Google Cloud SQL and Cloud Storage from PHP applications. It also discusses other GAE services like Memcache, task queues, logging, and cron jobs. The document concludes with examples of applications that can be developed with GAE PHP and limitations to be aware of.
This is the first of 3 parts of GWT Training. It is introduces Ajax and GWT and how to install GWT for Eclipse.
It is for Java Programmers that want to start Ajax development using GWT.
The document discusses Google Web Toolkit (GWT), an open source framework that allows developers to build AJAX applications in Java and deploy them as optimized JavaScript and HTML. It provides an overview of GWT, describing its architecture, key benefits like better development tools and reusable UI components, and how to set up a basic GWT project. It also briefly showcases GWT's remote procedure call (RPC) feature.
This document discusses using various technologies on Google App Engine including JIQL, GaeVFS, RESTlets, scheduled tasks, JRuby on Rails, task queues, XMPP, and Clojure. JIQL emulates a relational database on App Engine's Bigtable datastore. GaeVFS provides a virtual filesystem on Bigtable. RESTlets make RESTful web services easy to implement in Java on App Engine. Scheduled tasks allow for background processing via cron jobs. JRuby on Rails provides a way to run Ruby on Rails applications on App Engine. Task queues allow for asynchronous background processing. XMPP enables instant messaging and peer-to-peer applications. Clojure can also be used
Cloud Computing:
Cloud computing is the delivery of different services through the Internet. These resources include tools and applications like data storage, servers, databases, networking, and software.
Video traffic on the Internet is constantly growing; networked multimedia applications consume a predominant share of the available Internet bandwidth. A major technical breakthrough and enabler in multimedia systems research and of industrial networked multimedia services certainly was the HTTP Adaptive Streaming (HAS) technique. This resulted in the standardization of MPEG Dynamic Adaptive Streaming over HTTP (MPEG-DASH) which, together with HTTP Live Streaming (HLS), is widely used for multimedia delivery in today’s networks. Existing challenges in multimedia systems research deal with the trade-off between (i) the ever-increasing content complexity, (ii) various requirements with respect to time (most importantly, latency), and (iii) quality of experience (QoE). Optimizing towards one aspect usually negatively impacts at least one of the other two aspects if not both. This situation sets the stage for our research work in the ATHENA Christian Doppler (CD) Laboratory (Adaptive Streaming over HTTP and Emerging Networked Multimedia Services; https://athena.itec.aau.at/), jointly funded by public sources and industry. In this talk, we will present selected novel approaches and research results of the first year of the ATHENA CD Lab’s operation. We will highlight HAS-related research on (i) multimedia content provisioning (machine learning for video encoding); (ii) multimedia content delivery (support of edge processing and virtualized network functions for video networking); (iii) multimedia content consumption and end-to-end aspects (player-triggered segment retransmissions to improve video playout quality); and (iv) novel QoE investigations (adaptive point cloud streaming). We will also put the work into the context of international multimedia systems research.
Are you interested in learning about creating an attractive website? Here it is! Take part in the challenge that will broaden your knowledge about creating cool websites! Don't miss this opportunity, only in "Redesign Challenge"!
The DealBook is our annual overview of the Ukrainian tech investment industry. This edition comprehensively covers the full year 2023 and the first deals of 2024.
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...Erasmo Purificato
Slide of the tutorial entitled "Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Emerging Trends" held at UMAP'24: 32nd ACM Conference on User Modeling, Adaptation and Personalization (July 1, 2024 | Cagliari, Italy)
Sustainability requires ingenuity and stewardship. Did you know Pigging Solutions pigging systems help you achieve your sustainable manufacturing goals AND provide rapid return on investment.
How? Our systems recover over 99% of product in transfer piping. Recovering trapped product from transfer lines that would otherwise become flush-waste, means you can increase batch yields and eliminate flush waste. From raw materials to finished product, if you can pump it, we can pig it.
Navigating Post-Quantum Blockchain: Resilient Cryptography in Quantum Threatsanupriti
In the rapidly evolving landscape of blockchain technology, the advent of quantum computing poses unprecedented challenges to traditional cryptographic methods. As quantum computing capabilities advance, the vulnerabilities of current cryptographic standards become increasingly apparent.
This presentation, "Navigating Post-Quantum Blockchain: Resilient Cryptography in Quantum Threats," explores the intersection of blockchain technology and quantum computing. It delves into the urgent need for resilient cryptographic solutions that can withstand the computational power of quantum adversaries.
Key topics covered include:
An overview of quantum computing and its implications for blockchain security.
Current cryptographic standards and their vulnerabilities in the face of quantum threats.
Emerging post-quantum cryptographic algorithms and their applicability to blockchain systems.
Case studies and real-world implications of quantum-resistant blockchain implementations.
Strategies for integrating post-quantum cryptography into existing blockchain frameworks.
Join us as we navigate the complexities of securing blockchain networks in a quantum-enabled future. Gain insights into the latest advancements and best practices for safeguarding data integrity and privacy in the era of quantum threats.
How Netflix Builds High Performance Applications at Global ScaleScyllaDB
We all want to build applications that are blazingly fast. We also want to scale them to users all over the world. Can the two happen together? Can users in the slowest of environments also get a fast experience? Learn how we do this at Netflix: how we understand every user's needs and preferences and build high performance applications that work for every user, every time.
Transcript: Details of description part II: Describing images in practice - T...BookNet Canada
This presentation explores the practical application of image description techniques. Familiar guidelines will be demonstrated in practice, and descriptions will be developed “live”! If you have learned a lot about the theory of image description techniques but want to feel more confident putting them into practice, this is the presentation for you. There will be useful, actionable information for everyone, whether you are working with authors, colleagues, alone, or leveraging AI as a collaborator.
Link to presentation recording and slides: https://bnctechforum.ca/sessions/details-of-description-part-ii-describing-images-in-practice/
Presented by BookNet Canada on June 25, 2024, with support from the Department of Canadian Heritage.
An invited talk given by Mark Billinghurst on Research Directions for Cross Reality Interfaces. This was given on July 2nd 2024 as part of the 2024 Summer School on Cross Reality in Hagenberg, Austria (July 1st - 7th)
INDIAN AIR FORCE FIGHTER PLANES LIST.pdfjackson110191
These fighter aircraft have uses outside of traditional combat situations. They are essential in defending India's territorial integrity, averting dangers, and delivering aid to those in need during natural calamities. Additionally, the IAF improves its interoperability and fortifies international military alliances by working together and conducting joint exercises with other air forces.
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - MydbopsMydbops
This presentation, delivered at the Postgres Bangalore (PGBLR) Meetup-2 on June 29th, 2024, dives deep into connection pooling for PostgreSQL databases. Aakash M, a PostgreSQL Tech Lead at Mydbops, explores the challenges of managing numerous connections and explains how connection pooling optimizes performance and resource utilization.
Key Takeaways:
* Understand why connection pooling is essential for high-traffic applications
* Explore various connection poolers available for PostgreSQL, including pgbouncer
* Learn the configuration options and functionalities of pgbouncer
* Discover best practices for monitoring and troubleshooting connection pooling setups
* Gain insights into real-world use cases and considerations for production environments
This presentation is ideal for:
* Database administrators (DBAs)
* Developers working with PostgreSQL
* DevOps engineers
* Anyone interested in optimizing PostgreSQL performance
Contact info@mydbops.com for PostgreSQL Managed, Consulting and Remote DBA Services
Are you interested in dipping your toes in the cloud native observability waters, but as an engineer you are not sure where to get started with tracing problems through your microservices and application landscapes on Kubernetes? Then this is the session for you, where we take you on your first steps in an active open-source project that offers a buffet of languages, challenges, and opportunities for getting started with telemetry data.
The project is called openTelemetry, but before diving into the specifics, we’ll start with de-mystifying key concepts and terms such as observability, telemetry, instrumentation, cardinality, percentile to lay a foundation. After understanding the nuts and bolts of observability and distributed traces, we’ll explore the openTelemetry community; its Special Interest Groups (SIGs), repositories, and how to become not only an end-user, but possibly a contributor.We will wrap up with an overview of the components in this project, such as the Collector, the OpenTelemetry protocol (OTLP), its APIs, and its SDKs.
Attendees will leave with an understanding of key observability concepts, become grounded in distributed tracing terminology, be aware of the components of openTelemetry, and know how to take their first steps to an open-source contribution!
Key Takeaways: Open source, vendor neutral instrumentation is an exciting new reality as the industry standardizes on openTelemetry for observability. OpenTelemetry is on a mission to enable effective observability by making high-quality, portable telemetry ubiquitous. The world of observability and monitoring today has a steep learning curve and in order to achieve ubiquity, the project would benefit from growing our contributor community.
How to Avoid Learning the Linux-Kernel Memory ModelScyllaDB
The Linux-kernel memory model (LKMM) is a powerful tool for developing highly concurrent Linux-kernel code, but it also has a steep learning curve. Wouldn't it be great to get most of LKMM's benefits without the learning curve?
This talk will describe how to do exactly that by using the standard Linux-kernel APIs (locking, reference counting, RCU) along with a simple rules of thumb, thus gaining most of LKMM's power with less learning. And the full LKMM is always there when you need it!
AC Atlassian Coimbatore Session Slides( 22/06/2024)apoorva2579
This is the combined Sessions of ACE Atlassian Coimbatore event happened on 22nd June 2024
The session order is as follows:
1.AI and future of help desk by Rajesh Shanmugam
2. Harnessing the power of GenAI for your business by Siddharth
3. Fallacies of GenAI by Raju Kandaswamy
this resume for sadika shaikh bca studentSadikaShaikh7
I am a dedicated BCA student with a strong foundation in web technologies, including PHP and MySQL. I have hands-on experience in Java and Python, and a solid understanding of data structures. My technical skills are complemented by my ability to learn quickly and adapt to new challenges in the ever-evolving field of computer science.
How RPA Help in the Transportation and Logistics Industry.pptxSynapseIndia
Revolutionize your transportation processes with our cutting-edge RPA software. Automate repetitive tasks, reduce costs, and enhance efficiency in the logistics sector with our advanced solutions.
2. Generally, we talk about cloud computing when
taking applications and running them on other
infrastructure than your own.
As a developer, think of cloud computing as a service
that provides a resource that your application needs
to work (this resource may be a platform, an
infrastructure (i.e. servers), a framework).
What is Cloud?
4. Google Cloud Platform enables developers to build, test
and deploy applications on Google’s highly-scalable and
reliable infrastructure. Choose from computing, storage
and application services for your web, mobile and backend
solutions.
Google Cloud Platform is a set of modular cloud-based
services that allow you to create anything from simple
websites to complex applications.
Introduction
7. Build on the same infrastructure that allows Google to
return billions of search results in milliseconds, serve 6
billion hours of YouTube video per month and provide
storage for 425 million Gmail users.
➔ Global Network
➔ Redundancy
➔ Innovative Infrastructure
#1 Run on Google’s Infrastructure
8. Rapidly develop, deploy and iterate your applications
without worrying about system administration. Google
manages your application, database and storage servers so
you don’t have to.
➔ Managed services
➔ Developer Tools and SDKs
➔ Console and Administration
#2 Focus on your product
9. Virtual machines. Managed platform. Blob storage. Block
storage. NoSQL datastore. MySQL database. Big Data
analytics.
Google Cloud Platform has all the services your application
architecture needs.
➔ Compute
➔ Storage
➔ Services
#3 Mix and Match Services
10. Applications hosted on Cloud Platform can automatically scale up
to handle the most demanding workloads and scale down when
traffic subsides. You pay only for what you use.
Scale-up: Cloud Platform is designed to scale like Google’s
own products, even when you experience a huge traffic
spike. Managed services such as App Engine or Cloud
Datastore give you auto-scaling that enables your application
to grow with your users.
Scale-down: Just as Cloud Platform allows you to scale-up,
managed services also scale down. You don’t pay for
computing resources that you don’t need.
#4 Scale to millions of users
11. Google’s compute infrastructure gives you consistent CPU,
memory and disk performance. The network and edge cache
serve responses rapidly to your users across the world.
➔ CPU, Memory and Disk
➔ Global Network
➔ Transparent maintenance
#5 Performance you can count on
12. With a worldwide community of users, partner ecosystem
and premium support packages, Google provides a full
range of resources to help you get started and grow.
#6 Get the support you need
14. Run your applications on a fully-managed Platform-as-a-
Service (PaaS) using built-in services that make you more
productive.
Use App Engine, when you just want to focus on your
code and not worry about patching or maintenance.
App Engine
15. Popular languages and frameworks
Focus on your code
Multiple storage options
Powerful built-in services
Familiar development tools
Deploy at Google scale
App Engine Features
16. Run large-scale workloads on virtual machines hosted on
Google's infrastructure. Choose a VM that fits your needs and
gain the performance of Google’s worldwide fiber network.
Compute Engine
17. High-performance virtual machines
Powered by Google’s global network
(Really) Pay for what you use
Global load balancing
Fast and easy provisioning
Compliance and security
Compute Engine Features
18. The App Engine offers frequently standard Java API's and
App Engine specific API's for the same task. If you want to
be able to port your application from the AppEngine to
other webcontainers, e.g. Tomcat or Jetty, you should
only use Java standard API.
Google App Engine for Java
19. App Engine uses the Jetty servlet container to host
applications and supports the Java Servlet API. It provides
access to databases via Java Data Objects (JDO) and
the Java Persistence API (JPA). In the background App
Engine uses Google Bigtable as the distributed storage
system for persisting application data.
Google App Engine for Java
20. Google provides Memcache as a caching mechanism.
Developers who want to code against the standard Java
API can use the JCache implementation (based on JSR
107).
Google App Engine for Java
21. Google App Engine supports the creation of several
version of your application. In the Admin Console you can
select which version should be active. Your active
application "your-name" will be accessible via the URL
"http://your-name.appspot.com". Each version can also
be accessed for example to test a new version. The
version are accessable via
"http://versionnumber.latest.your-name.appspot.com"
where version is for example "2" and "latest" is a fixed
string.
Google App Engine for Java
22. You cannot use Threads or frameworks which uses Threads.
You can also not write to the filesystem and only read files
which are part of your application. Certain "java.lang.System"
actions, e.g. gc() or exit() will do nothing. You can not call JNI
code. Reflection is possible for your own classes and standard
Java classes but your cannot use reflection to access other
classes outside your application.
A servlet needs also to reply within 30 seconds otherwise a
"com.google.apphosting.api.DeadlineExceededException" is
thrown.
Google App Engine for Java
23. Google offers an Eclipse plug-in that provides support for the
development with the Google App Engine as well as GWT
development
Google lists the currently supported version in its Google Plug-
in for Eclipse page.
Use Eclipse update manager to install the tools in the version
for your Eclipse IDE.
The installation will also setup the GWT and App Engine SDK
into your Eclipse preferences.
To check this use Window →Preferences → Google
→ App Engine / Web Toolkit.
Installation of the Google Tools
for Eclipse
29. Visit the Google Cloud console.
If necessary, sign in to your Google Account, select or create
a project, and agree to the terms of service. Click Continue.
Select the "Web Application" platform, and click Register.
Within "OAuth 2.0 Client ID", click on "Download JSON".
Register Your Application
30. Later on, after you check out the sample project, you will
copy this downloaded file
(e.g. ~/Downloads/client_secrets.json) to
src/main/resources/client_secrets.json. If you skip this step,
when trying to run the sample you will get a 400
INVALID_CLIENT error in the browser.
Within "OAuth 2.0 Client ID", in the "Redirect URI" field
enter some redirect URIs, for example
"https://yourappname.appspot.com/oauth2callback" and
"http://localhost:8888/oauth2callback".
Register Your Application
31. cd [someDirectory]
hg clone https://code.google.com/p/google-api-java-client.samples/
google-api-java-client-samples
cd google-api-java-client-samples/calendar-appengine-sample
cp ~/Downloads/client_secrets.json
src/main/resources/client_secrets.json
mvn clean package
Checkout Instructions
32. To run your application locally on a development server:
mvn appengine:devserver
To deploy your application to appspot.com:
If this is the first time you are deploying your application to
appspot.com, you will to perform the following steps first.
Go to https://appengine.google.com and create an application.
Edit src/main/webapp/WEB-INF/appengine-web.xml, and enter the
unique application identifier (you chose it in the prior step)
between the <application> tags.
Running and Deploying Your
Application
33. If you've done the above, you can deploy at any time:
mvn appengine:update
If this is the first time you have run "update" on the project, a
browser window will open prompting you to log in. Log in with
the same Google account the app is registered with.
Running and Deploying Your
Application
34. Setup Eclipse Preferences
Window > Preferences... (or on Mac, Eclipse > Preferences...)
Select Maven
check on "Download Artifact Sources"
check on "Download Artifact JavaDoc"
Setup Project in Eclipse
35. Import calendar-appengine-sample project
File > Import...
Select "General > Existing Project into Workspace" and click "Next"
Click "Browse" next to "Select root directory",
find [someDirectory]/google-api-java-client-samples/calendar-
appengine-sample and click "Next"
Click "Finish"
NOTE: please ignore the "The App Engine SDK JAR * is missing in
the WEB-INF/lib directory" error messages.
Setup Project in Eclipse
36. Run
Right-click on project calendar-appengine-sample
Run As > Web Application
Setup Project in Eclipse
38. Use a durable and highly available object storage service.
With global edge-caching, your users have fast access to
your app’s data from any location.
Cloud Storage
39. Secure and safe
Competitive and flexible pricing
Object storage with a fully-featured API
Flexible access
Cloud Storage Features
40. Use a managed, NoSQL, schemaless database for storing
non-relational data. Cloud Datastore automatically scales
as you need it and supports transactions as well as robust,
SQL-like queries.
Cloud Datastore
41. Schemaless access, with SQL-like querying
Managed database
Autoscale with your users
ACID transactions
Built-in redundancy
Local development tools
Access your data from anywhere
Cloud Datastore Features
42. Store and manage data using a fully-managed, relational
MySQL database. Google handles replication, patch
management and database management to ensure
availability and performance.
Cloud SQL
43. Familiar Infrastructure
Flexible Charging
Security, Availability, Durability
Easier Migration; No Lock-in
Control
Fully managed
Cloud SQL Features
45. Analyze Big Data in the cloud with BigQuery.
Run fast, SQL-like queries against multi-terabyte datasets
in seconds.
Scalable and easy to use, BigQuery gives you real-time
insights about your data.
Flexible Access (ReST APIs, JSON-RPC, Google Apps Script).
Big Query
50. Compact subset of SQL
SELECT ... FROM ...
WHERE ...
GROUP BY ... ORDER BY ...
LIMIT ...;
Writing Queries
Common functions
Math, String, Time, ...
Statistical approximations
TOP
COUNT DISTINCT
51. GET /bigquery/v1/tables/{table name}
GET /bigquery/v1/query?q={query}
Sample JSON Reply:
{
"results": {
"fields": { [
{"id":"COUNT(*)","type":"uint64"}, ... ]
},
"rows": [
{"f":[{"v":"2949"}, ...]},
{"f":[{"v":"5387"}, ...]}, ... ]
}
}
Also supports JSON-RPC
Big Query via ReST
52. Standard Google Authentication
● Client Login
● OAuth
● AuthSub
HTTPS support
● protects your credentials
● protects your data
Relies on Google Storage to manage access
Big Query Security and Privacy
54. Create ReSTful services and make them accessible to iOS,
Android and Javascript clients. Automatically generate
client libraries to make wiring up the frontend easy. Built-in
features include denial-of-service protection, OAuth 2.0
support and client key management.
Cloud Endpoints
56. Quickly and dynamically translate between thousands of
available language pairs within your app, integrating with
Google Translate.
Translate API
57. Dynamically access languages
Accessible with Google API
Affordable, easy pricing
Translate API Features
58. Use Google’s machine learning algorithms to analyze data
and predict future outcomes using a familiar ReSTful
interface.
Prediction API
59. Put your data to use
Fast and reliable
Cloud integration
Powerful development tools
Examples and support
Flexible pricing
Prediction API Features
63. Upload your training data to Google Storage
● Training data: outputs and input features
● Data format: comma separated value format (CSV)
"english","To err is human, but to really ..."
"spanish","No hay mal que por bien no venga."
...
Upload to Google Storage
gsutil cp ${data} gs://yourbucket/${data}
Step 1: Upload
64. Create a new model by training on data
To train a model:
POST prediction/v1.3/training
{"id":"mybucket/mydata"}
Training runs asynchronously.
To see if it has finished:
GETprediction/v1.3/training/mybucket%2Fmydata
{"kind": "prediction#training", ... ,"training
status": "DONE"}
Step 2: Train
65. Apply the trained model to make predictions on new data
POST
prediction/v1.3/training/mybucket%2Fmydata/predict
{ "data":{
"input": { "text" : [
"J'aime X! C'est le meilleur" ]}}}
Step 3: Predict
66. Apply the trained model to make predictions on new data
{ data : {
"kind" : "prediction#output",
"outputLabel":"French",
"outputMulti" :[
{"label":"French", "score": x.xx}
{"label":"English", "score": x.xx}
{"label":"Spanish", "score": x.xx}]}}
Step 3: Predict
67. import httplib
// put new data in JSON format in params variable
header = {"Content-Type" : "application/json"}#...
conn =
httplib.HTTPConnection("www.googleapis.com")conn.request
("POST", "/prediction/v1.3/query/bucket%2Fdata/predict",
params, header) print conn.getresponse()
Step 3: Predict
68. Google Cloud Platform offer $300 in credit to spend on all
Cloud Platform products for your first 60 days. Your trial is
absolutely free and you will not be billed unless you decide to
upgrade to a paid account.
During free trial, there are some product limitations. Compute
Engine is limited to eight concurrent cores at a time.
Free trial is for anyone new to Cloud Platform. Existing
customers that have paid for Cloud Platform in the past are
not eligible.
Pricing: free trial
70. • Google Cloud Platform Developers Portal:
https://cloud.google.com/developers
• Google Developers Global Portal:
https://developers.google.com
• Google Cloud Platform Products list:
https://cloud.google.com/products/
• Google App Engine
http://code.google.com/apis/storage
• Google Storage for Developers
http://code.google.com/apis/storage
• Google Prediction API
http://code.google.com/apis/predict
• Google BigQuery
http://code.google.com/apis/bigquery
Useful links
71. Thank You!
please leave a feedback
Francesco Marchitelli
marchitelli.francesco@gmail.com
@marcyborg