TAG | Big Data
As data has grown exponentially at many sites, companies have been forced to horizontally scale their data. Some have turned to sharding of databases like Postgres or MySQL, while others have switched to newer NoSQL data systems. There have been many debates in the last few years about SQL vs. NoSQL data management systems and which is better. What many have failed to grasp, though, is how similar these systems are and how complex they both are to run in production in high scale.
Both of these systems represent what I call a Data Cloud. This Data Cloud is logical data set spread across many nodes. While developers have heated debates about which system is better and how to design code around it, those in DevOps usually struggle with very similar issues because the two systems are mostly the same. Both systems
- Run across many nodes with large amounts of data flowing between them and from/to the application
- Strain both the hardware of all nodes, and the network connecting them
- Maintain duplicate data across nodes for fault tolerance, and must have failover ability
- Must be tuned on a per node and cluster-wide bases
- Must allow for growth by adding additional nodes.
Running this Data Cloud in production presents a new set of challenges for DevOps, many of which are not well understood or addressed. One of the main challenges is the management and monitoring of these systems, for which few (if any) tools or products exist at this time.
When systems were smaller and you ran a single Database in production, you probably had all the necessary systems in place. With a plethora of products for Management, monitoring, visualizing data, and backups, it was not hard to be successful and meet your SLAs.
But now all this is much more complex once you move into the world of the Data Cloud. Now you have a large number of nodes, all representing the same system and still needing to meet the same SLAs as the old simple DB from before. Let us look at the challenges for running a production Data Cloud successfully.
Capacity Planning
Do you know how many nodes you need? How many nodes do you put in each replica set? How much latency and throughput do you need in your network for the nodes to communicate fast enough? What is the ideal hardware to use for each node to balance performance with costs?
Monitoring
How do you monitor dozens, hundreds or even thousands of nodes all at once? How do you get a unified view of your data cloud, and then drill down to the problem nodes? Are there even any off-the-shelf monitoring tools that can help? Your old monitoring tool won’t be very useful anymore unless you are willing to look at every node one by one to see what is going on there.
Alerting
How do you set up a common set of alerts across all nodes? And how do you keep your alert thresholds in sync as you add nodes and remove them? More importantly, even assuming you have alerting in place, once staff receives critical alerts, how will they know where to find the troubled node in the massive cloud, or whether it’s a node level issue or more global in nature? This must be done quickly during critical outages.
Data Visualization
How does your staff view the data when it is distributed? In case of data inaccuracy, how can they quickly identify the faulty nodes and fix up the data?
Performance Tuning
As performance degrades, how do you troubleshoot and identify the bottlenecks? How do you find which nodes by be the cause of the problem? How do you improve performance across all the nodes.
Data Cloud Management
How do you back up all the data while consistently tracking which nodes were backed up successfully and when? How do you make schema changes across all the nodes in one consistent step without breaking your app? And how do you make configuration changes on various nodes or across all nodes? And how do you track the configurations of each node and keep them consistent across your system?
By now you should see that there is a lot to think about before endeavoring to launch a production Data Cloud. Too many companies focus all their energies on deciding which DB or NoSQL system to use and developing their apps for it. But that might turn out to be the lesser of your challenges once you struggle to put the system into production. Be sure you can answer all the questions I have listed above before your launch.
Boris.
Big Data, Cassandra, cloud, Data Cloud, Data Management, DevOps, NoSQL
The New Generation of Enterprise Java: Designing for the Next Big Thing
Posted by App Man | Feb, 16, 2012 | In Java
0 Comments
There’s been a generational shift in how Java enterprise applications are created: they have been broken down from a monolithic architecture into multiple services, and they’re highly interconnected and distributed. How can Java developers and Operations teams adapt to these changes?
This keynote will discuss the 4 Big Things that Java professionals need to design for now:
- Cloud: Most applications built will have some part of its service in the cloud
- Big Data: With the advent of NoSQL, Hadoop, and distributed caches, how should we now approach the data layer?
- Agile Development & Operations: Developers won’t just be responsible for the code, but how it’s deployed. How does that affect the DevOps relationships?
- Failure is an option: Distributed systems won’t just invite but demand failure, so how can failure become part of the initial design?
This talk will present recommended strategies and approaches for these new design imperatives.
You can watch the keynote here
Agile Development, appdynamics, application monitoring, Big Data, cloud, DevOps, Stephen Burton, WJAX, WJAX 2011
It’s been a great start to 2012 for us at AppDynamics. Last week, we were recognized by Forrester Research in their APM market overview, and at the end of 2011, Gartner included us in their report “APM Innovators: Driving APM Technology and Delivery Evolution” which was co-written by Will Capelli and Jonah Kowall.
According to Gartner’s report, APM is evolving into four key market requirements:
1. Complex and varied End Points
2. Cloud Services
3. Packaged Applications
4. Big Data
Read the Full Post…
APm SaaS, APMaaS, appdynamics, ATG, Big Data, Extrahop, Gartner APM, Gartner APM Innovators, Jonah Cowall, New Relic, Splunk, Will Capelli, Yantra
Hey Santa Claus, what’s happening man?
Well, it’s that time of year again where unfortunately I have to work. Gift orders are up 50% and my elves are working their socks off right now stocking my warehouses for the big day. I honestly don’t know how I would have coped without my new ElfOps team–they’ve been elastic and fantastic thanks to our new AWS hosted applications. The bad news is that my applications have processed record orders in 2011 so I’ll have to work harder. Frankly, this sucks.
Come again? Santa is using the cloud?
Isn’t everyone these days? I mean what else can I possibly do when my orders and subscriptions double each year? If Santa can’t scale, I spend my vacation reading angry letters from parents about how I made their kids cry and upset on Christmas Day. Forget that. I’d rather sit on a beach in Hawaii drinking Mojito’s catching a nice tan. In fact, I should be able to upgrade myself to the Four Seasons in Hawaii in 2012 due to the money I’ve saved by migrating to the cloud. You simply wouldn’t believe how much my own data center was costing me, not to mention those expensive IT Elf consultants I had to bring in. I’m now a lean mean parcel delivering machine and it’s all thanks to the cloud.
Amazon EC2, apm, App Man, appdynamics, Application Performance, Big Data, CA Wily, cloud, Hadoop, Order Fallout, Santa
AppDynamics takes Cassandra out for Beer and Big Data
Posted by App Man | Aug, 25, 2011 | In App Man Beers
0 Comments
Welcome Cassandra, let’s start with a quick introduction of who you are and what you can do.
I am a high-performance distributed scalable database. I am really good at doing lots of operations and growing as your data needs increase, and to top that all off I run on commodity hardware which means I’m really great for running on the cloud.
Awesome, oh by the way, what beer are you drinking tonight?
Tonight I’m drinking a Shiner from good old Texas.
Excellent. First, I heard it on the grapevine and you did tell me that you’re highly available. Can you confirm or deny these rumors, and what does that really mean?
Highly available means that a distributed system can lose one or more of its servers and still keep the cluster as a whole up and running. In other words, because I’m designed to run on commodity hardware, failure should be expected. In my scenario, I can lose a server and keep on chugging along without the cluster going down.
Apache Cassandra, appdynamics, Big Data, Cassandra, Cassandra JMX, Cassandra Monitoring, DataStax, NoSQL
AppMan talks Cloud and Big Data with EMC
Posted by App Man | Jul, 20, 2011 | In App Man Beers, Cloud
0 Comments
Welcome Jeremy, lets start with a quick introduction of who you are and what you do at EMC.
I run marketing at EMC working for Joe Tucci, our CEO. Been there about 18 months.
And what beer will you be drinking tonight?
That new Bud in bottles that includes Lime – why did no one think of that until now ? I hate putting that real lime in my beer and squirting it all over my shirt. American innovation leads the way again.
So this Cloud meets Big Data stuff, what’s all that about?
Cloud has emerged as the biggest disruptive force in IT for at least the last decade. And maybe ever. Complexity in IT departments is at a breaking point, so they are re-transforming their infrastructure around virtualized servers, storage, and networking, transforming their applications using frameworks like Spring and Ruby and transforming access using a myriad of consumer devices such as the iPad. Once this transformation is complete, IT will be able to run the way God intended it to run – as an agile, efficient service.
apm, appdynamics, Big Data, cloud, EMC, Hadoop, Jeremy Burton, NoSQL, Private Cloud, Public Cloud, VMWare
MongoDB Fights Back Against Cassandra
Posted by App Man | Jun, 17, 2011 | In App Man Adventures
0 Comments
AppMan Adventures: Cassandra Meets Ops
Posted by App Man | May, 19, 2011 | In App Man Adventures
0 Comments
Will NoSQL and Big Data Kill the DBA?
Posted by App Man | May, 18, 2011 | In APM Thought Leadership, Java
1 Comment
Remember the good old days where developers and DBAs would argue over who and what was killing the relational database? “It’s your crap SQL,” “You forgot to create an index,” “You don’t know what an index is”…and so on. Do you remember when the DBA occasionally spoke and served out humble pie on how to make SQL statements go faster? Well my friends, those biblical days could soon be over with the adoption of NoSQL technologies. Or is that not true? Will the DBA perform a mighty rollback?
If you look back at the last decade, there is no doubt nearly all business today is connected or conducted online. In fact I can’t physically remember the last time Mrs. App Man and I walked into the bank, wrote a letter, or returned a movie rental. Half our life is done online and it’s not stopping anytime soon now that Mrs. AppMan has a new shiny MacBook to shop on. IDC and EMC recently published a report that stated 70% of the digital universe this year will be generated by users at home, work, and on the go. In total this amounts to 880 billion gigabytes of data being created this year. All that data has got to go somewhere, and it’s left to applications to query and make this data available to users whereever they are in the world. Data availability and performance has never been so important.
apm, Application Performance Management, Big Data, Cassandra, Coherernce, DBA, Distributed Caches, Hadoop, NoSQL







