Wednesday, May 25, 2011

Eliminating System Bottlenecks

Bottlenecks are no fun in any situation. Ask anyone who has to drive through rush hour traffic in the morning—a freeway bottleneck is where you sit in your car, unmoving, fretting over being late to work. If you get caught up in a security bottleneck in an airport, you’re dashing frantic looks at the clock, worried that you’re going to miss your flight. There are many more such examples, all equally infuriating.

Bottlenecks also occur in computer systems, and can be a major source of frustration for IT personnel. Technically, a bottleneck is a delay in transmission of data through the circuits of a computer's processor or over a network.

In processors, the delay typically occurs when a system's bandwidth cannot support the amount of information being relayed at the speed it is being processed. If all of the components of a system are not able to feed the same amount of data at the same speed, a delay is created. For example, a 2GB processor will be severely bottlenecked by an 800MB memory bandwidth.

In the network situation, the flow of information transmitted across a networks is slowed down. Network connections were originally designed to transmit only text files, and the proliferation of bandwidth-intensive transmissions such as high-resolution graphics has caused bottlenecks in the process. These can also be caused by file system bottlenecks, as will be seen below.

One basic factor that can cause bottlenecks is often overlooked, and should always be addressed first: that of the reading and writing of files. If files are not properly organized on a drive,  they are written and read in many pieces—which can jam up memory, processors and networks as well. It takes longer to read the file from the drive into the memory, then from the memory into the processor. The processor then must wait for all the data to be assembled, and is itself slowed down.

Networks become jammed because these many file segments are having to be transmitted individually.

Bottlenecks cause system slows, downtime and increased energy consumption—and without addressing bottlenecks such issues will not be avoided. Additionally, bottlenecks will cause tremendous expenditure in IT hours chasing them down, many times futilely if the actual cause is not tackled.

The right choice to be made by IT staff is to address the reading and writing of files right at the beginning, using performance technology designed to do so. There is even technology available today that prevents a majority of them before they even occur.

Before wasting time attempting to solve performance and network efficiency issues, make sure to address file system bottlenecks completely in the beginning.

Wednesday, May 18, 2011

Balancing the Powerful Simplicity of SAN with Fragmentation Prevention

As with everything in computing, one of the primary goals developers have for storage area networks (SANs) is simplicity. SAN continues to advance with the advent of self-optimization, virtualization, storage provisioning and other benefits which make the technology more automatic. As SAN becomes more accessible and affordable, more companies are taking advantage of its many benefits.

The whole idea of a SAN, of course, is moving storage away from production servers, thereby freeing up resources for active company traffic. High-speed fiber channel networks make it possible for the switch to SAN to be invisible to the user, simply because speeds are similar to direct attachment of disks. Again, the goal is simplicity.

If file fragmentation is not addressed with an equally simple and powerful approach, this goal becomes less obtainable. All of this advanced technology must still read files from hard drives. Due to the splitting of files into thousands or tens of thousands of fragments, unnecessary complexities are introduced into the scheme. And access speed—another prime goal of a SAN—is nullified.

The various technologies being employed to assist SANs in being faster and more automatic each have their own unique susceptibility to fragmentation. For example, thin provisioning allows advance allocation of disk space. But at the same time, the file system may simply write data wherever space is to be found. If data is written to a “high” logical cluster number (say, cluster 200), all clusters from zero to 200 will be allocated even if not used. When data is added to an old file, new files are added or deleted, or an old file is expanded, the difference between file system disk allocation and storage system thin provisioning can contribute to fragmentation, over-allocation, and less efficient use of storage space.

Another example is virtual machines. At the very least, file I/Os are passed through a host and a guest system; file fragmentation wreaks havoc by adding multiple I/Os where there are already plenty extra.

Technology such as SAN requires an equally powerful—and simple—fragmentation solution. Following the trend of full automaticity, the most beneficial solution today is one which functions fully automatically, in the background, requiring no intervention from IT personnel. It is now even possible to prevent a majority of fragmentation before it occurs, putting its complex issues thoroughly in the past.

A SAN can now bring a robust resource saving storage solution to any site. As a companion, the fragmentation solution employed must be comparably robust—and simple.

Wednesday, April 27, 2011

Free Defragmenter: For the Enterprise?

When most people buy a large-screen TV, they usually do so in an effort to bring the experience they might have in a movie theater to their homes. And bringing it home is usually somewhat of an event: everyone plops down on the couch, perhaps popcorn is made, and the new acquisition is fired up. Everyone waits...and there it is! The giant, lifelike crystal-clear picture that everyone wanted!

But something is wrong. While that picture is amazing, it is accompanied by sound that is tinny and has no depth at all. This is because the family, in their rush to expand their home entertainment experience, didn’t stop to think that you not only see great things on such a television, you also hear them. Now all they have for sound is the tiny free built-in speakers—never meant to be a high-quality sound experience matching the picture. If they’re going to really do it right, they’ll need to go back out and get a good quality surround-sound system.

Moving over into the field of computers, a similar thing could be said about a free or included defragmenter. A computer system in an enterprise is robust, can store and retrieve millions of files, and can serve them up quickly from servers to users near-instantly. High-tech innovations such as SAN, NAS, and virtual machines are consistently brought on board to increase that experience and functionality.

File fragmentation, however, can slow that experience and functionality to a crawl. In order to address it, an enterprise-ready fragmentation solution needs to be brought to bear. If not, fragmentation compounds unchecked—and all of its symptoms such as slow performance, unexpected hangs and freezes and reduced hardware life continue unabated.

Much like the tiny speakers were never meant to provide a true home theater experience, the free defragmenter was never meant to address fragmentation on an enterprise level. It must either be run manually or be scheduled—neither of which are options in today’s enterprise, with servers that must remain up and running 24/7.  Additionally, it will be found that this defragmenter does not have functionality to keep up with the hectic rates of fragmentation found in today’s business environments. 

The only true solution for an enterprise is one that prevents a majority of fragmentation so that it never impacts the system or users. It never requires scheduling or any kind of intervention from IT staff—which leaves them free to address more urgent priorities. Best of all, maximum performance and reliability are assured.

Wednesday, April 20, 2011

Evaluating an Enterprise Fragmentation Solution

There is an old expression: “Never bring a boy to do a man’s job.” Crude and politically incorrect though this saying may be, it does convey a truth: if you want to get a task accomplished, make sure the person you assign to it has the necessary know-how to get it done (be they man, woman or juvenile). For example, you wouldn’t bring a high-school student who has just started auto shop classes to make repairs on a passenger jet plane. Or, you wouldn’t put an apprentice fireman in charge of putting out an oil well fire.

Similarly, any software application you employ needs to be adequate to the task at hand. For instance, if you were required to create a full color brochure for your business, you wouldn’t use Microsoft Paint or another free, very basic graphics program. It’s not that any of these are bad products, it’s just that you really need something like Adobe Illustrator to obtain the degree of flexibility, options and detail that the job actually requires.

When it comes to solutions to fragmentation, there are basic, free or inexpensive solutions available as well. Some enterprises seek to cut licensing costs by employing one of these—only to discover down the road that fragmentation is worse than ever, simply because the “solution” they employed was not adequate, and IT costs have spiraled out of control. Again, these aren’t “bad” solutions—they’re just not meant to address the critical levels of fragmentation that occur in today’s corporate computing environments.

The first consideration on evaluating an enterprise-level solution to fragmentation should be, is it enterprise tested and proven? Can it stand up in real-world environments? Read reviews and evaluations. Talk to sites that have used it. Ask them if it really does the job, or if they having to constantly try and tweak it or find “workarounds” to a fragmentation problem that is still persisting.

It’s easy to tell if the utility you’re evaluating isn’t doing the job: check the fragmentation levels before, during and after. See if the utility actually finishes running and accomplishes the job. Many utilities, if they aren’t up to the challenge, will simply grind endlessly without achieving the goal of files in a defragmented state. An adequate solution will eliminate fragmentation and return a system to its native maximum performance.

A third (but no less important) consideration is, how much human intervention is required? Today, technology exists to prevent a majority of fragmentation before it ever occurs—fully automatically. Valuable IT time is not taken up trying to schedule or run a fragmentation solution; the solution is simply employed, and no one needs to worry about fragmentation from there on out. A basic solution will come nowhere near that level of functionality.

File fragmentation can be a costly problem, if not properly addressed. Make sure the solution chosen is truly enterprise-level and does the job.

Wednesday, April 13, 2011

How Efficient Does Your System Have to Be?

The word “efficient” is defined as, “Performing or functioning in the best possible manner with the least waste of time and effort.” It could also be defined as, “The extent to which time or effort is well used for the intended task or purpose.”

The word certainly can be, and usually is, applied to a business process. The objective of any  business process is to get the highest quality work done in the least amount of time, with a minimum of effort. Similarly, "efficiency" also applies to mechanics, and has going back hundreds of years. It means getting the most mechanical production for the least amount of energy output. Efficiency in business processes, mechanics and energy also has a keen impact on economics.  

A computer system is unique in the regard that it directly impacts all these elements: business processes, mechanics, energy and therefore economics. Hence a computer system must be as efficient as possible in every aspect of its operation.

Many innovations have contributed to the highest-ever efficiency we see in systems today. Components use the least amount of power to render maximum processing and storage. Form factors have become increasing small so as not to over-utilize another aspect of efficiency: space. Probably the most interesting of these innovations is the virtual machine, which relies only on the power of its host and takes up no physical space at all.

One aspect of computer system efficiency that is still sometimes overlooked, however, is the use of I/O resources. Inefficient use of these impacts all other computer resources: drive space, hardware life, processing and backup speed, and—worst of all—performance.

A primary cause of I/O resource inefficiency is file fragmentation. A natural function of a file system, fragmentation means the splitting of files into pieces (fragments) in order to better utilize drive space. It is not uncommon for a file to be split into thousands or tens of thousands of fragments. It is the fact that each and every one of those fragments must be obtained whenever that file is accessed that wreaks such havoc on performance and resources.

For many years, defragmentation was the only method of addressing fragmentation. But because of today’s complex technical innovations, efficiency now comes in the form of optimization technology, which both maximizes performance and eliminates wasted disk I/O activity. The majority of fragmentation is now prevented, while file optimization and other innovations are combined to complete the solution.

This solution puts the final touch on—and completely maximizes—computer system efficiency.