SlideShare ist ein Scribd-Unternehmen logo
1 von 198
Downloaden Sie, um offline zu lesen
Christopher M. Judd
in the cloud
Thursday, August 29, 13
Christopher M. Judd
CTO and Partner at
leader
Columbus Developer User Group (CIDUG)
Thursday, August 29, 13
https://github.com/zendern/nuez
Thursday, August 29, 13
Thursday, August 29, 13
Thursday, August 29, 13
What is cloud
computing?
How is different
from what I am
doing today?
How do I get
started?
Will I get a raise?
Thursday, August 29, 13
Cloud Computing
Thursday, August 29, 13
Cloud computing is the delivery of computing as a service
rather than a product, whereby shared resources, software,
and information are provided to computers and other
devices as a metered service over a network (typically the
Internet).
Thursday, August 29, 13
Software as a service (SaaS) - “on-demand” software
Platform as a service (PaaS) - solution stack
Infrastructure as a service (IaaS) - virtual computing
infrastructure
Thursday, August 29, 13
PaaS IaaS
AWS Elastic Beanstalk
➡flexibility
➡complexity
➡cost
Thursday, August 29, 13
DevOps
an emerging set of principles, methods and practices for communication, collaboration and integration between
software development (application/software engineering) and IT operations (systems administration/
infrastructure) professionals. It has developed in response to the emerging understanding of the
interdependence and importance of both the development and operations disciplines in meeting an
organization's goal of rapidly producing software products and services.
Thursday, August 29, 13
treat infrastructure like
cattle not like pets
Thursday, August 29, 13
Current
Architecture
Thursday, August 29, 13
traditional Java architecture
Thursday, August 29, 13
traditional Java architecture
Thursday, August 29, 13
traditional Java architecture
Thursday, August 29, 13
traditional Java architecture
Thursday, August 29, 13
traditional Java architecture
Thursday, August 29, 13
traditional Java architecture
Thursday, August 29, 13
Thursday, August 29, 13
Thursday, August 29, 13
Thursday, August 29, 13
AWS architecture
Thursday, August 29, 13
AWS architecture
Thursday, August 29, 13
Amazon web services architecture
Thursday, August 29, 13
AWS Elastic Beanstalk architecture
Thursday, August 29, 13
AWS architecture
Thursday, August 29, 13
Registration
Thursday, August 29, 13
http://aws.amazon.com/
start here
Thursday, August 29, 13
need a valid email address
Thursday, August 29, 13
Thursday, August 29, 13
Thursday, August 29, 13
Thursday, August 29, 13
Thursday, August 29, 13
Thursday, August 29, 13
Thursday, August 29, 13
AWS Account
admins opsdevelopers
user/group based security
Thursday, August 29, 13
Thursday, August 29, 13
developers
cmj njz jjs cmj0
* all accounts will be removed in a month
563700736850
Thursday, August 29, 13
http://escab.elasticbeanstalk.com/registration/
Register for your user account
You AWS Credentials will be emailed to you. If you don’t see it
check your spam folder.
Thursday, August 29, 13
https://github.com/zendern/escab
Thursday, August 29, 13
https://563700736850.signin.aws.amazon.com/console
initials
codemash
AWS account #
Thursday, August 29, 13
https://console.aws.amazon.com
Thursday, August 29, 13
Interfaces
Thursday, August 29, 13
Web Console
Thursday, August 29, 13
Command-line
Thursday, August 29, 13
SDK Language Support
http://aws.amazon.com/tools/
Thursday, August 29, 13
EC2
Thursday, August 29, 13
Thursday, August 29, 13
A virtual machine (VM) is a software implementation of a machine (i.e. a computer) that executes
programs like a physical machine. Virtual machines are separated into two major categories, based on their
use and degree of correspondence to any real machine. A system virtual machine provides a complete
system platform which supports the execution of a complete operating system (OS). In contrast, a process
virtual machine is designed to run a single program, which means that it supports a single process. An
essential characteristic of a virtual machine is that the software running inside is limited to the resources and
abstractions provided by the virtual machine—it cannot break out of its virtual world.
Thursday, August 29, 13
AMIs (Amazon Machine Images)
Thursday, August 29, 13
Public AMIs
8180 of them and counting
http://aws.amazon.com/amis
Thursday, August 29, 13
That's awesome....
All I have to do is find what I need and off I go. 
Someone else created it, maintains it.... 
Thursday, August 29, 13
But there could be some issues
with using these.....
Thursday, August 29, 13
Did this guy setup this server?
Thursday, August 29, 13
Who knows....
Thursday, August 29, 13
Don't be discouraged....
http://cloud.ubuntu.com/ami/
http://fedoraproject.org/wiki/Cloud_images
http://blog.susestudio.com/2011/03/opensuse-114-for-amazon-ec2.html
Thursday, August 29, 13
Amazon Elastic Compute Cloud (Amazon EC2)
is a web service that provides resizable compute capacity in
the cloud. It is designed to make web-scale computing
easier for developers.
• Elastic
• Completely Controlled
• Flexible
• Reliable
Thursday, August 29, 13
EC2 Instance Types
•Micro
•M1 Small
•M1 Medium
•M1 Large
•M1 Extra Large
•M3 Extra Large
•M3 Double Extra Large
•High Memory Extra Large
•High Memory Double Extra Large
•High Memory Quadruple Extra Large
•High CPU Medium
•High CPU Extra Large
•Cluster Compute Eight Extra Large
•Cluster GPU Quadruple Extra Large
•High I/O Quadruple Extra Large
•High Storage
Thursday, August 29, 13
Cost for On Demand
Thursday, August 29, 13
Cost for Reserved Instances
Thursday, August 29, 13
Bandwidth Pricing
Thursday, August 29, 13
EC2
with
web console
Thursday, August 29, 13
Thursday, August 29, 13
start here
Thursday, August 29, 13
then here or here
Thursday, August 29, 13
launch here
Thursday, August 29, 13
Thursday, August 29, 13
search for codemash select JavaWebServer AMI
7.x
Thursday, August 29, 13
effects redundancy and scale effects price and performance
effects availability zone
Thursday, August 29, 13
nothing to do here
Thursday, August 29, 13
nothing to do here
Thursday, August 29, 13
name instance with naming convention
Thursday, August 29, 13
create or use key pair for remote login
create new key pair name key pair
download key pair
and copy it to ~/.ssh
Thursday, August 29, 13
ssh rule
allowed ip addresses
Thursday, August 29, 13
ssh
open to the world
tomcat
Thursday, August 29, 13
Increased Security
Thursday, August 29, 13
your done
Thursday, August 29, 13
ok, almost done
Thursday, August 29, 13
your new instance
server name
Thursday, August 29, 13
Thursday, August 29, 13
Remote access to your EC2 instance
$ ssh -i ~/.ssh/your-key-pair.pem ec2-user@ec2-23-22-9-39.compute-1.amazonaws.com
The authenticity of host 'ec2-23-22-9-39.compute-1.amazonaws.com (50.19.72.29)' can't be
established.
RSA key fingerprint is 0b:c1:e1:b4:50:ec:cf:e7:a5:cb:20:4f:74:34:c5:29.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'ec2-23-22-9-39.compute-1.amazonaws.com,50.19.72.29' (RSA) to the
list of known hosts.
key downloaded earlier login as ec2-user server name
Thursday, August 29, 13
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for '~/.ssh/your-key-pair.pem' are too open.
It is recommended that your private key files are NOT accessible by others.
This private key will be ignored.
bad permissions: ignore key: ~/.ssh/your-key-pair.pem
Permission denied (publickey).
don’t panic
$ chmod 400 ~/.ssh/your-key-pair.pem
Thursday, August 29, 13
$ssh -i ~/.ssh/your-key-pair.pem ec2-user@ec2-50-19-72-29.compute-1.amazonaws.com
Last login: Thu Dec 29 13:47:16 2011 from 70.60.135.250
__| __|_ )
_| ( / Amazon Linux AMI
___|___|___|
See /usr/share/doc/system-release/ for latest release notes.
There are 3 security update(s) out of 4 total update(s) available
-bash: EXPORT: command not found
[ec2-user@ip-10-245-202-126 ~]$
your in, now you can:
install software
start services
Thursday, August 29, 13
SSHing using Putty
Thursday, August 29, 13
Importing the PEM file
Import PEM file
for conversion
Thursday, August 29, 13
Conversion of Pem to PPK
Save private key
(ppk)
Thursday, August 29, 13
Setting up Putty to use PPK
1. Navigate to
Connection> SSH
> Auth
2. Select ppk file here
Thursday, August 29, 13
Log in via Putty
When prompted for login enter ec2-user
Thursday, August 29, 13
create a new AMI from this
Thursday, August 29, 13
Regions and Availability Zones
Thursday, August 29, 13
Regions and Availability Zones
US West US East
us-east-1b us-east-1c
us-east-1aus-west-1a
us-west-1b us-west-1c
Thursday, August 29, 13
Regions and Availability Zones
N. California N.Virginia
us-east-1b us-east-1c
us-east-1aus-west-1a
us-west-1b us-west-1c
Thursday, August 29, 13
Thursday, August 29, 13
change region here
Half/Half
Thursday, August 29, 13
EC2
with
Command Line
Thursday, August 29, 13
Setup For Console Usage
Thursday, August 29, 13
Console Environment Setup
• Download AWS Console API Tools
o http://developer.amazonwebservices.com/connect/entry.jspa?externalID=351&categoryID=88
• Setup Your Path
o export EC2_HOME=<Path to extracted download above>
o export PATH=$PATH:$EC2_HOME/bin
o export EC2_PRIVATE_KEY=<Path to downloaded key pair>
o export EC2_CERT=<Path to downloaded X.509 certificate>
o export JAVA_HOME=<Path to java install>
Thursday, August 29, 13
Console Usage
• ec2-describe-images -o amazon
• ec2-add-keypair <key-pair-name>
• ec2-add-group <sec-group> -d <description>
• ec2-authorize <sec-group> -p 22
• ec2-run-instances <ami-id> -k <key-pair-name> -g <sec-group>
• ec2-describe-instances
• ssh -i <key-pair-pem-file> ec2-user@ec2-xx-xxx-xx-
xx.compute-1.amazonaws.com
• ec2-stop-instances <instance-id>
• ec2-terminate-instances <instance-id>
Thursday, August 29, 13
EC2
with
Java SDK
Thursday, August 29, 13
//SETUP CREDENTIALS
AWSCredentials creds = new
PropertiesCredentials(this.getClass().getResourceAsStream("/awsCredentials.properties")); 
//CREATING EC2 CLIENT
AmazonEC2 ec2 = new AmazonEC2Client(creds);
Letting AWS know who you are
Using Java SDK
Thursday, August 29, 13
Creating a New Key PairUsing Java SDK
CreateKeyPairRequest createKeyPairRequest = new CreateKeyPairRequest();
String keyName = "testKeyPair-fromjava";
createKeyPairRequest.withKeyName(keyName);
CreateKeyPairResult createKeyPairResult = ec2.createKeyPair(createKeyPairRequest);
KeyPair keyPair = createKeyPairResult.getKeyPair();
File pemFile = new File(keyName + ".pem");
BufferedWriter out = new BufferedWriter(new FileWriter(pemFile));
out.write(keyPair.getKeyMaterial());
out.close();
Thursday, August 29, 13
Creating a Security Group
Using the Java SDK
CreateSecurityGroupRequest r1 = new CreateSecurityGroupRequest("webserver-group", "Sec
Group for My Web Servers");
ec2.createSecurityGroup(r1);
AuthorizeSecurityGroupIngressRequest r2 = new AuthorizeSecurityGroupIngressRequest();
r2.setGroupName("webserver-group"); 
IpPermission permission = new IpPermission(); 
permission.setIpProtocol("tcp"); 
permission.setFromPort(80); 
permission.setToPort(80); 
List ipRanges = new ArrayList(); 
//use CIDR notation, see http://en.wikipedia.org/wiki/CIDR_notation
ipRanges.add("0.0.0.0/0"); permission.setIpRanges(ipRanges); 
List permissions = new ArrayList(); 
permissions.add(permission); 
r2.setIpPermissions(permissions);  
ec2.authorizeSecurityGroupIngress(r2);
Thursday, August 29, 13
Creating the EC2 InstanceUsing the Java SDK
// CREATE EC2 INSTANCES
RunInstancesRequest runInstancesRequest = new RunInstancesRequest()
    .withInstanceType("micro")
    .withImageId("ami-4bb96d22")
    .withMinCount(1)
    .withMaxCount(1)
    .withSecurityGroupIds("webserver-group")
    .withKeyName("testKeyPair-fromjava");
RunInstancesResult runInstances = ec2.runInstances(runInstancesRequest);
Thursday, August 29, 13
Giving the Instance Metadata
// TAG EC2 INSTANCES WITH USER METADATA
List<Instance> instances = runInstances.getReservation().getInstances();
for (Instance instance : instances) {
CreateTagsRequest createTagsRequest = new CreateTagsRequest();
createTagsRequest.withResources(instance.getInstanceId())
.withTags(new Tag("Name", "MyFirstEC2Instance"));
ec2.createTags(createTagsRequest);
}
Thursday, August 29, 13
Stopping/Terminating EC2 Instance
TerminateInstancesRequest terminateInstanceRequest =
new TerminateInstancesRequest().withInstanceIds(instanceIds);
ec2.terminateInstances(terminateInstanceRequest);
StopInstancesRequest stopInstanceRequest =
new StopInstancesRequest().withInstanceIds(instanceIds);
ec2.terminateInstances(stopInstanceRequest);
Thursday, August 29, 13
http://puppetlabs.com/
http://www.opscode.com/chef/
Infrastructure Automation
AWS CloudFormation
http://aws.amazon.com/cloudformation/
Thursday, August 29, 13
Lab 1
1. Start instance of UberConf-2013-JavaWebServer
2. Verify Tomcat is running accessible
3. ssh to JavaWebServer instance
4. Stop JavaWebServer instance
5. Restart JavaWebServer instance
Thursday, August 29, 13
Storage
Thursday, August 29, 13
• Structured Data
• Amazon DynamoDB - NoSQL DB
• Relational Databases (in EC2 and EBS)
• Amazon RDS - Managed databases like mysql
• Amazon ElasticCache - in-memory cache
• Amazon Redshift - petabyte-scale data warehouse
• Unstructured Data
• Amazon EC2 Instance Storage - local filesystem
• Amazon EBSVolumes - remote mounted filesystem
• Amazon S3 - bucket storage
• Amazon Glacier - archiving and backup
Storage Options
Thursday, August 29, 13
instance
EBS
Thursday, August 29, 13
Thursday, August 29, 13
S3 Pricing
Thursday, August 29, 13
EBS Pricing
Thursday, August 29, 13
Database
Thursday, August 29, 13
Thursday, August 29, 13
launch here
Thursday, August 29, 13
search for codemash select MySqlServer AMI
5.5
Thursday, August 29, 13
Thursday, August 29, 13
nothing to do here
Thursday, August 29, 13
nothing to do here
Thursday, August 29, 13
name instance with naming convention
Thursday, August 29, 13
select existing key pairs
Thursday, August 29, 13
developer’s machine
web application security group
Thursday, August 29, 13
Thursday, August 29, 13
Thursday, August 29, 13
$ ssh -i ~/.ssh/your-key-pair.pem ec2-user@ec2-184-72-144-98.compute-1.amazonaws.com
$ mysql -u codemash -pcodemash -e ‘create database nuez’
Thursday, August 29, 13
$ mysql -h ec2-54-243-16-144.compute-1.amazonaws.com -u codemash -p nuez
Thursday, August 29, 13
user = codemash
password = codemash
Thursday, August 29, 13
// environment specific settings
environments {
development {
dataSource {
dbCreate = "update"
url = "jdbc:h2:mem:devDb;MVCC=TRUE"
}
}
test {
dataSource {
dbCreate = "update"
url = "jdbc:h2:mem:testDb;MVCC=TRUE"
}
}
production {
dataSource {
driverClassName = "com.mysql.jdbc.Driver"
dialect = "org.hibernate.dialect.MySQL5Dialect"
username = "codemash"
password = "codemash"
dbCreate = "update"
url = "jdbc:mysql://ec2-184-72-144-98-compute-1.amazonaws.com:3306/nuez"
pooled = true
properties {
maxActive = -1
minEvictableIdleTimeMillis = 1800000
timeBetweenEvictionRunsMillis = 1800000
numTestsPerEvictionRun = 3
testOnBorrow = true
testWhileIdle = true
testOnReturn = true
validationQuery = "SELECT 1"
}
}
}
}
mysql instance urlusername/password
grails-app/conf/DataSource.groovy
Thursday, August 29, 13
grails war
Thursday, August 29, 13
$ scp -i ~/.ssh/your-key-pair.pem target/nuez-0.1.war ec2-user@
ec2-23-22-9-39.compute-1.amazonaws.com:/usr/share/tomcat7/webapps/nuez.war
nuez-0.1.war 100% 27MB 666.3KB/s 00:42
Secure Copy War
Thursday, August 29, 13
SCP using Windows
Enter ec2-user here
Select you ppk
file here
Enter machine name
here
Thursday, August 29, 13
Lab 2
1. Start instance of UberConf-2013-MySqlServer
2. Connect with mysql tool or ssh to instance
3. Create nuez database (if not created already)
4. Change nuez application database string
5. Deploy nuez application
6. Test nuez application
Thursday, August 29, 13
Load Balancing
Thursday, August 29, 13
Thursday, August 29, 13
Launch
Launch Similar EC2 Instance
Thursday, August 29, 13
Launch
Thursday, August 29, 13
Load Balancing Instances
Thursday, August 29, 13
Configure Health Check
Thursday, August 29, 13
Select EC2 Instances
Thursday, August 29, 13
Review
Thursday, August 29, 13
Almost done
Thursday, August 29, 13
Here is the base url
to access the load
balancer
Getting url to load balancer
Thursday, August 29, 13
Lab 3
1. Create/start another instance of UberConf-2013-
JavaWebServer
2. Create a new load balancer
3. Add both UberConf-2013-JavaWebServer EC2 instances
to load balancer
Thursday, August 29, 13
CDN
Thursday, August 29, 13
Thursday, August 29, 13
CloudFront Pricing
Thursday, August 29, 13
Start by creating a bucket
Setting up S3 with CloudFront
Thursday, August 29, 13
Logging can also be enabled
to tell you more about
your S3 usage
Click here to name and
finish creating your
bucket
Name S3 Bucket
Thursday, August 29, 13
Create S3 directory structure
Click here to create a new
folder inside your bucket
After clicking you will be
prompted to enter the name
here
Thursday, August 29, 13
Create this structure using
the same names
Create S3 directory structure (continued)
Create this structure using
the same names
Thursday, August 29, 13
Uploading Static Content
Upload content destination folder
Thursday, August 29, 13
Click here to add files
(Multi file selection is possible
when browse window opens)
Uploading (continued)
Thursday, August 29, 13
Select corresponding static
files located in the webapp on
your machine to be uploaded
into S3
Uploading (continued)
Thursday, August 29, 13
Finish by pressing “Start
Upload”
Uploading(Almost done)
Thursday, August 29, 13
Make All S3 Files Public
Click here to make all files
under this directory available
to the world
Thursday, August 29, 13
Creating a new Cloudfront
Start by clicking here
or here
Thursday, August 29, 13
Selecting CDN Type
(download vs. streaming)
Thursday, August 29, 13
Setting up S3 as Origin
Thursday, August 29, 13
Thursday, August 29, 13
<link rel="shortcut icon" href="${grailsApplication.config.cloudfront.cdn.url}
${resource(dir: 'images', file: 'favicon.ico')}" type="image/x-icon">
Grails Resource Change to Support CDN url
Thursday, August 29, 13
environments {
development {
grails.logging.jul.usebridge = true
	 	 cloudfront.cdn.url = ""
}
production {
grails.logging.jul.usebridge = false
	 	 cloudfront.cdn.url = "http://your.cloudfront.net"
}
}
Configure Web App
Config.groovy
Thursday, August 29, 13
Lab 4
1. Create new S3 bucket
2. Create directory structure in S3
3. Upload all static content to S3 in the appropriate
directories
4. Create new CloudFront distribution
5. Update nuez to use CloudFront distribution url
6. Redeploy nuez web app
7. Test
Thursday, August 29, 13
Elastic Beanstalk
Thursday, August 29, 13
Elastic Beanstalk
Select you platform
Thursday, August 29, 13
Elastic Beanstalk (Default application)
Thursday, August 29, 13
Elastic Beanstalk (Default application)
Thursday, August 29, 13
Creating your own application
Start here
Thursday, August 29, 13
Thursday, August 29, 13
Thursday, August 29, 13
Thursday, August 29, 13
Thursday, August 29, 13
Thursday, August 29, 13
Use these fields to construct
connection string for application
Thursday, August 29, 13
Update Nuez with RDS Connection
// environment specific settings
environments {
development {
dataSource {
dbCreate = "update"
url = "jdbc:h2:mem:devDb;MVCC=TRUE"
}
}
test {
dataSource {
dbCreate = "update"
url = "jdbc:h2:mem:testDb;MVCC=TRUE"
}
}
production {
dataSource {
driverClassName = "com.mysql.jdbc.Driver"
dialect = "org.hibernate.dialect.MySQL5Dialect"
username = "codemash"
password = "codemash"
dbCreate = "update"
url = "jdbc:mysql://aa1w2u6dik6dppm.cdrw92njsm5b.us-west-1.rds.amazonaws.com:3306/ebdb"
pooled = true
properties {
maxActive = -1
minEvictableIdleTimeMillis = 1800000
timeBetweenEvictionRunsMillis = 1800000
numTestsPerEvictionRun = 3
testOnBorrow = true
testWhileIdle = true
testOnReturn = true
validationQuery = "SELECT 1"
}
}
}
}
rds url
Thursday, August 29, 13
Deploy the latest version of nuez
Thursday, August 29, 13
Thursday, August 29, 13
Thursday, August 29, 13
Start here to modify
server configurations
Thursday, August 29, 13
Thursday, August 29, 13
Thursday, August 29, 13
Thursday, August 29, 13
Pricing
Thursday, August 29, 13
pay as you use
Thursday, August 29, 13
use small EC2 instance for one hour and pay $0.065
Thursday, August 29, 13
On-Demand - pay by hour no long-term commitment
Reserved - one-time payment and discounted hourly rate
Spot - bid for unused capacity
Example:
* small instance for one year
On-Demand - $569.40 ($0.065/hr)
Light Reserved - $410.64 ($0.039/hr + $69)
Medium Reserved - $370.24 ($0.024/hr + $160)
Heavy Reserved - $335.16 ($0.016/hr + $195)
Thursday, August 29, 13
Thursday, August 29, 13
http://aws.amazon.com/calculator
Thursday, August 29, 13
Thursday, August 29, 13
Resources
Thursday, August 29, 13
Thursday, August 29, 13
Thursday, August 29, 13
http://aws.amazon.com/architecture/
Thursday, August 29, 13
http://aws.amazon.com/architecture/
Thursday, August 29, 13
Thursday, August 29, 13
http://www.infoq.com/presentations/Netflix-in-the-Cloud
Thursday, August 29, 13
CTO and Partner
email: cjudd@juddsolutions.com
web: www.juddsolutions.com
blog: juddsolutions.blogspot.com
twitter: javajudd
Christopher M. Judd
Thursday, August 29, 13

Weitere ähnliche Inhalte

Kürzlich hochgeladen

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Kürzlich hochgeladen (20)

The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 

Empfohlen

How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
ThinkNow
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 

Empfohlen (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

Java in the (Amazon) Cloud