1. GridGain Systems kicks off “GridGain + Scala” European Tour 2010.

    Seven cities in two weeks. Come to see what makes GridGain “Cloud Application Platform” start every 20 seconds around the globe and learn how you can use Scala to build distributed grid and cloud applications with Zero Deployment.

    Niort – October 26th
    Rome – October 28th
    Grenoble – October 29th
    Paris – November 2nd
    London – November 3rd
    Toulouse – November 5th
    Munich – November 8th

    If you are in the neighborhood, you should definitely try to make it. There will be lots of live coding sessions, lot's of examples and Q&A.

    Hope to see you there.
    1

    View comments

  2. GridGain will be presenting “Cloud Computing with GridGain and Scala” at Memphis JUG on October 19th, 2010. As with all our presentation – live Scala coding of cool distributed apps in front of the audience. Come to see the world’s shortest MapReduce application! By the way, you can see Java side of this story at in my previous blog.


    We have been getting very good feedback about this presentation, so try to make it if you are around.


    0

    Add a comment

  3. We often say that GridGain is very simple to use, but we often forget that many of our users don't actually exploit the full power of GridGain functional APIs. In this blog I want to demonstrate several GridGain features that are available at your fingertips once you download GridGain.



    1. Broadcasting
    Here is a simple app that broadcasts execution of a closure to all participating nodes (in our simple scenario the closure simply prints out a string):
    G.grid().run(
        GridClosureCallMode.BROADCAST,
        F.println("Broadcasting This Message To All Nodes")
    );
    The "F.println()" method returns a simple closure that will print out a passed in argument. Then GridGain will take this closure and execute it on all available nodes.



    2. Splitting Execution
    Here is a simple app that splits a given phrase into words, creates closures that print individual words, and executes them on different nodes:
    G.grid().run(
        GridClosureCallMode.SPREAD, 
        F.yield("Splitting This Message Into Words".split(" "), F.println())
    );
    What happens here is that initial String is split into words using standard JDK split method. Then method "F.yield()" will take each word, give it to "F.println()" closure and return a collection of "F.println()" closures curried with a predefined argument (one for each word). GridGain will then take this collection of closures and execute them on the Grid sending each closure to a different node in round-robin fashion.



    3. The World's Shortest MapReduce App
    Now let's try to actually get a little more sophisticated and execute an app which will split a phrase into multiple words, have individual grid nodes count letters in individual words and then, in reduction step, add up all the counts. Here is how this app will look like:
    int letterCnt = G.grid().forkjoin(
        GridClosureCallMode.SPREAD,
        F.yield("Counting Letters In This Phrase".split(" "),
            new C1<String, Integer>() {
                @Override public Integer apply(String word) {
                    return word.length();
                }
            }
        ),
        F.sumIntReducer()
    );
    Here are the things to note here. The C1 is a convenience alias for a GridClosure class which in our case takes a string and returns a number of characters in that string. A collection of closures with different words as an argument will be distributed to individual grid nodes and each of those closures will return a number of characters in the word it received. Then the local node will use "F.sumIntReducer()" which simply adds all character counts given to it.

    And to top it all, none of the code above requires any deployment. You simply startup a few bare bone GridGain nodes, write your code, hit the Run button, and your code just executes on the Grid (well, it's utilizing GridGain peer-class-loading mechanism underneath). There are no Ant or Maven scripts to execute, just write your code and run it. If you need to change your code, just change it and run it again.

    I doubt there is another product out there that will let you execute fairly complex MapReduce applications in such a concise and elegant manner ;-)

     

    3

    View comments

  4. GridGain will be presenting “Cloud Computing with GridGain and Scala” at Orange County JUG on October 14th, 2010. As always – live Scala coding of cool distributed apps in front of the audience.

    Come to see the world’s shortest MapReduce application!
    0

    Add a comment

  5. GridGain will present for the 3rd time at Silicon Valley Code Camp Conference at Foothill College in Los Altos Hills, CA on October 9th, at 5pm.

    We'll be talking about “Cloud Computing with GridGain and Scala”. As usual, approximately 10-15 minutes talk and the rest is a live coding of pretty cool Scala/GridGain-based apps. I should mention that we start several grid nodes right on the laptop, and execute some fairly involved apps right on the presentation without any deployment whatsoever. Where else could you see a MapReduce app built in 10 minutes from scratch, in Scala, in front of your eyes?

    Hope to see you there.
    0

    Add a comment


  6. I will be presenting on “Cloud Computing with GridGain and Scala” at Ceara Java User Group in Fortaleza, Brazil on October 5th, 2010. This is one of the first new presentations that we’ve prepared that is almost 80% live coding in Scala using GridGain and Scalar DSL.

    We’ve been doing this type of talks for almost 3 years by now – and this is the best way to convince someone that a feature-rich distributed middleware such as GridGain can be very easy and productive to use. If you attend, you will get a chance to see a live coding session – from opening up IDEA, creating new project and typing every line of code in front of your eyes. Nothing is pre-cooked or hidden.

    Come join us at sunny Fortaleza on October 5th. All details are here.

    Enjoy!

    0

    Add a comment

About me
About me
- Antoine de Saint-Exupery -
- Antoine de Saint-Exupery -
"A designer knows he has achieved perfection not when there is nothing left to add, but when there is nothing left to take away."
Blog Archive
Blogs I frequent
Loading
Dynamic Views theme. Powered by Blogger.