Constant Thinking

Posts tagged "performance"

10 posts
exalogic_ib_network.jpg

How to Avoid Your Next 12-Month Science Project

Obsolete | In Engineered Systems
| 8 minute read

While most customers immediately understand how the magic of Oracle’s Hybrid Columnar Compression, intelligent storage servers and flash memory make Exadata uniquely powerful against home-grown database systems, some people think that Exalogic is nothing more than a bunch of x86 servers, a storage appliance and an InfiniBand (IB) network, built into a single rack.

After all, isn’t this exactly what the High Performance Computing (HPC) world has been doing for decades?

On the surface, this may be true. And some people tried exactly that: They tried to put together their own version of Exalogic, but then they discover there’s a lot more to building a system than buying hardware and assembling it together. IT is not Ikea.

Why is that so? Could it be there’s more going on behind the scenes than merely putting together a bunch of servers, a storage array and an InfiniBand network into a rack? Let’s explore some of the special sauce that makes Exalogic unique and un-copyable, so you can save yourself from your next 6- to 12-month science project that distracts you from doing real work that adds value to your company.

zfsssdfaq.jpg

Frequently Asked Questions About Flash Memory (SSDs) and ZFS

Obsolete | In Solaris
| 12 minute read

A few weeks ago, a reader asked me a couple of questions about SSDs and ZFS, hinting that this might be a good topic to write a blog post about.

Sure enough, just last week, a couple of similar questions came up, this time from a customer and a colleague at work.

Well, if that’s not a sign from heaven, I don’t know what is, so here’s a collection of frequently asked questions about flash memory (also known as solid state disks, or SSDs) and ZFS, with answers and some useful links, and an index, too.

4 commands that help you find bottlenecks

My Favorite Oracle Solaris Performance Analysis Commands

Obsolete | In Solaris
| 16 minute read

A while ago, we discussed some performance analysis basics:

  • Define what your problem is.

  • Figure out your goal: What metric needs to be in what ballpark for you to declare victory?

  • Analyze your system from the inside out: CPU, RAM, Disk, Network. Your Bottleneck is always in one of these 4 regions.

So what are the best commands for finding bottlenecks in each of the four categories above? Here’s part two of my Oracle Solaris Performance cheat sheet with some favorite tricks.

sparc_t3.jpg

Firesheep Killed HTTP. Long Live HTTPS With Free SSL Acceleration, Courtesy of SPARC/Solaris!

Obsolete | In Solaris
| 7 minute read

Before we continue our little Performance Analysis Series, let’s look at some current news:

The Bad News: HTTP is dead. Get over it. The killer? It’s called Firesheep, a free Firefox extension that makes it trivially easy for that kid sitting next to you in that Wifi hotspot to steal your Facebook, Twitter or other web services’ identity.

The Victims: The first line of victims are of course millions of unsuspecting users that are sitting in WLAN areas, not knowing that their web identities can be stolen at the click of the button. But the real victims are hundreds, if not thousands of website owners, starting with the who-is-who of web companies, who are now (rightly so) faced with the challenge of upgrading their web infrastructure to HTTPS as soon as possible, preferably overnight.

The Good News: Adding encryption to your web servers used to be an additional burden on the CPU, negatively impacting performance by as much as 2-3x. Fortunately, the new SPARC T3 processors enable you to switch SSL encryption on for your web applications, without any performance impact. This is possible through built-in encryption engines at the core level. And thanks to the Oracle Solaris Cryptographic Framework, it’s easy to take advantage of hardware encryption for any application that needs it.

Wanna learn more? Read on!

bottleneck.jpg

My Personal Oracle Solaris Performance Analysis Cheat Sheet

Obsolete | In Solaris
| 6 minute read

Over time, you tend to learn a Solaris performance trick or two. Or three. Or more. That’s cool, it’s how stuff works: You learn, you do, you remember.

Performance analysis and tuning is just like that: You learn a trick from a person that is more senior than you are, you apply it, you feel like a hero, you learn the next trick.

But having a bag of tricks is not enough. Because then you start trying out stuff without a system, and spend useless time hunting that problem with a hit-and-miss approach, gut-based only.

Therefore, I’m always glad to listen to Ulrich Gräf when he does one of his famous performance tuning workshops (if you’re lucky, you can catch Uli blogging in German here (no link, sun.com no longer exists)), because he’ll give you the full view, the context and the system too, when it comes to performance analysis.

So here’s my personal cheat sheet for Oracle Solaris Performance Analysis, including some guideance on how to systematically catch that elusive bottleneck.

zil.jpg

Solaris ZFS, Synchronous Writes and the ZIL Explained

Obsolete | In Solaris
| 13 minute read

When talking to customers, partners and colleagues about Oracle Solaris ZFS performance, one topic almost always seems to pop up: Synchronous writes and the ZIL.

In fact, most ZFS performance problems I see are related to synchronous writes, how they are handled by ZFS through the ZIL and how they impact IOPS load on the pool’s disks.

Many people blame the ZIL for bad performance, and they even try to turn it off (no link, solarisinternals.com no longer exists), but that’s not good. Actually, the opposite is true: The ZIL is there to help you.

In this article, we’ll learn what synchronous writes are, how they’re processed by ZFS, what the ZIL is, how it works, how to measure ZIL activity and how to accelerate synchronous write performance, which is at the root of many, if not the majority of ZFS performance problems.

vdevs.jpg

A Closer Look at ZFS, Vdevs and Performance

Obsolete | In Solaris
| 14 minute read

When looking at the mails and comments I get about my ZFS optimization and my RAID-Greed posts, the same type of questions tend to pop up over and over again. Here’s an example from a reader email: “I was reading about ZFS on your blog and you mention that if I do a 6 drive array for example, and a single RAID-Z the speed of the slowest drive is the maximum I will be able to achieve, now I thought that ZFS would be better in terms of speed. Please let me know if there is a newer ZFS version that improved this or if it does not apply anymore.” This is just an example, but the basic theme is the same for much for the reactions I see: Many people think that RAID-Z will give them always good performance and are surprised that it doesn’t, thinking it’s a software, an OpenSolaris or a ZFS issue.

In reality, it’s just pure logic and physics, and to understand that we should look a little closer at what vdevs are in ZFS and how they work.

ZFS Performance

Ten Ways to Easily Improve Oracle Solaris ZFS Filesystem Performance

Obsolete | In Solaris
| 19 minute read

This is a long article, but I hope you’ll still find it interesting to read. Let me know if you want me to break down future long articles into multiple parts instead.

One of the most frequently asked questions around ZFS is: “How can I improve ZFS performance?”.

This is not to say that ZFS performance would be bad. ZFS can be a very fast file system. ZFS is mostly self-tuning and the inherent nature of the algorithms behind ZFS help you reach better performance than most RAID-controllers and RAID-boxes - but without the expensive “controller” part.

Most of the ZFS performance problems that I see are rooted in incorrect assumptions about the hardware, or just unrealistic expectations of the laws of physics.

So let’s look at ten ways to easily improve ZFS performance that everyone can implement without being a ZFS expert.

Deduplicaed Folders Illustration

OpenSolaris ZFS Deduplication: Everything You Need to Know

Obsolete | In Solaris
| 8 minute read

Since November 1st, 2009, when ZFS Deduplication was integrated into OpenSolaris (no link, genunix.org no longer exists), a lot has happened: We learned how it worked, people got to play with it, used it in production and it became part of the Oracle Sun Storage 7000 Unified Storage System (no link, sun.com no longer exists).

Here’s everything you need to know about ZFS Deduplication and a few links to help you dig deeper into the subject:

Disks in a circle. How cute.

Home Server: RAID-GREED and Why Mirroring Is Still Best

Obsolete | In Home Server
| 11 minute read

After moving my blog to its new home and getting my hands dirty with Drupal, it’s time to continue my series of blog articles about setting up a home server. Remember? We talked about home server requirements (no link, sun.com no longer exists), then I presented to you my small and energy-efficient, still ECC-protected and powerful AMD-based home server (no link, sun.com no longer exists). Now it’s time to explore some different ZFS disk pool RAID strategies.