gridgain – java grid computing made simple nikita ivanov

20
GridGain – Java Grid Computing Made Simple Nikita Ivanov www.gridgain.org

Upload: alannah-todd

Post on 26-Dec-2015

222 views

Category:

Documents


3 download

TRANSCRIPT

GridGain – Java Grid Computing Made Simple

Nikita Ivanovwww.gridgain.org

Agenda

• GridGain• What is Grid Computing and why?• What is GridGain and why?• Why Java and Open Source?• Key Concepts

• Demos• Grid Application in 15 Minutes• Running JUnits on Grid

GridGain – Java Grid Computing Made Simple

Slide 2

Product. Business. People. Slide 3

What is Grid Computing?

•Compute Grids•Parallelize logic execution

•Data Grids•Parallelize data storage

•Grid Computing = Data Grids + Compute Grids

•Data Partitioning + Affinity Map/Reduce

Product. Business. People. Slide 4

Why Grid Computing?

•Ask Google, Yahoo, eBay, Amazon•Solves problems often unsolvable otherwise

•Google has almost 1,000,000 nodes in its grid•Uniformed programming paradigm that scales from garage to Google

•This code returns the same result on 1, 2 or 1,000 nodes – only faster, much faster…

@Gridify(taskName = "Optimizer")public double optimizePortfolio(Portfolio p) {

...}

What is GridGain?

• Grid computing framework• Full-stack grid computing

• Innovative Map/Reduce • Integration with leading Data Grids

• Elegant simplicity• Think Spring, Hibernate vs. EJB2

• Java centric• Built in Java and for Java

• Open source• LGPL/Apache license

GridGain – Java Grid Computing Made Simple

Slide 5

Why GridGain?

• Existing projects are:• Too complex to use

• Globus, GridEngine anyone?

• Too expensive to use• $M for DataSynapse, Platform, UD

• Not Java-based or Java friendly• Alien to Java 5 and JEE

GridGain – Java Grid Computing Made Simple

Slide 6

Professional Open Source

• GridGain - Professional Open Source• Open source

• FREE software • FREE upgrades• FREE community support• FREE source code• No gimmicks

• Commercial enterprise-level support and services• Indemnification• Custom SLAs• Guaranteed response time

• Like JBoss, Spring Source, Mule Source…

GridGain – Java Grid Computing Made Simple

Slide 7

Key Concepts

• MapReduce• Zero Deployment• On Demand Scalability• Blend-In Integration• Transparent Grid Enabling with AOP• Data Grids Integration

Slide 8GridGain – Java Grid Computing Made Simple

MapReduce

Slide 9

1. Task execution request

2. Task splits into jobs3. Result of job execution4. Aggregation of job

results

GridGain – Java Grid Computing Made Simple

MapReduce Example

Slide 10GridGain – Java Grid Computing Made Simple

Zero Deployment

• Peer-to-Peer On-Demand Class Loading technology• No Ant scripts to run• No JARs to copy or FTP• No nodes to restart

• Develop in EXACTLY the same way as locally• Change->Compile->Run on the grid

• Start many grid nodes in • Single JVM – debug grid apps locally (!)• Single computer – run grid on your workstation

• Single biggest developers’ productivity boost

Slide 11GridGain – Java Grid Computing Made Simple

On Demand Scalability

Slide 12GridGain – Java Grid Computing Made Simple

Blend-In Integration

• Checkpoints• Failover • Collision Resolution• Topology management• Load balancing• Deployment

• Service Provider Interface (SPI)-based architecture• Plug in and customize almost any aspect of grid computing

framework• LEGO-like assembly of custom grid infrastructure

• Grid computing framework aspect that are fully pluggable:

Slide 13

• Communication• Discovery• Tracing• Startup• Event storage

GridGain – Java Grid Computing Made Simple

Blend-In Integration, cont.

Application Servers• JBoss AS• BEA Weblogic• IBM Websphere• Glassfish• TomcatData Grids• JBoss Cache• Coherence• GigaSpacesAOP• JBoss AOP• Spring AOP• AspectJ

Messaging Middleware• Mule• JMS

• ActiveMQ• SunMQ

• Jgroups• Email• TCP, IP-MulticastOthers• Spring• Junit• JXInsight

“Out-of-the-box” integration with:

Slide 14GridGain – Java Grid Computing Made Simple

Transparent Grid Enabling w/AOP

01 class BizLogic {02   @Gridify(…) 03   public static Result process(String param) {04     ...05   }06 }07 08 class Caller {09   public static void Main(String[] args) {10     GridFactory.start();11 12     try {13       BizLogic.process(args[0]);14     }15     finally {16       GridFactory.stop();17     }18   }19 }

Slide 15GridGain – Java Grid Computing Made Simple

Data Grids Integration

• Data + Compute Grids = Full stack grid computing• Compute grids parallelize processing

logic• Data grids parallelize data storage

• Affinity Map/Reduce – ability to co-locate processing logic and the data• Minimizes “noise” traffic• Optimal grid load and performance

GridGain – Java Grid Computing Made Simple

Slide 16

Data Grids Integration, cont.

• GridGain full stack grid computing:• GridGain+JBoss Cache

• Full OPEN SOURCE grid computing platform• Native integration

• GridGain+Coherence Data Grid• Native integration

• GridGain+GigaSpaces Data Grid

• One compute grid - many data grids• Freedom of choice

Slide 17GridGain – Java Grid Computing Made Simple

Data Grid Integration, cont.

Slide 18GridGain – Java Grid Computing Made Simple

Demos

• Java 5/Eclipse 3.2/Windows XP• GridGain 2.0

GridGain – Java Grid Computing Made Simple

Slide 19

Q & A

Slide 20

Thanks for your time!

Nikita Ivanov: [email protected]: www.gridgain.org

GridGain – Java Grid Computing Made Simple