Getting started with Tangosol Coherence

Discussions

News: Getting started with Tangosol Coherence

  1. Getting started with Tangosol Coherence (20 messages)

    JavaLobby has posted "Getting started with Tangosol Coherence," a simple guide showing Coherence (the "enterprise hashmap") in action through the use of a very simple class and the Coherence console. Coherence has been described by its authors as a "data grid" product, as opposed to a "processing grid" as some other grid products are. A "data grid" focuses on delivery of (passive?) data to various consumers, whereas a "processing grid" is more designed to be in line with delivering services to nodes that execute arbitrary code. A processing grid contains commands that are executed on client nodes, whereas a data grid delivers specific data to nodes that specifically look for that data (thus, a cache rather than a grid, although Coherence uses grid concepts to deliver the cached data with failover and other capabilities.)

    Threaded Messages (20)

  2. A point on passive[ Go to top ]

    Tangosol doesn't just have to be a passive data container, it also has the ability to push data to interested consumers when various events in the cache occur. As an aside I've been using Coherence for the past 2 years and I've known various members of Tangosol for the last 4 and I can safely say they are the best technology vendor I have ever worked with. Regards, Max
  3. Re: A point on passive[ Go to top ]

    Some time ago I saw another guide to Tangosol Coherence. Thinks this was the URL http://java.sun.com/j2se/1.3/docs/api/java/util/HashMap.html ;-)
  4. Re: A point on passive[ Go to top ]

    Some time ago I saw another guide to Tangosol Coherence. Thinks this was the URL
    http://java.sun.com/j2se/1.3/docs/api/java/util/HashMap.html

    ;-)
    i think you meant http://java.sun.com/j2EE/1.3/docs/api/java/util/EnterpriseHashMap.html
  5. Re: A point on passive[ Go to top ]

    I think neither of the links work.. I was hoping to see an article (on java.sun.com) explaining to me as to why would I consider Tangosol's Coherence, what issue does Coherence solve.. I use dto think it was caching.. but grid and all - now I think I may be wrong. Thanks, Anoop
  6. Re: A point on passive[ Go to top ]

    I think neither of the links work..

    I was hoping to see an article (on java.sun.com) explaining to me as to why would I consider Tangosol's Coherence, what issue does Coherence solve.. I use dto think it was caching.. but grid and all - now I think I may be wrong.

    Thanks,
    Anoop
    Anoop, Tangosol Coherence, GemStone's GemFire, and GigaSpaces are all driving towards architectures where operational data is: 1. Primarily stored in-memory. 2. Is actively distributed to nodes that have registered some sort of interest (through a variety of mechanisms, such as filters, key subscriptions, and continuous queries). The reliability of data modification callbacks are configurable so that mission-critical events may be guaranteed across various failure boundary conditions. 3. Made highly-available through configuration parameters that allow you to choose a balance of performance and consistency. 4. Dynamically scalable through data partitioning and disk overflow. 5. Accessible through a variety of API's--including the most common languages (Java, C, C#), web services, and SQL/OQL. Hope this helps! Cheers, Gideon GemFire--The Enterprise Data Fabric
  7. Re: A point on passive[ Go to top ]

    I think neither of the links work..

    I was hoping to see an article (on java.sun.com) explaining to me as to why would I consider Tangosol's Coherence, what issue does Coherence solve.. I use dto think it was caching.. but grid and all - now I think I may be wrong.

    Thanks,
    Anoop
    Without answering your question by naming a bunch of companies that compete with tangosol, and listing their feature sets in an attempt to answer what their value is, I would say that you should consider asking Cameron Purdy of Tangosol directly. He is good at explaining his product's value in your terms. I see the entire class of "data grid" as solving your problems if one of the following fits your pain: 1. "I can't build a database server big enough" or "I can't tune my SQL any further. I just need access to more data than the database can crunch in a day." 2. "I can't stand EJB and ORMapping and I want to consume my data from the database w/o losing OO." 3. "I need to build a non-stop application or a high availability application and if I had durable in-memory data, I wouldn't need a database. But databases are the only thing out there that are truly HA, no?" There are many many more uses for tangosol, Gigaspaces, Gemstone, et al but these are some of the uses that apply to the "data grid" problem space. I would actually prefer to talk to you offline Anoop (on the phone or something) about how you see these things in your own terms. Feel free to email me directly. --Ari http://www.terracottatech.com/ [ARI AT TERRACOTTATECH DOT COM]
  8. Re: A point on passive[ Go to top ]

    Ari--You called me out! I deserved it. I now call you out as well! Your attempt at marketing is no less shameless than mine :-) In fairness, I would add Terra Cotta to my previous list. I don't agree, however, that it's all about overcoming database limitations. The concept of a pervasive data fabric or data grid with features that seamlessly (& scalable, fast, reliable, etc) combines the functionalities of distributed caching, databases, messaging middleware, and continuous analytics creates a comprehensive operational data management platform far more advanced than any else previously available. Shops have been building similar capabilities by combining and/or building several different technologies for some time, but the nitty-gritty details of getting all of this right for just one large scale system are daunting. Supporting a wide variety of enterprise class use-cases takes (as we well know) years of work by a dedicated team. What is my advice to our curious readers? Take a look at all the products from a variety of perspectives-any one of them is likely to be of great use to you for tactical latency/throughput/scalability/availability issues. However, as you read through all the product literature, you'll start to realize how an active data fabric with all of these features lets you build large-scale distributed systems in ways that simply weren't possible before (at least not without huge budgets and inevitable compromises). Cheers! Gideon GemFire--The Enterprise Data Fabric http://www.gemstone.com gideon dot low at gemstone dot com
    I think neither of the links work..

    I was hoping to see an article (on java.sun.com) explaining to me as to why would I consider Tangosol's Coherence, what issue does Coherence solve.. I use dto think it was caching.. but grid and all - now I think I may be wrong.

    Thanks,
    Anoop


    Without answering your question by naming a bunch of companies that compete with tangosol, and listing their feature sets in an attempt to answer what their value is, I would say that you should consider asking Cameron Purdy of Tangosol directly. He is good at explaining his product's value in your terms. I see the entire class of "data grid" as solving your problems if one of the following fits your pain:

    1. "I can't build a database server big enough" or "I can't tune my SQL any further. I just need access to more data than the database can crunch in a day."

    2. "I can't stand EJB and ORMapping and I want to consume my data from the database w/o losing OO."

    3. "I need to build a non-stop application or a high availability application and if I had durable in-memory data, I wouldn't need a database. But databases are the only thing out there that are truly HA, no?"

    There are many many more uses for tangosol, Gigaspaces, Gemstone, et al but these are some of the uses that apply to the "data grid" problem space.

    I would actually prefer to talk to you offline Anoop (on the phone or something) about how you see these things in your own terms. Feel free to email me directly.

    --Ari
    http://www.terracottatech.com/
    [ARI AT TERRACOTTATECH DOT COM]
  9. Re: A point on passive[ Go to top ]

    How long before Oracle/DB2/SQL Server have those features and are reasonably/competitively priced to be used as 'data grid'. I am beginning to like CQ feature - but I have only read about those, never tried. I used to dismiss OODBMS (hence by extension their vendors)- esp given the way PL/SQL (the language) was extended. I guess I need to reconsider. How good is the SQL support in CQ (I can happily live with yet another dialect).
  10. Re: A point on passive[ Go to top ]

    How long before Oracle/DB2/SQL Server have those features and are reasonably/competitively priced to be used as 'data grid'.
    I would say your assertion makes Tangosol et al major acquisition targets for Oracle/IBM etc.. Why build your own at a massive effort and cost, when you can just buy a tried and tested product, _with_ an existing customer base and broader area of application?
  11. Re: A point on passive[ Go to top ]

    Me thinks Anoop didn't get the joke.
  12. Re: A point on passive[ Go to top ]

    Hi Anoop, There are a number of articles that explain Tangosol Coherence on our wiki: http://wiki.tangosol.com/ In short, it provides the ability for multiple servers to easily access, load, share, modify, listen to, query and process data. If you want to run an appllication with more than one server, Coherence will make your life easier. I think that the HashMap jokes are pretty funny, but they are also quite a compliment. We've taken some of the most complex problems in computer science, and provided solutions to those problems that are as simple to use as a HashMap. Peace, Cameron Purdy Tangosol Coherence: Clustered Shared Memory for Java
  13. Irony[ Go to top ]

    Oh the irony of you suggesting that there is an enterprise hashmap out there, but that your URL 404:s is... interesting :)
  14. argh[ Go to top ]

    still using 1.3?
  15. JDK 1.3[ Go to top ]

    still using 1.3?
    I'm not certain if that was a serious question or a "just kidding". In our current version 3.x series, we support JDK 1.4 and 1.5 (and 1.6 when it is comes out). In our version 2.x series, we do support JDK 1.3, and also JDK 1.4 and 1.5. FWIW - I don't think that I have seen any _new_ projects using JDK 1.3 in six months or more. Peace, Cameron Purdy Tangosol Coherence: Clustered Shared Memory for Java
  16. Re: JDK 1.3[ Go to top ]

    Cameron, The two API links (HashMap, EnterpriseHashMap) were to 1.3 javadocs... I think that's what he was talking about.
  17. Re: A point on passive[ Go to top ]

    Tangosol doesn't just have to be a passive data container, it also has the ability to push data to interested consumers when various events in the cache occur. As an aside I've been using Coherence for the past 2 years and I've known various members of Tangosol for the last 4 and I can safely say they are the best technology vendor I have ever worked with.
    Thank you, Max. (As a cleverly encoded aside, I still have that unopened "MM" waiting for your never-quite-seems-to-happen visit to Boston. ;-) Peace, Cameron Purdy Tangosol Coherence: Clustered Shared Memory for Java
  18. I'd like to see a comparison of these distributed hashmaps solutions against javaspaces-based solutions. Are there big differences? Do they actually compete? TIA!
  19. I'd like to see a comparison of these distributed hashmaps solutions against javaspaces-based solutions. Are there big differences? Do they actually compete?
    TIA!
    They most certainly do. They are generally very well suited for most use-cases that require one or more of: - Extremely low latency - Very high throughput - Easy and nearly unlimited scalability - Advanced clustering/HA/Failover models - Active push-based notification based on the previous expression of interest in some piece or set of data (key-based interest, expression-based intrest, or Continuous Query based interest). I'd say a quick summary of vendor strengths are: Tangosol: Easiest development model and pluggability for simple or more common use-cases. Strong focus on J2EE environments. See their new "Getting Started" guide for details! GemFire: More of an Enterprise product, with broader coverage/interop for other languages, more data storage models (for example, shared memory and relational data caching are available) and an amazing number of tunable optimizations for advanced use-cases. Strong focus on large-scale systems in finance and government. The largest and oldest company of the group with a 23 year history of object mgmt technology. DISCLOSURE: I work for them! GigaSpaces: JINI/JavaSpaces based. Nice deployment tools and a favorite for those who like these models. At the core, however, the other vendors' system member discovery and namespace concepts aren't that different. Giga also plays in the grid scheduling space, whereas the others keep a stronger focus purely on data. Terracotta: A strong AOP play. Younger company, but has the best delta-propagation capability through bytecode enhancement. With their investor profile, they may be prone to focus on Goldman Sachs problems before others :-) Ok, I've done my little summary. Of course I've missed some stuff with such a quick write-up and so I now fully expect to be severly flamed and corrected by a number of well-known CTO's! I hope this is helpful to some, and I encourage everyone to take a look at all these products when faced with data constraints of any kind. Cheers, Gideon GemFire--The Enterprise Data Fabric http://www.gemstone.com PS - SQL-based Continuous Querying is a unique technology that I believe has a very bright future. Take a look at my article in the latest JDJ--"Building Real-Time Applications with Continuous Query Technology." Link: "http://java.sys-con.com/read/260054.htm". Sorry for the shameless self-promotion but I'm very excited about this new technology!
  20. PS - SQL-based Continuous Querying is a unique technology that I believe has a very bright future. [..] Sorry for the shameless self-promotion but I'm very excited about this new technology!
    With self-promotion like that, you'd fit in much better at Tangosol. Let me know when you're ready ;-) (cpurdy at tangosol dot com) Peace, Cameron Purdy Tangosol Coherence: The Java Data Grid
  21. JInspired recently released a special update to JXInsight which includes support for Tangosol's Coherence product. The release provides 3 important features for Coherence customers: 1. Coherence JMX-to-JXInsight metric mapping 2. Coherence JVMInsight extension (remote inspection of cache runtime state) 3. Coherence Cache trace extension The following links provide additional information: http://blog.jinspired.com/?p=13 http://blog.jinspired.com/?p=12 http://forums.jinspired.com/viewtopic.php?t=8 An important benefit to using JXInsight for monitoring Coherence is that you could easily associate cache activity with activity in other technology layers in your application stack (JSP/Servlets, EJB, JMS, JCA, Hibernate, JDO, Spring, CORBA, JBoss Containers, Swing, WebLogic RMI, Tomcat Request Pipeline....) including contextual processing steps. Within our installation root directory there is a samples/coherence directory containing a sample script that is very similar to the steps described in the posted article. The setup and usage of the Coherence WorkManager is straight forward. Insight Article: Tracing and Profiling Distributed WorkManagers http://www.jinspired.com/products/jxinsight/coherencework.html Kind regards, William Louth CTO, JInspired "Java EE tuning, testing, tracing, and monitoring with JXInsight" http://www.jinspired.com