Sunday, October 20, 2013

Adding Capacity? Turn the Spigot Slowly.

Success does not consist in never making mistakes but in never making the same one a second time. - George Bernard Shaw
 I've seen this more than once on two different teams where I work:  on a network upgrade and on our BI Tools Team.  Capacity is identified as a problem which is causing incidents.  The solution is to submit a change to add horsepower.  Come Monday morning, new incidents arise.  To the clients the systems still aren't working, but to IS the problem has simply shifted.

When you add capacity to a system, you're fixing a bottleneck but are all of your downstream systems equipped to handle the deluge of new data coming their way?  You could be breaking South Fork Dam over Johnstown.  When you open the floodgates, are your systems ready?

In my case, an upgrade to SSRS server capacity threw more at the report source databases than they could handle.  After a day of intense investigation, we realized what needed to be done.  Adjust queue depths and indexes and upgrade disk frame technology and database server memory and CPU.  Additionally, the application support team took the most important and often overlooked step of report query tuning.  Soon everything was humming like a well oiled machine.

The lesson learned was that bottlenecks are systemic:  they don't go away they just move.  Before adding capacity, if you're lucky enough to be able to replicate Production in your Test environment, test the upgrade thoroughly.  If upgrading Test to match Prod is too expensive or wouldn't yield accurate results due to differences is load, then turn the upgrade spigot slowly.  The temptation to do everything possible all at once can be hard to resist, but changes are best done one at a time so the effects can be observed.  If multiple changes must go in at the same time, use administrative tools to restrict the effects, allowing you to turn the knob slowly and keep an eye on things.

Sunday, August 18, 2013

Too Many Choices, Not Enough Metadata

In my efforts to do a bathroom remodel I've realized a common point of frustration: search fatigue. Not to pick on Lowe's in particular but rather case in point because I like them, whether the search is bathtubs, tile or fixtures a customer's ability to filter search results seem limited mostly to the standard three: price, rating and brand. However if there is an online selection of over 200 Delta shower heads, and I'm looking for an antique bronze colored hand-wand-in-shower-head, it is a frustrating endeavor. 

So now some advice to retailers, particularly to home improvement retailers where a bad online search capability can cost you thousands: allow your products to be pivoted to the maximum number of common product dimensions. If your customers are buying windows, they want color, size (if not custom), material*, efficiency*, number of panes, open method, and whether replacement or new construction, in addition to price, rating and brand (*in fairness Lowe's had material and Energy Star certifications as categories- but there are four binary categories for Energy Star on their mobile site which is confusing).  You already have product specs on your site, now unleash the metadata possibilities!