|By Jason Bloomberg||
|September 3, 2014 07:00 PM EDT||
In last week’s Forbes article I discussed various senses of the term real-time: low latency user interfaces, up-to-date information, live human interactions, and high-performance data processing – to name but a few. Today, for the Cortex audience (as well as the Wired Innovations and SYS-CON audiences), it’s time to channel Lewis Carroll and have a wondrous adventure to shed light on the true significance and challenges of real-time.
As we venture down the rabbit hole of our technology-infused world, it’s easy to see that everything is getting faster and bigger and, well, just more. Moore’s Law has just taken a big swig from a bottle that says drink me, as we have more memory, more storage, faster networks, more network-connected doodads, more and faster processors than ever before. And of course, we’re also getting better at everything: better apps. Better operating systems. Better ways of abstracting every element of our environment to provide even greater performance and flexibility. We are truly living in a time of plenty, if not excess. It’s no wonder that we want real-time in everything we do.
Today’s challenge isn’t only making stuff go faster. It’s figuring out how all the acceleration of all the bits and pieces fit together. Furthermore, this push to achieve a holistic perspective on all this gear drives our quest for real-time, as it only takes one bottleneck to slow everything else down. The only way we’ll truly achieve real-time behavior is by understanding the connections this wonderland of real-time requires. So let’s get started, or my ears and whiskers, we’ll be late!
Real-Time Starting Point: Reactive Programming
Google “real-time.” Right after Bill Maher’s HBO show and a general Wikipedia entry comes Wikipedia’s “real-time computing” page – presumably the real-time we’re talking about here. Load that page and you’ll notice two curiouser and curiouser facts right off the bat: first, the Wikipedia article itself has serious issues – as though no one who cares about real-time computing actually wants anybody else to understand it. Second, “real-time computing” is apparently synonymous with “reactive computing,” a much less familiar term. The rest of the article focuses on the sort of real-time we want from our antilock brakes – useful to be sure, but not the enterprise context we were looking for.
Maybe reactive computing is closer to the mark? Well, there’s inexplicably no Wikipedia page for that. The closest we can come is the reactive computing mock turtle: reactive programming. The basic idea with reactive programming is that the behavior of pieces of software can be declaratively defined, and thus evaluated in real-time – just as spreadsheet cells update automatically when a value they refer to changes.
There’s more to the reactive story than software that updates automatically, however, as a visit to the reactive manifesto illustrates. This wise caterpillar of a manifesto calls out four key reactive traits: event-driven, scalable, responsive, and resilient – essentially calling for Cloud-friendly, event-driven architectures that have the declarative behavior definition we know and love from the spreadsheet – only now across a hybrid enterprise context. Mushroom, anyone?
It’s no coincidence that Bloomberg Agile Architecture™ (BAA) also calls out responsiveness and resilience, although the BAA contexts for these terms are aspects of business agility rather than software – but suffice it to say, if your software doesn’t have these traits, it’s unlikely your organization is agile. Alas, we thought we saw the Cheshire Cat of agility, but all we saw was its smile. The people behind the reactive manifesto, however, have a far more technical context for these terms – Play Framework, an open source web application framework for Java and Scala that bills itself as lightweight, stateless, and Web-friendly.
At this point this Cortex might have gone down the Scala rabbit hole – but I’ll save that for a future issue (Through the Looking Glass, perhaps?). Just for fun, however, let’s follow the stateless thread of this adventure to the beach where the Walrus and the Carpenter entertain their oysters. I’ve discussed statelessness over the years in many contexts, from the challenge of maintaining business process instance state with stateless Services, to the role hypermedia play in transferring state to the client if you actually follow REST properly (which almost no one does), to the challenges state management presents to Cloud-based applications. Understanding the relationship between statelessness and real-time behavior, however, ties all these concepts together in a nice package. The oysters, however, aren’t nearly so satisfied.
State, in fact, is the Queen’s tarts of real-time computing. Sure, sometimes your software behavior can be completely reactive: event happens, do some stuff, give some kind of result, and never keep track of anything or wait around for somebody else to finish something. Such processing can be blisteringly fast, of course. It’s when you have to keep track of something that problems arise: where do you do the tracking? Do you have to keep track of multiple things at once when they might interact somehow? How permanent does the tracking have to be? And most importantly: won’t all this tracking slow everything down?
Time to hide the tarts: we could simply keep track of everything in the database. We get unlimited persistence, but databases are relatively slow and scaling them can be difficult. So let’s call upon the knave of hearts to spirit away those tarts to some piece of infrastructure in our middle tier, like an application server or an ESB. The database breathes a sigh of relief, but now we have a Cloud-unfriendly centralized state management approach. So instead, let’s pass the tarts to the client – after all, that’s where REST got its name (Representational State Transfer, natch). We now have scalability and Cloud friendliness, but this approach doesn’t deal well with shared state (as we would need for any type of collaborative application), and nobody likes HATEOAS, even when they understand it.
Enter caching. The idea of a cache is to temporarily store those pesky state tarts, thus lightening the load on the persistence tier. And calloo callay! We can now cache in memory, making it wicked fast. But we still have the Cloud-friendliness problem, so enter from the Queen’s croquet pitch the distributed in-memory cache. Cloud-friendly, check. Wicked fast, check. Responsive? Well, it depends on the color of the roses. The problem here, of course, is the problem caches always have: if all your data are always changing or every interaction always requires different data, caches are worse than useless, since caching something only makes sense if somebody is going to use it a few times before you need to refresh it.
At this point there’s only one more place for the tarts to go: back to the database. We need faster databases that are both Cloud-friendly and deal well with the continually exploding nature of Big Data. It’s no wonder, therefore, that the database marketplace is undergoing a dramatic period of innovation. Yes, another rabbit hole for yet another day – but let’s tease out a single architectural tea party that relates directly to real-time: immutability.
Your mad hatter of a database is immutable if it only supports writes that append data but no updates or deletes. Instead, to handle these pesky changes, additional records are added that indicate a previous record has changed. Immutability is essential for solving some knotty problems with concurrency – a mischievous dormouse for distributed computing since the client/server days and still a hassle in today’s Cloud-enabled world. As anyone who has used GitHub or a similar immutable data store can attest, immutability is the key to scaling a database that supports a large number of users who can add information, since all changes are handled as new data, and furthermore, the data store maintains a complete audit trail of everything that has ever happened, regardless of whether we all move down one seat at the table in search of clean dishes.
GitHub additionally works well with caching because it must assemble the current version of each stored file by adding together all the changes, or diffs, to that file. Temporary storage of each current version thus lightens the load on the underlying data store. But in other situations where the underlying data are always in flux, immutability still helps to address the real-time need. Reads can be extraordinarily fast compared to traditional databases, because the database can look to the index to identify the latest version of a record.
And so our adventure through real-time computing brings us to indexing in all its glory – not just for finding the desired record, but also for all the metadata necessary to assemble the various diffs in order to deliver the current version of a record in real-time. The metadata story for real-time, however, doesn’t stop at indices, as the army of metadata playing cards are central to the notion of declarative programming.
We have thus come full circle to the notion of reactive programming, which includes declaratively defining the behavior of pieces of software as simply as entering formulas into cells in a spreadsheet. And while a single worksheet may have tens of thousands of cells, extending the role metadata play to a distributed enterprise context ups the ante on the relationship between reactive programming and metadata: being able to resolve the desired behavior of any software given the combination of all metadata in the relevant environment – for every interaction, in real-time.
We call such resolution dynamic constraint satisfaction, where the metadata describe the relevant constraints, even though they may be fully dynamic. Calculating the result, therefore, must take place in real-time. Envision one massive spreadsheet, only instead of formulas in the cells, you have any reactive software you might find anywhere in your IT environment. The cell with your final answer is always correct, and always up to date – in real-time. Off with their heads!
The Intellyx Take
Our adventure down the real-time rabbit hole in this enterprise IT wonderland took us many different places. And while each of the critters we met had its own real-time story, our adventure tied all the individual stories together. Such is the nature of real-time: we have many moving parts and they must all be working at top form together in order to deliver a true real-time experience to each user.
Real-time behavior, therefore, is an important challenge for any digital professional, as there is more to digital transformation than meets the eye. Your customers, partners, and broader audience expect such behavior from your digital efforts, and to keep them happy you need the right technology and most importantly, the right architecture to glue everything together in real-time.
SYS-CON Media announced today that @ThingsExpo Blog launched with 7,788 original stories. @ThingsExpo Blog offers top articles, news stories, and blog posts from the world's well-known experts and guarantees better exposure for its authors than any other publication. @ThingsExpo Blog can be bookmarked. The Internet of Things (IoT) is the most profound change in personal and enterprise IT since the creation of the Worldwide Web more than 20 years ago.
Apr. 25, 2015 11:00 AM EDT Reads: 2,494
The world's leading Cloud event, Cloud Expo has launched Microservices Journal on the SYS-CON.com portal, featuring over 19,000 original articles, news stories, features, and blog entries. DevOps Journal is focused on this critical enterprise IT topic in the world of cloud computing. Microservices Journal offers top articles, news stories, and blog posts from the world's well-known experts and guarantees better exposure for its authors than any other publication. Follow new article posts on Twitter at @MicroservicesE
Apr. 25, 2015 11:00 AM EDT Reads: 2,064
SYS-CON Events announced today that robomq.io will exhibit at SYS-CON's @ThingsExpo, which will take place on June 9-11, 2015, at the Javits Center in New York City, NY. robomq.io is an interoperable and composable platform that connects any device to any application. It helps systems integrators and the solution providers build new and innovative products and service for industries requiring monitoring or intelligence from devices and sensors.
Apr. 25, 2015 11:00 AM EDT Reads: 2,071
Wearable technology was dominant at this year’s International Consumer Electronics Show (CES) , and MWC was no exception to this trend. New versions of favorites, such as the Samsung Gear (three new products were released: the Gear 2, the Gear 2 Neo and the Gear Fit), shared the limelight with new wearables like Pebble Time Steel (the new premium version of the company’s previously released smartwatch) and the LG Watch Urbane. The most dramatic difference at MWC was an emphasis on presenting wearables as fashion accessories and moving away from the original clunky technology associated with t...
Apr. 25, 2015 11:00 AM EDT Reads: 2,020
SYS-CON Events announced today that Litmus Automation will exhibit at SYS-CON's 16th International Cloud Expo®, which will take place on June 9-11, 2015, at the Javits Center in New York City, NY. Litmus Automation’s vision is to provide a solution for companies that are in a rush to embrace the disruptive Internet of Things technology and leverage it for real business challenges. Litmus Automation simplifies the complexity of connected devices applications with Loop, a secure and scalable cloud platform.
Apr. 25, 2015 11:00 AM EDT Reads: 1,716
In 2015, 4.9 billion connected "things" will be in use. By 2020, Gartner forecasts this amount to be 25 billion, a 410 percent increase in just five years. How will businesses handle this rapid growth of data? Hadoop will continue to improve its technology to meet business demands, by enabling businesses to access/analyze data in real time, when and where they need it. Cloudera's Chief Technologist, Eli Collins, will discuss how Big Data is keeping up with today's data demands and how in the future, data and analytics will be pervasive, embedded into every workflow, application and infra...
Apr. 25, 2015 11:00 AM EDT Reads: 1,418
As Marc Andreessen says software is eating the world. Everything is rapidly moving toward being software-defined – from our phones and cars through our washing machines to the datacenter. However, there are larger challenges when implementing software defined on a larger scale - when building software defined infrastructure. In his session at 16th Cloud Expo, Boyan Ivanov, CEO of StorPool, will provide some practical insights on what, how and why when implementing "software-defined" in the datacenter.
Apr. 25, 2015 11:00 AM EDT Reads: 1,598
So I guess we’ve officially entered a new era of lean and mean. I say this with the announcement of Ubuntu Snappy Core, “designed for lightweight cloud container hosts running Docker and for smart devices,” according to Canonical. “Snappy Ubuntu Core is the smallest Ubuntu available, designed for security and efficiency in devices or on the cloud.” This first version of Snappy Ubuntu Core features secure app containment and Docker 1.6 (1.5 in main release), is available on public clouds, and for ARM and x86 devices on several IoT boards. It’s a Trend! This announcement comes just as...
Apr. 25, 2015 11:00 AM EDT Reads: 1,355
SYS-CON Events announced today that Vicom Computer Services, Inc., a provider of technology and service solutions, will exhibit at SYS-CON's 16th International Cloud Expo®, which will take place on June 9-11, 2015, at the Javits Center in New York City, NY. They are located at booth #427. Vicom Computer Services, Inc. is a progressive leader in the technology industry for over 30 years. Headquartered in the NY Metropolitan area. Vicom provides products and services based on today’s requirements around Unified Networks, Cloud Computing strategies, Virtualization around Software defined Data Ce...
Apr. 25, 2015 10:30 AM EDT Reads: 1,717
SYS-CON Events announced today the IoT Bootcamp – Jumpstart Your IoT Strategy, being held June 9–10, 2015, in conjunction with 16th Cloud Expo and Internet of @ThingsExpo at the Javits Center in New York City. This is your chance to jumpstart your IoT strategy. Combined with real-world scenarios and use cases, the IoT Bootcamp is not just based on presentations but includes hands-on demos and walkthroughs. We will introduce you to a variety of Do-It-Yourself IoT platforms including Arduino, Raspberry Pi, BeagleBone, Spark and Intel Edison. You will also get an overview of cloud technologies s...
Apr. 25, 2015 10:15 AM EDT Reads: 2,985
Containers and microservices have become topics of intense interest throughout the cloud developer and enterprise IT communities. Accordingly, attendees at the upcoming 16th Cloud Expo at the Javits Center in New York June 9-11 will find fresh new content in a new track called PaaS | Containers & Microservices Containers are not being considered for the first time by the cloud community, but a current era of re-consideration has pushed them to the top of the cloud agenda. With the launch of Docker's initial release in March of 2013, interest was revved up several notches. Then late last...
Apr. 25, 2015 10:00 AM EDT Reads: 2,822
The only place to be June 9-11 is Cloud Expo & @ThingsExpo 2015 East at the Javits Center in New York City. Join us there as delegates from all over the world come to listen to and engage with speakers & sponsors from the leading Cloud Computing, IoT & Big Data companies. Cloud Expo & @ThingsExpo are the leading events covering the booming market of Cloud Computing, IoT & Big Data for the enterprise. Speakers from all over the world will be hand-picked for their ability to explore the economic strategies that utility/cloud computing provides. Whether public, private, or in a hybrid form, clo...
Apr. 25, 2015 10:00 AM EDT Reads: 4,155
WebRTC is an up-and-coming standard that enables real-time voice and video to be directly embedded into browsers making the browser a primary user interface for communications and collaboration. WebRTC runs in a number of browsers today and is currently supported in over a billion installed browsers globally, across a range of platform OS and devices. Today, organizations that choose to deploy WebRTC applications and use a host machine that supports audio through USB or Bluetooth can use Plantronics products to connect and transit or receive the audio associated with the WebRTC session.
Apr. 25, 2015 10:00 AM EDT Reads: 1,876
Internet of Things (IoT) will be a hybrid ecosystem of diverse devices and sensors collaborating with operational and enterprise systems to create the next big application. In their session at @ThingsExpo, Bramh Gupta, founder and CEO of robomq.io, and Fred Yatzeck, principal architect leading product development at robomq.io, will discuss how choosing the right middleware and integration strategy from the get-go will enable IoT solution developers to adapt and grow with the industry, while at the same time reduce Time to Market (TTM) by using plug and play capabilities offered by a robust I...
Apr. 25, 2015 10:00 AM EDT Reads: 1,959
IoT is still a vague buzzword for many people. In his session at @ThingsExpo, Mike Kavis, Vice President & Principal Cloud Architect at Cloud Technology Partners, discussed the business value of IoT that goes far beyond the general public's perception that IoT is all about wearables and home consumer services. He also discussed how IoT is perceived by investors and how venture capitalist access this space. Other topics discussed were barriers to success, what is new, what is old, and what the future may hold. Mike Kavis is Vice President & Principal Cloud Architect at Cloud Technology Pa...
Apr. 25, 2015 10:00 AM EDT Reads: 6,174
@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 case) takes into account the number and quality of contextual references that a user receives.
Apr. 25, 2015 10:00 AM EDT Reads: 1,990
Buzzword alert: Microservices and IoT at a DevOps conference? What could possibly go wrong? Join this panel of experts as they peel away the buzz and discuss the important architectural principles behind implementing IoT solutions for the enterprise. As remote IoT devices and sensors become increasingly intelligent, they become part of our distributed cloud environment, and we must architect and code accordingly. At the very least, you’ll have no problem filling in your buzzword bingo cards.
Apr. 25, 2015 10:00 AM EDT Reads: 2,191
SYS-CON Events announced today that AIC, a leading provider of OEM/ODM server and storage solutions, will exhibit at SYS-CON's 16th International Cloud Expo®, which will take place on June 9-11, 2015, at the Javits Center in New York City, NY. AIC is a leading provider of both standard OTS, off-the-shelf, and OEM/ODM server and storage solutions. With expert in-house design capabilities, validation, manufacturing and production, AIC's broad selection of products are highly flexible and are configurable to any form factor or custom configuration. AIC leads the industry with nearly 20 years of ...
Apr. 25, 2015 10:00 AM EDT Reads: 4,978
As enterprises move to all-IP networks and cloud-based applications, communications service providers (CSPs) – facing increased competition from over-the-top providers delivering content via the Internet and independently of CSPs – must be able to offer seamless cloud-based communication and collaboration solutions that can scale for small, midsize, and large enterprises, as well as public sector organizations, in order to keep and grow market share. The latest version of Oracle Communications Unified Communications Suite gives CSPs the capability to do just that. In addition, its integration ...
Apr. 25, 2015 09:30 AM EDT Reads: 4,343
SYS-CON Events announced today that Creative Business Solutions will exhibit at SYS-CON's 16th International Cloud Expo®, which will take place on June 9-11, 2015, at the Javits Center in New York City, NY. Creative Business Solutions is the top stocking authorized HP Renew Distributor in the U.S. Based out of Long Island, NY, Creative Business Solutions offers a one-stop shop for a diverse range of products including Proliant, Blade and Industry Standard Servers, Networking, Server Options and Care Packs. As a trusted supplier, CBS guarantees quality controlled stock levels thanks to an Auto...
Apr. 25, 2015 09:15 AM EDT Reads: 4,346