SAP HANA Cloud Authors: Elizabeth White, Yeshim Deniz, Pat Romanski, William Schmarzo, Liz McMillan

Blog Feed Post

Supercharge Your Web Applications Using JBoss Data Grid

A few weeks ago, on January 16, Divya Mehra and I have delivered a webinar on using the JBoss Data Grid for improving the scalability and performance of web applications. As expected, the webinar has elicited a lot of questions, not all of which could be answered in the allotted time. As they were really interesting though we are trying to answer them here, also for the benefit of a larger audience.

You can watch the webinar here and download it from here.

In our application we have WebSphere running and use JSF + Richfaces and Spring with Oracle 11g. Can JBoss Data Grid be integrated even if we do no use JBoss EAP?

Yes it can. You can use it in either mode: library or remote client-server.

Can data grid operations participate in a distributed transaction? If so, does it ensure that the commit occurs throughout a cluster? Will all nodes be updated?

Yes, JBoss Data Grid supports distributed transactions in both library and remote client-server mode. The nodes can be enlisted as XA resources. Changes will be propagated across the cluster, but are guaranteed to be propagated to all nodes by the end of the transaction only if the replication mode is synchronous. If the replication mode is asynchronous, there are no such guarantees, although the changes will be eventually replicated.

What usage statistics are available from JDG (e.g. cache hits / misses)? Does a UI for viewing these come with the product or is it just JMX data that the client application has to process?

The data collected from monitoring the JBoss Data Grid activity is available as JMX MBeans. It can be visualized using the JBoss Operations Network, included in the product, or with any other JMX tools and clients (jconsole, VisualVM).

Eventual consistency will be available only in V7.0? What happens now if remote distributed JDG nodes cannot communicate and replicate an update? Would the client hang in that case?

Eventual consistency refers to a weaker consistency model than the strong consistency model which is currently implemented by JBoss Data Grid, maximizing availability at the expense of consistency (refer to the CAP theorem for details). With the current strong consistency model, in the case of communication failure, the behaviour of the client will largely depend on the synchronization model chosen – in the case of synchronous replication, the client may block until the client times out (but never indefinitely). In the case of asynchronous replication it will return immediately (even if replication to other nodes isn’t complete yet). Since JBoss Data Grid currently focuses on a strong concurrency model, eventual consistency will be effectively a new feature of the framework, allowing to deal with the state being inconsistent across the cluster under the control of the framework (for example, a GET operation may involve examining all copies of the data and a quorum-based decision as to which is the correct one).

If I use JBoss Data Grid in Library Mode, how do I add a node concretely?

In Library mode, each application creates its own node, embedded in the application. If  multiple deployments of the application exist (for example in a cluster environment), the nodes will communicate with each other.

Is there any way to delete or clear data from the JBoss Data Grid without having to restart it?

Sure, there is. Data can be removed explicitly through remove() or clear() operations in the application, and their equivalents in the command-line interface (CLI) available in JBoss Data Grid 6.1. Eviction and expiration strategies can be set up as well, for removing unused or stale data from the cache.

Is there a strategy for distributing data in the grid and somehow coordinating parallel work on that distributed data?

JBoss Data Grid will provide a distributed execution framework in JBoss Data Grid 6.1, which will provide a flexible framework for coordinating parallel work. Building on top of that, at a higher level, map/reduce capabilities will be available as well.

When you add additional data grid nodes, do you use distributed locking across nodes and, if so, what impact does that have to the performace of the data grid as more nodes are added?

JBoss Data Grid uses lazy remote locking by default, which reduces traffic. But generally speaking, in a data grid scenario, only a subset of the data is available on each node (and there is a limited number of replicas across the cluster), so the addition of new nodes does not necessarily result in an increase of the number of locks. It all depends on how many nodes the data is replicated. The impact of distributed locking can be further reduced if the grouping API is used, to group keys commonly updated together within a single transaction.

But the demo performance data of 20% improvement is based on an in-memory cache without remote calls compared to remote database calls. It’s not a fair comparison. What about a remote cache compared to a remote database?

We will try to produce more data to illustrate other scenarios. It should be noted, however, that JBoss Data Grid is an in-memory data grid by design. Also, while remote calls add to the overhead, the biggest cost in the type of scenario we envisioned comes from the more expensive IO operations elicited by the database access, as well as the reduced concurrency when locking data in the database.

Does the JBoss Data Grid API have a way to ask for all of the keys (across the cluster) — sort of a master index?

In JBoss Data Grid 6.1, this will be possible through a map-reduce operation.

I saw data being accessed using get/put. Do you use SQL or NoSQL to access data?

JBoss Data Grid uses a key-value pair model so access to data is similar to a map. However, other methods of searching for data, such as index-based querying and map-reduce will be available in JBoss Data Grid 6.1.

Does the data grid allow me to specify how many copies of a piece of data are created and distributed? If I have a 20 node cluster, can I request that it be replicated to 2 of the 20 for example?

Yes, the replication and distribution strategies are configurable.

Read the original blog entry...

More Stories By Daniel Thompson

I curate the content on this page, but the credit goes to my talented colleagues for the posts that you see here. Much of what you read on this page is the work of friends at How to JBoss, and I encourage you to drop by the site at http://www.howtojboss.com for some of the best JBoss technical and non-technical content for developers, architects and technology executives on the Web.

@ThingsExpo Stories
SYS-CON Events announced today that MathFreeOn will exhibit at the 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. MathFreeOn is Software as a Service (SaaS) used in Engineering and Math education. Write scripts and solve math problems online. MathFreeOn provides online courses for beginners or amateurs who have difficulties in writing scripts. In accordance with various mathematical topics, there are more tha...
@ThingsExpo has been named the Top 5 Most Influential Internet of Things Brand by Onalytica in the ‘The Internet of Things Landscape 2015: Top 100 Individuals and Brands.' Onalytica analyzed Twitter conversations around the #IoT debate to uncover the most influential brands and individuals driving the conversation. Onalytica captured data from 56,224 users. The PageRank based methodology they use to extract influencers on a particular topic (tweets mentioning #InternetofThings or #IoT in this ...
Cloud based infrastructure deployment is becoming more and more appealing to customers, from Fortune 500 companies to SMEs due to its pay-as-you-go model. Enterprise storage vendors are able to reach out to these customers by integrating in cloud based deployments; this needs adaptability and interoperability of the products confirming to cloud standards such as OpenStack, CloudStack, or Azure. As compared to off the shelf commodity storage, enterprise storages by its reliability, high-availabil...
More and more brands have jumped on the IoT bandwagon. We have an excess of wearables – activity trackers, smartwatches, smart glasses and sneakers, and more that track seemingly endless datapoints. However, most consumers have no idea what “IoT” means. Creating more wearables that track data shouldn't be the aim of brands; delivering meaningful, tangible relevance to their users should be. We're in a period in which the IoT pendulum is still swinging. Initially, it swung toward "smart for smar...
Complete Internet of Things (IoT) embedded device security is not just about the device but involves the entire product’s identity, data and control integrity, and services traversing the cloud. A device can no longer be looked at as an island; it is a part of a system. In fact, given the cross-domain interactions enabled by IoT it could be a part of many systems. Also, depending on where the device is deployed, for example, in the office building versus a factory floor or oil field, security ha...
SYS-CON Events announced today that Transparent Cloud Computing (T-Cloud) Consortium will exhibit at the 19th International Cloud Expo®, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. The Transparent Cloud Computing Consortium (T-Cloud Consortium) will conduct research activities into changes in the computing model as a result of collaboration between "device" and "cloud" and the creation of new value and markets through organic data proces...
Donna Yasay, President of HomeGrid Forum, today discussed with a panel of technology peers how certification programs are at the forefront of interoperability, and the answer for vendors looking to keep up with today's growing industry for smart home innovation. "To ensure multi-vendor interoperability, accredited industry certification programs should be used for every product to provide credibility and quality assurance for retail and carrier based customers looking to add ever increasing num...
@ThingsExpo has been named the Top 5 Most Influential M2M Brand by Onalytica in the ‘Machine to Machine: Top 100 Influencers and Brands.' Onalytica analyzed the online debate on M2M by looking at over 85,000 tweets to provide the most influential individuals and brands that drive the discussion. According to Onalytica the "analysis showed a very engaged community with a lot of interactive tweets. The M2M discussion seems to be more fragmented and driven by some of the major brands present in the...
In an era of historic innovation fueled by unprecedented access to data and technology, the low cost and risk of entering new markets has leveled the playing field for business. Today, any ambitious innovator can easily introduce a new application or product that can reinvent business models and transform the client experience. In their Day 2 Keynote at 19th Cloud Expo, Mercer Rowe, IBM Vice President of Strategic Alliances, and Raejeanne Skillern, Intel Vice President of Data Center Group and ...
Machine Learning helps make complex systems more efficient. By applying advanced Machine Learning techniques such as Cognitive Fingerprinting, wind project operators can utilize these tools to learn from collected data, detect regular patterns, and optimize their own operations. In his session at 18th Cloud Expo, Stuart Gillen, Director of Business Development at SparkCognition, discussed how research has demonstrated the value of Machine Learning in delivering next generation analytics to impr...
Data is the fuel that drives the machine learning algorithmic engines and ultimately provides the business value. In his session at Cloud Expo, Ed Featherston, a director and senior enterprise architect at Collaborative Consulting, will discuss the key considerations around quality, volume, timeliness, and pedigree that must be dealt with in order to properly fuel that engine.
What happens when the different parts of a vehicle become smarter than the vehicle itself? As we move toward the era of smart everything, hundreds of entities in a vehicle that communicate with each other, the vehicle and external systems create a need for identity orchestration so that all entities work as a conglomerate. Much like an orchestra without a conductor, without the ability to secure, control, and connect the link between a vehicle’s head unit, devices, and systems and to manage the ...
Virgil consists of an open-source encryption library, which implements Cryptographic Message Syntax (CMS) and Elliptic Curve Integrated Encryption Scheme (ECIES) (including RSA schema), a Key Management API, and a cloud-based Key Management Service (Virgil Keys). The Virgil Keys Service consists of a public key service and a private key escrow service. 

Web Real-Time Communication APIs have quickly revolutionized what browsers are capable of. In addition to video and audio streams, we can now bi-directionally send arbitrary data over WebRTC's PeerConnection Data Channels. With the advent of Progressive Web Apps and new hardware APIs such as WebBluetooh and WebUSB, we can finally enable users to stitch together the Internet of Things directly from their browsers while communicating privately and securely in a decentralized way.
Amazon has gradually rolled out parts of its IoT offerings, but these are just the tip of the iceberg. In addition to optimizing their backend AWS offerings, Amazon is laying the ground work to be a major force in IoT - especially in the connected home and office. In his session at @ThingsExpo, Chris Kocher, founder and managing director of Grey Heron, explained how Amazon is extending its reach to become a major force in IoT by building on its dominant cloud IoT platform, its Dash Button strat...
Two weeks ago (November 3-5), I attended the Cloud Expo Silicon Valley as a speaker, where I presented on the security and privacy due diligence requirements for cloud solutions. Cloud security is a topical issue for every CIO, CISO, and technology buyer. Decision-makers are always looking for insights on how to mitigate the security risks of implementing and using cloud solutions. Based on the presentation topics covered at the conference, as well as the general discussions heard between sessi...
For basic one-to-one voice or video calling solutions, WebRTC has proven to be a very powerful technology. Although WebRTC’s core functionality is to provide secure, real-time p2p media streaming, leveraging native platform features and server-side components brings up new communication capabilities for web and native mobile applications, allowing for advanced multi-user use cases such as video broadcasting, conferencing, and media recording.
Fifty billion connected devices and still no winning protocols standards. HTTP, WebSockets, MQTT, and CoAP seem to be leading in the IoT protocol race at the moment but many more protocols are getting introduced on a regular basis. Each protocol has its pros and cons depending on the nature of the communications. Does there really need to be only one protocol to rule them all? Of course not. In his session at @ThingsExpo, Chris Matthieu, co-founder and CTO of Octoblu, walk you through how Oct...
Major trends and emerging technologies – from virtual reality and IoT, to Big Data and algorithms – are helping organizations innovate in the digital era. However, to create real business value, IT must think beyond the ‘what’ of digital transformation to the ‘how’ to harness emerging trends, innovation and disruption. Architecture is the key that underpins and ties all these efforts together. In the digital age, it’s important to invest in architecture, extend the enterprise footprint to the cl...
Almost everyone sees the potential of Internet of Things but how can businesses truly unlock that potential. The key will be in the ability to discover business insight in the midst of an ocean of Big Data generated from billions of embedded devices via Systems of Discover. Businesses will also need to ensure that they can sustain that insight by leveraging the cloud for global reach, scale and elasticity.