August 5, 2010

Terracotta versus Hadoop

posted by ari

I have had at least 10 companies ask me to compare and contrast Terracotta with Hadoop in the past 30 days. This question, to me, is an easy trap in which to fall.

Hadoop is recursion-based (MapReduce). You can't express all programatic constructs in recursion very easily, in my opinion.

Terracotta and Ehcache work in Java and .Net. Those languages are full programming languages, devoid of query constructs but rich in data structure constructs.

To me, the question is not how many TPS each of us can deliver or how much data one can handle versus the other. It is a question of right tool for the job.

My answer: most shops should have both Hadoop and Terracotta in use. Think about it this way. Terracotta is generally part of read/write business systems that you might call transactional (not meaning XA / 2-phased commit). Hadoop is generally part of read-only analytics systems you might call business intelligence. Hadoop is used to create cool things like Yahoo's predictive-typing feature in their search engine. Terracotta is used in financial services to execute more trades per hour or run algorithmic trading solutions faster or in gaming to handle more gamers per day. Terracotta is used to make sure no state is lost if Java or .Net apps stop running mid-day. Hadoop is used to crunch massive datasets looking for patterns.

I say use both. What do you think? Do you want more info from me on my perspective? I am happy to put technical detail behind these claims. Just want to see if anyone out there is contemplating a "A vs. B" decision like I have been seeing. If everyone agrees with me, then I will just stop here.

Let me know what you want to hear.

Cheers,

--Ari

Comments (2) | TrackBack (0) | Permalink

May 19, 2010

Ehcache 2.1 just released

posted by ari

We just released 2.1. Its pretty amazing. CAP theorem capabilities. Very very easy to use. And, as usual, more throughput than before.

I am speaking about it tonight @ Oakland JUG.

Come on by!

--Ari

Comments (0) | TrackBack (0) | Permalink

April 22, 2010

@Scale 2010

posted by ari

%40Scale.png

I am very excited to announce the @Scale 2010 one day conference. It's pronounced "At Scale" and it represents a chance for you to get to spend time with all the leaders in virtualization, and scale in one place for an entire day.

The date is September 24th, 2010. It is 1 day after Java One / Oracle Open World so if you are in San Francisco already, why not pop over for an extra day to discuss the real low down and real world stuff going on. The conference is downtown only about 6 blocks from Moscone center!

I am super excited to be announcing the speakers for the conference as well.


  • Jeff Barr of Amazon

  • Simon Crosby, CTO of Citrix

  • Rich Wolski, founder of Eucalyptus

  • Adrian Cole, found of JClouds

  • Paul Querna of CloudKick and libcloud fame

  • Jos Bowmans of Canonical--the Ubuntu guys who also do UEC

  • Greg Luck, James House, and myself from Terracotta

and more. We've got high scale customers who will be describing their use case in detail. And we've got integrations to demo to you. You will see full stack cloud solutions in action including Xen, Eucalyptus, Terracotta, Tomcat, MySQL and more.

Essentially, we will cover the latest and greatest in all aspects of application scale from monitoring and management to application frameworks to virtualization and automation. By the end of the day, you will have a great understanding of these concepts:

  • Elastic Data
  • Elastic Infrastructure

Get your ticket early. The early bird discounts are significant. And, for all the content we will be providing, I think the prices are very reasonable.

BTW, I also want to extend an open invite to the NoSQL leadership (Cassandra, Voldemort, Mongo, Couch, etc.) Everyone with a role in building out Clouds @ Scale or Enterprise apps @ Scale is welcome to be a sponsor or speaker.

Thanks everyone and I am very excited to see you all there!

The URL that you can distribute via twitter, etc is: http://atscale2010.eventbrite.com/

--Ari

Comments (0) | TrackBack (0) | Permalink

April 8, 2010

Where's the Terracotta cloud? What's the Terracotta cloud?

posted by ari

Just wanted to touch base w/ you all and provide a revised ETA and set some expectations around Terracotta Cloud Stack.

  • Its official name will be Terracotta Cloud Stack. (you may have heard it called Terracotta Cloud or Terracotta Cloud Tools.) It turns out it is a full stack for building and launching applications in most clouds--EC2, Eucalyptus, Rackspace, and vCloud--so we shall call it that.
  • It will provide many exciting features in 1st release
    1. Ability to start an arbitrary number of app instances, Terracotta instances, and DB instances
    2. built in support for Amazon Elastic Load Balancer
    3. built in load balancer (based on HAPRoxy) for all other cloud providers
    4. built in support for Terracotta FX. Just say you want 24 Terracotta's and it will create 12 2-member stripes to connect your application to
    5. ability to pull software artifacts from S3 / Walrus so you can store your app as 1 tarball, Terracotta as another, and the DB installation as yet a 3rd and we will dynamically install the appropriate software onto each node we deploy at runtime
    6. You can grow a cluster automatically in response to ELB autoscale events or any event you want to wire in from your management framework of choice (Munin for example).
    7. ability to runtime rewrite app configuration based on dynamic variable substitutions. You can insert a Terracotta config URL into your ehcache.xml, quartz config, and Tomcat sessions configuration on the fly. You can insert JDBC connection URLs and Hibernate HBM db configurations into your app files on the fly as well. And you can tell the Terracotta server nodes about the array size and shape you want at runtime as well.
    8. Last, the system ships with Examinator pre-configured and publicly available in Amazon EC2 for you to start / stop a real-world application right away. Within 30 minutes you can be running a cloud with a load balancer, DB, Jetty, and Terracotta on, say 30 JVMs all by adding just your EC2 credentials to a configuration file
  • It is currently being documented and QAed and its alpha release is imminent.
  • For the alpha phase, you will be able to download the stack upon registration at Terracotta.org and run w/ an FX array over at Amazon EC2. Our intent is to get the Stack into folks' hands so that you can provide feedback to us right away and we can plan the beta and GA accordingly thereafter.

Fun times! Exciting stuff, I think. So far, we have an ecosystem of about 5 of the world's biggest software and virtualization vendors all working together to incorporate direct support for launching and managing their technologies directly from within our Cloud stack. So, GA should not only introduce the features outlined above but also come with an ecosystem of support software that will run readily in this environment.

Stay tuned!

--Ari

Comments (2) | TrackBack (0) | Permalink

March 15, 2010

Terracotta in the cloud using Amazon EC2

posted by ari

All,

Jeff Barr of Amazon.com-fame and I will be doing a joint webinar next week on running Terracotta-based apps in Amazon's EC2 public cloud. You will see a live demonstration. The demo surrounds a real Jetty app that we will invite you to hit w/ your web browser. While you are hitting the app, we will grow and shrink the Jetty cluster on the fly and you will see no loss of session or cache state. The load balancer respond dynamically to the node changes as well.

We will cover how we built this system and how you can go about getting the new Terracotta-cloud beta tools for your own use.

Just go to http://terracotta.webex.com and sign up for the March 23rd event.

Looking fwd to seeing you all there and answering your questions.

Till then,

--Ari

Comments (1) | TrackBack (0) | Permalink

March 9, 2010

Today we launched Terracotta-cloud

posted by ari

Over the past 3 weeks, I built a cluster running Eucalyptus + Terracotta. Today, Rich Wolski--Eucalyptus's CTO--and I did a joint webinar where the 500 or so people in attendance used our clustered solution. The system built itself in 4.5 minutes and then took 150 users generating about 2000 cache hits PER SECOND.

Want to see how to use Terracotta, Eucalyptus, and put the 2 together, watch our joint webinar over at http://www.terracotta.org/

If you were in attendance today, you saw us build a cluster of 4 Jetty servers and 4 Terracotta Servers plus a database node and a Terracotta load balancer. All in, we had 10 nodes running and were handling the throughput no problem. Makes sense...this is a rather large cluster for such a small number of concurrent users--150.

Anyways, I will blog more about the architecture of our new Terracotta-cloud product but for now I thought I would show everyone a picture of just how compact and powerful the cluster you were hitting is. Enjoy...

IMG00410.jpg

--Ari

Comments (0) | TrackBack (0) | Permalink

November 18, 2009

Amazon EC2 + Terracotta. A good match?

posted by ari

Looking for feedback here. With all of Amazon Web Services' amazing progress around MySQL, Hadoop, and more, it occurred to me that there is room for a built-in Terracotta service for Amazon EC2 users as well.

Think about it. My favorite demo of cloud-enablement right now is Chris Richardson's CloudFoundry tool kit. A little known secret about Cloud Foundry is Chris can and has made it support Terracotta as part of app deployment in EC2 or vCloud Express. My thoughts with Chris have always been:

1. Ok, so Cloud Foundry makes push-button app deployment at scale very easy. If I want 2 HTTPDs,4 Tomcats, 1 MySQL master node and a slave for backup, I can just click my way to such a deployment description, add my WAR file, stir and presto...instant production-scale app in the cloud.

2. So, Terracotta could be added to this story in that, once I add my WAR, can't Cloud Foundry detect the presence of Ehcache and Hibernate jars IN MY bundle, and ask me if I want my Hibernate cached, or my Ehcache clustered, or if I wanted clustered caches or ... well you get the idea. A simple checkbox in my app saying "cluster and cache my DB please. Thank you."

I mean, why wouldn't everyone want to free their app from the ball&chain that is the RDBMS. Sure, MySQL in the cloud is kewl and all, but does it help as much as a distributed cache built in to the things I construct apps with every day? Of course it is not as helpful. So, with push-button distributed caching, I can take the app I already have, deploy it to the cloud, and go faster than I used to go in my own datacenter too. Great!

So, my question to everyone out there seeing this is, if it can be push-button now, thanks to Terracotta Ehcache, why not build it into EC2 directly. basically like ordering off a McDonald's menu. "Would you like a distributed cache with that?" "Yes, please!" "Ok, 2 nodes or 4?" "4 please, than you."

So, what do people think?

--Ari

Comments (2) | TrackBack (0) | Permalink

More big news coming this week I think

posted by ari

We got big news again. This is becoming a monthly occurrence. Stay tuned!

--Ari

Comments (3) | TrackBack (0) | Permalink

August 19, 2009

Congrats to Cloud Foundry

posted by ari

Quick congrats to SpringSource and Cloud Foundry.

Chris Richardson has been a friend of Terracotta for years and we are glad his latest ideas landed somewhere so great to be.

The great news for Terracotta's community is that Cloud Tools and CloudFoundry.com both support Terracotta, directly.

So with our own puppet master-based experiments in the Cloud plus CloudFoundry being part of SpringSource, I guess Terracotta has just been thrust into cloud computing.

Gotta love open source :)

BTW, email me if you want access to or help with our puppet + Terracotta AMI. I would love the feedback.

Thanks,

--Ari

Comments (0) | TrackBack (0) | Permalink

August 18, 2009

Terracotta and EHCache: A marriage made in Java

posted by ari

I am very pleased to be able to announce that Terracotta and EHCache are now one.

If you were curious what this hash is: ? d7073c02eca990a65c2c4c911fe33b20 ?

It is the Md5 hash of the contract between Terracotta and EHCache leadership that both cements and represents this new day in Enterprise Java scalability.

The rationale


EHCache has massive adoption...
EHCache provides the world-standard caching interface (both de facto and soon, JSR-107) to Java applications; and it is easy to use. EHCache has hundreds of thousands if not millions of production deployments. And EHCache is embedded in many popular products from the Spring framework, to Liferay, to Alfresco, to Documentum, to Hibernate. If you name it, it is likely using EHCache.

Terracotta has a proven open source scalability solution...
Terracotta provides the world's best open source Java clustering and HA platform on which to run Enterprise-class applications. Terracotta is used underneath hundreds of the world's most critical applications. Terracotta's interface in more than 50% of use cases has been EHCache. Basically, developers design applications to use EHCache and use Terracotta's EHCache clustering module to get massive scale and high availability at runtime.

The two together will provide the most seamless path from 1 node up to 100. Instead of having to worry about which version of EHCache Terracotta supports, or if your EHCache integration will work well with Terracotta, EHCache's and Terracotta's users alike can rest assured the two will always work in perfect harmony from today forward.

This makes Terracotta + EHCache the largest vendor in the market focused only on Java scalability and reliability.

What this means for EHCache Users


EHCache users will get a few things:
1. The same Apache 2 license they currently rely on
2. A new hosting environment operated by Terracotta with state-of-the-art forums, source contro, maven infrastructure, etc. all running alongside sourceforge infrastructure that will remain in place
3. a dedicated team of engineers working full-time on EHCache performance and features
4. Direct upgrade path to Terracotta that is seamless and nearly configurationless
5. Enterprise support and training for existing EHCache installations


Terracotta users will get a few things as well:
1. EHCache interfaces will replace Terracotta distributed cache as a single caching interface / standard for Terracotta distributed caching
2. a single-node version of Terracotta that can run on the desktop w/o our server array
3. Full freedom to run on the latest version of EHCache at all times, knowing it works with Terracotta
4. One vendor support structure for their caching interfaces / libraries as well as their scalability / reliability runtime.


Now the fun begins


Next steps together
1. Greg Luck's role will be as CTO of EHCache here at Terracotta, reporting to me
2. We will merge our product roadmaps including, seamless upgrade from 1 EHCache node to 100's as well as adding some new interfaces / APIs around searching / indexing caches, etc.

We now have a very well rounded solution for Enterprise Java applications. The decision about where to keep state has always gone in the database's favor save for the most highly trafficked sites and systems. That's fine by us. Keep the data in the database. Just cache your catalogs, products, and users with EHCache, through Hibernate or directly from JDBC to EHCache by hand. Write your sales orders, trades, matching operations to Terracotta and write-behind to the database or just write-through--both will be fast. And build your conversational state in memory using HTTP Session and Terracotta container clustering or use EHCache directly. With our EHCache distributed cache, our HTTP Session product, and our core DSO platform you can do all 3 in the same application without giving up your database and without sacrificing scale or performance.

The marriage of EHCache and Terracotta: a wedding where you can have your cake and eat it too - scalability and ease of use without having to worry about side effects or impacts.

Here's to Java and the Java Community

--Ari

Comments (5) | TrackBack (0) | Permalink