Thursday, November 17, 2016

SQL Server Migrations Lessons Learned

With the recent announcements surrounding all the wonderful things available in SQL Server 2016 SP1, I couldn't help but think about migrating my servers NOW.  I must be crazy, right?  I managed a migration from SQL Server 2005 to SQL Server 2014 in March of this year.  It's only been 8 months.  Don't I ever learn?  Actually it turns out, I do.  I learned a lot.  I was asked to share that experience with Idera via their April #SQLChat on Twitter.  

What is #SQLChat? I'm glad you asked.  If you already know, skip ahead to Question 1.  Still here? Good.  #SQLChat is an Idera Software sponsored SQL Community conversation that takes place entirely on Twitter.  A series of questions are asked & answered on a predecided topic.  There's a host (in today's example, I played that role) that came up with the questions & solicits answers. There's the @Idera_Software twitter account that poses the questions.  There's a dozen or more SQL professionals that help answer these questions,  Finally, there are other SQLFamily twitter users that ask follow up questions.  It's less Q&A and more conversation. 

Here's what I did. What worked for you? 
On that note, I need to know a way to solve X. 
Here's a solution that might work. 

If you use TweetDeck or similar Twitter Interface Apps, trying following the #SQLChat hashtag.  If you can participate this month, great!  If not, read over the questions & answers at your leisure.  I promise, you'll learn something every time.

Q1: What are your deciding factors for migrating/upgrading #SQLServer and to what version? #SQLChat

My thoughts:  Would upgrade benefit the business? Are new features worth the time/effort/money? While some companies wait as late as possible, right up until End of Life for a product, others chose to be proactive. How does this benefit us? Is the payoff worth all the time, effort, planning, money, etc? This answer can vary by company and project.

I really loved the answers my SQL colleagues came up with.  They asked some great follow up questions & had great advice.  Answers varied on when they’d make the decision, what the driving factors would be, how they’d handle it, etc.  I’ve compiled some of those here for you.

Am I currently on a supported version? If not, time to upgrade.  Rob Volk @sql_r
"Do you wait for engine to seize before changing oil & filter in car?" ;) #sqlchat Rob Volk @sql_r

Business decision + vendor app support. Go to latest/greatest app will run on, preferably 2012 or 2014. #SQLChat -- Paul Timmerman @mnDBA

If I need\want to use newer features… If I have available licenses (we dont have an EA) #sqlchat – Monica Rathbun @sqlespresso

@Idera_Software How high of a SQL version will the related software support?  --Dave Mason @BeginTry

@Idera_Software Waiting til the last minute can lead to panic, mistakes AND loss of compliance certs #sqlchat  -- Rie Irish @IrishSQL

New features/functionality benefits, whether the system is covered under SA, and highest ver w/ app support. – Jamie Wich @Jamie_Wick

Q2: How do you decide your timeline from initial planning to push to production? #SQLChat

My thoughts:  We actually started with the date we wanted to Go Live & then built our calendar backwards from there.  We had to leave in a little time to spin tires & get stuck in the mud, but that Go Live date was the goal line.  It wasn’t moving.  To accomplish this, we had to do a few things.  We had to get buy in from sales & executive teams.  I’ve found if those guys, the ones with their eye on money want something, it usually happens.  Try to have someone on the development champion the change from inside. This will help drive them to reach their dates.  Get the migration put on their project roadmap early.  This will help guide them when they’re choosing which project to work on.  The one that’s already on the roadmap, of course!  Some people felt they didn’t have a voice in when the change happened but they seemed to keep their sense of humor about it.

Upper Management dictates most of the time .. and I just have to hit the mark #sqlchat – Monica Rathbun @sqlespresso

What date did the PM pull out of thin air and tell everyone else before consulting DBAs?  -- Bob Pusateri @SQLBob

I've never been a decision maker for upgrade timeline. I'm lucky to find out before it happens. – Rob Volk @sql_r

In my pharma jobs, I got RDBMS classified as infra, which gave us more flexibility for upgrading – Joey D’Antoni @jdanton

Regardless, the timeline always ends up shorter than you'd like  James Medlin @jmedlinz

Follow up question, do you allow development/QA time in your initial deadline? How much time is allotted? John Morehouse @SQLrus

Q3: Who do you get involved in the project? What teams have a say? Who leads? #SQLChat

My thoughts:  We started with management.  Not just executives, but all levels of management. We met with Director of Development to discuss what we wanted to do.  He was immediately on board and so was the people on his team doing the work.  We're a Software as a Service shop, so we aren't a vendor shipping out software.  These changes were going to be in-house. 

We identify 3 of our clients each release for a 3 month BETA test. Onsite engagements as well at that time.  --Jim Donahoe @SQLFlipFlopsDBA

Again, I'm not usually a decision maker. I'll add DEV, operations, support if they're not included by mgmt. – Rob Volk @sql_r

Collaborative effort. As a DB architect, we usually lead the charge but definitely get other teams involved. – John Morehouse @SQLRUs

A3: DBA Team is brought into project as a resource. We drive discussions around version of SQL Server. #sqlchat  --Paul Timmerman @mnDBA

A3 It Depends! Totally on the scope of the project, who gets most benefit, etc. #sqlchat -- Mike Essen @AtlSQL

Q4: What's the one thing you'd change or do differently with your next migration? #SQLChat

My thoughts:  So this is the easiest one for me to answer.  Frankly, this blog post may not have enough space to hold what I’d change or do differently.  First, have a project manager.  A good PM will think of all those details your techie brain won’t.  She’ll make sure people are staying on task & help identify what isn’t getting done.  Second, create a flight plan for the actual migration.  I learned this lesson many years ago and it’s stuck with me.  We create an excel spreadsheet with a row for every “to do” item, from building servers to restoring DBs for mirroring.  We provide an estimated start & end time, the person responsible, how we test it, etc. It might seem too detailed but trust me, this attention to detail pays off.  And this should be a living document.  Don’t be afraid to rewrite steps, times, etc. as you move through Staging, UAT and into Production.  Practice.  Repeatedly.  Until you’re sick of it.  Make sure you all know the steps to the dance.  A migration should be like a well-choreographed Broadway show.
Once again, my SQL colleagues didn’t let me down.  They came up with some great advice based on their experience.  Again, they maintained their sense of humor.

A4: Practice. Automate. Practice again. Automate more. Refine until I don't need to be there. #SQLChat –Rob Volk @sql_r

A4: Does "go back in time 5 years and do something differently in the first place" count as an answer? #sqlchat  -- Vicky Harp @VickyHarp

A4:To let somebody else manage it! HA Just to practice and practice until it goes smoothly with little interaction  -- Jim Donahoe @SQLFlipFlopsDBA

This! Having template processes helps a ton. Saves us a bunch of time. – Paul Timmerman @mnDBA

Not having to deal w/ multiple domains would be nice. :)  -- Dave Mason @BeginTry

Q5: Did you do a rolling migration or did you plan downtime? #SQLChat

My thoughts:  We chose to do a rolling migration on the databases but turned off client access to the applications.  Argenis Fernandez (T|B) gives a session on Rolling Upgrades that really cemented this as a choice for us.  The downside in using this method to upgrade versions is rollback.  Once you bring up the new version (with mirroring); you can’t fail back.  If you’ve turned off apps like we did, you wouldn’t lose transactions by bringing up the old DB though. We spent the week, days & hours leading up to the migration restoring backups.  First, restoring the full backup from the prior weekend, next the differential from the night before and finally a day’s worth of t-log backups.

Based on feedback on this question, most people agreed with this method.

A5: I've done both rolling upg. and planned downtime. Downtime is always an option, whether you plan for it or not #SQLChat – Rob Volk @sql_r

A5: I also always try to do rolling upgrade to new hardware/environment, easier and faster to roll back if needed. #SQLChat – Rob Volk @sql_r

I prefer a rolling migration with as little downtime as possible. Time = money usually. #sqlchat – John Morehouse @SQLRUs

A5: AGs are rolling migration. Stand-alone have planned downtime. Unsupported dbs are migrated off at upgrade. #sqlchat – Jamie Wick @JamieWick

A5: Rolling migration with downtime only for last log application. Standard process. #SQLChat – Paul Timmerman @mnDBA

Q6: What role did High Availability play in your decision to migrate? #SQLChat

My thoughts:  Most people agreed that moving to High Availability played a large role in their decision to migrate.  I work for a company that has high transactions with 24/7 uptime.  We needed to modernize the infrastructure and increase availability.  Moving to Availability Groups provided a sense of security & stability that execs required.  Just 2 weeks after migration from 2005 to 2014 (virtualized), we experienced corruption in our main production database.  These things never happen at a reasonable hour, so in the wee hours on a Sunday morning, I was able to use the readable secondary on the AG to repair the damaged data.  It took me a couple of hours, running select statements that attempted to read from the damaged pages, but with each error SQL Server replaced the damaged/missing data with corrected data.  What a payoff!  To be able to go to the executive team at work and say “We had an issue over the weekend that could have resulted in lost client data, but because of the investment YOU made in our infrastructure, we didn’t.”

A6: Huge! Recently were moving from SQL Server 2005. More confidence in newer renditions of HA features. #SQLChat – Paul Timmerman @mnDBA

A6: The new HA features of SQL definitely will play a role. #sqlchat  -- John Morehouse @SQLRUs

A6: HA is major factor for most prod dbs. #sqlchat – Jamie Wick @JamieWick

A6: None, Mirroring & Log Shipping have been around forever. Haven't ventured into AG yet. #sqlchat – Mike Essen @AtlSQL

A6 my biggest problem with AG is WFC requirement. Multiple servers, physical clusters, diverse geography. #SQLChat – Scott @ppcx

Wednesday, October 5, 2016

PASS Board Elections are here - time to make your voice heard

It's that time of year again, election season!  PASS Board of Directors balloting opens today, October 5th and wraps up October 11th.  You should make sure you vote, let your voice be heard.  It matters.  A lot of us see problems with the decisions being made with regard to the direction of PASS and the SQL Community.  If you're one of those people, now is your chance to do something about it.

I just want to get this out there before you read any further.  I'm throwing my support, for what it's worth, behind Wendy Pastrick.

 Why?  That's a simple one.  She has a history of performance, of doing what's right for Virtual Chapters, and focusing on the SQL Community.  I've gone to her several times over the years with Community related issues, User Group and SQL Saturday questions  and even more recently, feedback dealing with harassment both in person and online.  Every single time, she's waded into the middle of the fray, without shying away.  She's never said "That's not my problem."  Instead, she's said "While this is someone else's PASS responsibility, I've looped them in, how can we help?"  

I often hear the refrain that the BOD doesn't listen, they don't care about the people or they only care about vendors. I've never felt my concerns or complaints fell on deaf ears with Wendy.  I've never once believed that she didn't give a damn. Her response and follow through certainly implies that she gives a damn. Frankly, that's what we need at the Board of Directors level.  Someone that hasn't given up on the SQL Community.  That's Wendy, no doubt.

Check her out here:

Key Dates

Oct 5: Balloting Opens
Oct 6: Twitter Chat events
Oct 11: Campaigning and Balloting closes at noon pacific
Oct 12: Election Results announced  

Monday, July 11, 2016

Presenting on Gender Bias & Inequality at SQL Saturday #527, Columbus, Ohio

     This coming Saturday, July 16th, I'll be presenting my Women in Technology session on Identifying, Understanding and Combating Gender Bias.  First, let me thank Dave Maxwell (T|B) & the other organizers for inviting me to be a part of this event. Second, let me congratulate them on selecting so many sessions presented by women.  It wasn't a conscious effort on their part but I think that's just as amazing.  I'm told frequently by organizers that they'd love to pick more women speakers, but they just aren't submitting.  That wasn't the case here, 7 of the 30 sessions are presented by women.  We've seen similar ratios at Pensacola & upcoming in Baton Rouge. (SQLSat515)  Some of you may have noticed that we now highlight women speakers on a section of the PASS WIT page.  We continue to tweet about upcoming webinars and SQL Saturday speakers from the @PASS_WIT account.  Check these out frequently to see the great work women are doing in the PASS Community.

Here is a peek at the amazing line up of women coming up this Saturday in Columbus.  

Event Location Date Session Title Organizer 
SQLSat#527Columbus7/16/2016 It's OK to Talk to StrangersCassandra Faris
SQLSat#527 Columbus 7/16/2016 Inside the Black Box - Making Sense of Service BrokerColleen Morrow 
SQLSat#527Columbus7/16/2016Navigating the Options for Data RedundancyWendy Pastrick
SQLSat#527Columbus7/16/2016Improving Your PowerPoint SkillsEvelyn Maxwell
SQLSat#527Columbus 7/16/2016Designing Stored Procedure SolutionsJennifer McCown
SQLSat#527Columbus7/16/2016WIT: Identifying, Understanding, and Combating Gender BiasRie Irish
SQLSat#527Columbus7/16/2016(Way Too Much) Fun with Reporting ServicesStacia Varga

Check out their full schedule here:  SQL Saturday 527 Schedule

Do you think we need Professional Development sessions? What about WIT?

     You'd think by now that a WIT topic or even a Professional Development track would be at least without controversy and at best, expected.  That isn't the case here.  I don't intend to give someone more attention than they deserve, so I'll simply say that a few, isolated individuals think Prof Dev & WIT topics have no place at a technical event.  When they compare my session on Gender Bias to sessions on office lighting or their favorite flavor of Mountain Dew, their comments make me think Women In Technology topics are more needed than ever. I wanted to scream to the Internet what this session means.  This session defines inequality & bias, helps you identify when it's happening, provides context on why it's important to know and gives the attendee positive steps they can take to combat it.  Bias in hiring & promotion means dollars not invested in women in technology. Inequality in the work place is a big reason women are not coming to IT & why they aren't staying.  These things should be obvious, right?  How can you not get it?  Instead of screaming, I opted for a few deep breaths, a few edits and a calm, professional tone. Basically, I decided not to feed the trolls.

The SQL Community seems to think so.

     Then the good guys and ladies arrived. The outspoken, weight-carrying, vocal majority stepped up and defended the need for both WIT & Prof Dev sessions.  They cited reasons these sessions are important, related what you'd learn to common work-day scenarios and drew parallels instead of resorting to emotional, name-calling comments.  To call the outpouring of support "amazing" is an understatement.  It helped me put these negative comments into perspective. The insensitive jerks are the minority in IT.  The vast majority of our colleagues really want to be supportive & help further our push for equality.  And they want us to help them get there.

     As I read the positive comments from Andy Warren [T], Aaron Bertrand [T], Tim Radney[T], Neil Hambly[T], Steve Jones[T], Stephanie Locke [T] and Christine Assaf [T], I was reminded  how much I love and appreciate my SQL Family.  In-person friends & Twitter connections stepped up with their very welcome two cents.  Some people took the author up on his suggestion & emailed the event organizer.  Only instead of asking these sessions be removed from the schedule, they told him how much they loved his line up! They reinforced that Prof Dev & WIT sessions are very important to the SQL Community.

The friends and colleagues that sent me private messages of support or other solutions were appreciated as well. That being said, I've got this.  But stand by, just in case I don't.

Thursday, March 24, 2016

Some Comments on Gender Inequality

If you haven't already seen the PASS Women in Technology March Webinar on Unconscious Bias and Gender Inequality, then you’re really missing out.  You can find it here:  

I hesitate to use phrases like “life changing” but I think that’s what happened.  To say the evidence presented really rocked me back on my heels is an understatement.  It made me sad.  Then it made me mad.  How have we let this happen?  This kind of thing just gets excused & dismissed all the time.  It’s easy to not call it out when you see it because who wants to be labeled as some over-sensitive, angry female?

I've submitted a session to SQL Saturday Atlanta  entitled 
Women in Technology: Identifying, Understanding and Combating Gender Bias. 
Abstract: Gender Bias is something we’re all guilty of. It’s typically unconscious and often stems from long held misperceptions about women and job responsibilities. We’ll learn about the origins of some of these biases and how to identify gender bias when we see it. We’ll discuss some strategies for how both men and women can combat this at work and in our everyday lives. This session is about developing positive solutions to a problem that often goes undiscussed.

Need some examples of what Unconscious Bias looks like?

How about something a bit more overt?

A elementary classroom experiment on Gender Bias...  The first graders started brainstorming a list of words that spontaneously come to mind when they think of “girls” and “boys”. 

Then they temporarily disregarded the lists and asked the students to raise a hand if one of these words applied to them, as we read words from BOTH the girls’ and boys’ lists. Girls comfortably raised their hands for words like “soccer,” “powerful,” “hard challenges,” and “Karate”; and boys raised their hands for words like “feelings,” “ponies,” and “peaceful.” 

Products are marketed to women in the stupidest imaginable way.

As I’m looking through sources for the article, I thought I should share them with you.  This will help you get a more complete picture of the problem.  These sites help identify gender bias for what it is, offer positive solutions & ways to combat it and frankly, educate people on all aspects of the problem.

Friday, March 11, 2016

Celebrating International Women's Day

Earlier this week, the world celebrated International Women's Day. I was dismayed to read a few posts from friends on social media, lamenting "another international day of something made up".  Comments comparing it to National Grilled Cheese Day (which, let's be honest, is AWESOME) to National Yoga Pants Day (which I think probably IS made up).  Let me reassure you all, International Women's Day is a real thing and has been celebrated for over 100 years!!  In 1975, it was first celebrated by the United Nations. In 2011, President Obama helped celebrate the 100th year by declaring March to be Women's History Month.  

What it's about
From the website
International Women's Day (March 8) is a global day celebrating the social, economic, cultural and political achievements of women. The day also marks a call to action for accelerating gender parity.International Women's Day (IWD) has been observed since in the early 1900's - a time of great expansion and turbulence in the industrialized world that saw booming population growth and the rise of radical ideologies. 
International Women's Day is a collective day of global celebration and a call for gender parity. No one government, NGO, charity, corporation, academic institution, women's network or media hub is solely responsible for International Women's Day. Many organizations declare an annual IWD theme that supports their specific agenda or cause, and some of these are adopted more widely with relevance than others.
"The story of women's struggle for equality belongs to no single feminist nor to any one organization but to the collective efforts of all who care about human rights," says world-renowned feminist, journalist and social and political activist Gloria Steinem. International Women's Day is all about celebration, reflection, advocacy, and action - whatever that looks like globally at a local level. But one thing is for sure, International Women's Day has been occurring for over a century - and is growing annually from strength to strength.

Women all over the world facebooked, instagrammed, blogged, snapchatted & tweeted about being a woman, celebrating women and supporting women. Some held rallies & marches. 

Here are some of my favorites.

Blogs & Links

Career Advice You Probably Didn't Get
Amy Poehler: Great People Do Things Before They're Ready
Ted Talks: This isn't her mother's feminism
Feministing.: A List of TED Talks
PASS WIT VC Gender Inequality & Unconscious Bias
Celebrating Women Inventors!


Inspiring Quotes

So how did you celebrate International Women's Day?

Wednesday, February 3, 2016

A Call for Help: Supporting a Young Speaker

I could really use your help showing some support to a new speaker.  There's a young woman presenting her first SQL Saturday session this week.  Evelyn Maxwell, 7th grade daughter to Dave Maxwell is presenting at SQL Saturday Cleveland on Feb 6, 2016.  If you could take a few minutes to send a tweet offering words of encouragement, empowerment & support, I'm sure she'd appreciate it.  Be sure to use the hashtag #WIT4Evelyn.  I'll have Dave show them to her on Friday or Saturday night.  
Check out her session here Evelyn's SQL Saturday Cleveland Session 
Evelyn Maxwell is a 7th grade student at Gahanna Middle School West. She is a frequent attendee of local SQL Saturday's. Since 4th grade, (age 10) Evelyn has been working with presentation software and has given multiple school presentations. She currently has 0 years of IT experience.

Tuesday, February 2, 2016

WIT-Diversity Panel: Parenting Daughters in an IT world & Why Its Important

I recently had the opportunity to facilitate a panel at SQL Saturday #480 in Nashville, TN.  Instead of a traditional Women in Technology panel, this one was a diversity panel discussing a WIT topic.  We assembled a group of SQL professionals, Justin Dearing, Patrick LeBlanc, Arlene Rose and I to discuss raising daughters in a very tech savvy world.  Parenting is hard.  We all know that.  Parenting girls is really hard.  Adding to this already complicated job, is our technology based way of thinking & problem solving.  It's probably not a great idea to create a project road map for your children. The IT field isn't very diverse, but we have the opportunity to change that in a generation: encouraging young females, calling out other biases in the field and coming up with positive solutions.  Are we raising tech savvy daughters? Should we be? 
We asked each panelist to talk about themselves, their family & how they approach parenting in general.  Two men, two women.  Married, divorced. One girl, two girls, a boy & girl. Teenagers, toddlers.  Varied backgrounds but similar answers to the questions presented.  Would you encourage their daughter to enter the tech industry? Why or why not? What tech opportunities do you provide? What do you do to encourage a positive attitude toward tech?
Both Arlene & Patrick don't have to push their daughters into tech at all.  The girls gravitate toward it. So these parents only have to fuel a fire that's already there. When presented with the chance, the girls have opted to find IT solutions to problems, even if that problem is just boredom.  My daughter is aware of technology, uses it to her advantage, games for hours but has no interest in the creating... only the creation.  Justin, the father of one 2 year old girl with another on the way, is only beginning to identify how he wants to approach technology.  He jokes that as a programmer, he wishes he could automate parenting.  I have friends who would love to write a PowerShell script to handle the job. I think that was something a lot of us can relate to.  He made a great point though, parenting is a little more free form but there is no restore from backup. 
We went through a few different topics.  I'd like to hear your thoughts below.
  • How does being in IT affect or change the way you parent? Does it affect the way you parent a daughter vs a son? Should it?
  • Has parenting a daughter affected the way your recognize/define diversity?
  • Would you encourage your daughter to enter the tech industry? Why or why not?
  • What are your expectations for your daughter in everyday life? How do those apply to your expectations around technology?
  • What tech opportunities do you provide?
  • What do you do to encourage a positive attitude toward science & tech?
I often tell my daughter this. I don't care who you love; I care that you love. I don't care what you do; I care that you do.
Ultimately we all agreed, technology field or not, we'd encourage our daughters to just to be happy.