Synapse Workspace: The Dreaded 403 error

This error has become the bane of my existence – with multiple configuration setups. Basically, anytime I dared to change the Synapse workspace to not allow all access in the Network settings, I was bound to run into it. Today’s tidbit only addresses ONE way that might solve this error, but it is so maddingly simple that I decided to throw it up on my blog. I’ll save the rant of all the different rabbit holes I’ve been down in the last month for the “BEST PRACTICE SAYS YOU HAVE TO DO THIS <oh except it’s not allowed in these cases and I’m going to bury that information on some small page.>” Hopefully I’ll post all the different ways to address this problem at some point.

First let’s look at the error message that you see when you open up your Synapse workspace. “Failed to load. Failed to load one or more resources due to forbidden issue, error code 403.”

Failed to load 403 error.

Hmmmmm, what is this “View details” you speak of?

Failed to load 403 error - more details.

Oh, ok. It’s just really telling me all the things that aren’t working. Awesome. And don’t let that “download diagnostics” button fool you. It’s not going to tell you anything helpful. (I know, shocking.)

So what’s the 2 second fix you can check before getting lost down your own rabbit hole? A little thing in the Azure portal, under your Synapse workspace in the Network settings. Drum role……..make sure you have your own IP address (ahem, “Client IP address”) added as a rule with whatever other network rules you’ve got going on. ARE YOU FREAKING KIDDING ME?

Synapse Netowrking firewall rules image with highlighted areas showing to add your IP address.

If you are thinking “yea, duh, there is a little button that says ‘Add client IP'” then ShutIT. They put that image slam in the middle of one of the Microsoft Learn pages without context in the middle of something else completely, so by the time you (ok me) finish the other thing that the article was about, I’ve completely forgotten about this rando item. And apparently I’m not the only one because I’ve screen shared with a ton of super smart people (including MS peeps) and no one even noticed my IP wasn’t added.

For the record, my new mantra is “they created Fabric because they realized they had to simplify Synapse configurations. Microsoft realized too many people were getting pissed.”

UPDATE: If using PBI as a developer using desktop, you may have to add that person’s IP address to the firewall rules as well. Otherwise they may have issues refreshing tables.

Back to being a Community Organizer: The (Virtual) Kansas City SQL Server User Group

Earlier this year, meetup sent their obligatory email about a group I was in needing a new organizer. Like most people during COVID, I joined a lot of online meetup groups after most groups moved their sessions online. The Kansas City SQL Server User Group (#KCSSUG) was no different and fast forward to 2023, one-by-one user groups were going back to in-person events.

Look, I get it. Lots of folks wanted to go back to the physical meetings to have that in-person interaction. But that option is not always available to people, and in particular, it often isn’t available to under represented groups for a myriad of reasons. I will let you do your own homework on why that is, but I can briefly speak to my experiences as a WIT. (Hmmmm, maybe that entire subject matter would make a good blog post all on it’s own.) I won’t even address it from a neurodiverse perspective.

A WIT Perspective

Here is a quick summary of my experience with it as a WIT: 25+ years ago, as a single mom, traveling to events wasn’t even an option. I was a young mother and my parents still were in the workforce and unable to take time off to babysit for me to go to a conference (though weekends were ok). Never mind school schedules. And even though I was in IT, money was pretty tight – so traveling costs were pretty prohibitive for me. (I once had to borrow money to buy basic groceries for a week.) None of my companies ever even considered paying for me to travel to a conference (or even attend a local conference), and I would have had to use PTO (personal time off – aka: sick /vacation time) to attend. If you are a parent, you know that PTO can often be eaten up by young children for NON vacation reasons and there simply was no room for me to chance it. Otherwise I might get docked pay and my review may come back that I had too many absences. Yes, folks, that’s how it is sometimes.

Think I’m exaggerating? Consider this: even though I was an organizer for SQL Saturday in Atlanta for 8 years, and I’ve been in the industry for over 25 years, last year was the first year I have ever traveled to a conference outside my local area that wasn’t on a weekend or that a vacation wasn’t planned around (PASS Data Community Summit 2022 in case you were wondering).* Even as an organizer, I used PTO to volunteer for our Atlanta Friday pre-con sessions. And I’m a seasoned IT Professional.

AI generated renaissance image of a seasoned female IT worker.
Random AI generated image of a seasoned female IT worker because I was curious after I typed that phrase.

*(All thanks to the wonderful company I currently work for: Kent Corporation. I finally work for a company that understands the importance of conferences and upskilling employees. There’s a reason they’ve won a ton of employee satisfaction awards. )

Online Options

All of this to build up to why I decided to step up as the organizer of the Kansas City SQL Server User Group: to continue to have online options for those that may need it. Be it speakers, or members, or anyone that wants to catch it on our YouTube channel. Not all of our sessions are recorded, for various reasons (including my first event where something messed up with the recording), but the majority are.

Our group isn’t the only group doing this, so I’m not doing anything ground breaking here: there are still plenty of great user groups and conferences that either have real-time online options or recorded ones – which is AWESOME. Last year SQLBits was in Wales and I was a online speaker for that conference. I wouldn’t have been able to speak at that one if they didn’t have the hybrid option and I’m forever grateful. (Side note: not only did I have many people join live online, but Andy Yun of #SQLFamily took pics for me of the in-person view. SQLBits even posted the videos a few months later; here’s mine: Migrating data solutions to the cloud – a checklist.) That said, as I was looking through my emails at the beginning of the summer, I saw the number of online options getting smaller and smaller.

Thinking of that, I decided to take action and become the organizer for the KCSSUG, and keep it virtual. I’m a strong believer that virtual options help play a role in DEI, and instead of complaining about the diminishing options, I could at least help in that area. All of this to say: now I’m officially the organizer for the (Virtual) Kansas City SQL Server Group.

Info About Our Group

Interested in seeing some of our sessions? We loosely follow a 2x a month schedule:

  • 1st Tuesday of the Month in the early evening (5:45 PM CDT).
  • 2nd Thursday of the Month as a Lunch and Learn (12 PM CDT).

The 2 different times allow us to cover people that can join in the evening and people that can do lunch and learns. It also allows us to include people in some additional time zones outside the US. Plus, it helps me not take up additional family time. As mentioned, we also have a YouTube channel that we post most of our events to afterwards. (Some quicker than others because – yea – my ADHD).

We occasionally have an additional session for guest spots with both regular speakers as well as speakers from Ben Weissman and Willaim Durkin‘s New Stars of Data. I’m particularly excited about giving new speakers an additional platform to gain experience and not just because #NSoD is where I got my start. Ok maybe I’m a little partial to them because I know all they do to help new speakers perform their best with their resources, mentors, and various volunteers that do all their magic.

Who are the amazing speakers we’ve hosted in the last 5 months?

And we have many more in the works for 2024 as well as new things coming down the line! Around February, we will have a new call for speakers to fill our remaining spots, so stay tuned (and submit!) If you’d like to volunteer to help host or join our team – feel free to reach out to me on linkedin or twitter.

Ok, so that’s it. Even I think this falls in the category TLDR, but I’ve haven’t written in awhile (at least not completed one, technically I’ve written a ton), so you get this big gush in one go. If you’ve made it this far – hope to see you soon (in-person AND online)!

An Important Post About Women Speakers

As I try and balance speaking, taking over a user group this last summer (more on that later), and life in general – I’m reminded of this important post by Deborah Melkin a wonderful speaker, community advocate, and all around great human being. Please take the time to read.

Migrating data solutions to the cloud: a checklist. Part 2: Discovery

This post is a continuation from Part 1: Preplanning and Evaluation in a 9 part series. If you want to download the full checklist or slides without all the wordy-word stuff: you can find it in this Github repository. (The checklist has wordy-word stuff. No getting around that.)

Topics covered today:

  • Digital Estate
  • Data Management
  • Data Lineage
  • Pilot Project

Digital Estate

Understanding your digital estate at the beginning of your project will help you determine what to assess and migrate down the road. Even if you already think you know all the things you need to migrate, it’s helpful to check how all of the things may be connected. You need to identify your infrastructure, applications, and all the dependencies. You don’t want any surprises! Don’t just rely on old documentation.

Azure Migrate has a Discovery and Assessment tool that can assist in this task, but there are certainly many other ways to acquire this information. You may have other 3rd party tools or internal processes that already gather this information for you. Just make sure that it is UTD. Personally, I really like the free pre-Azure Migrate solution: Microsoft Assessment and Planning Toolkit as it dumps everything in excel sheets that Admins and Management tend to like to see. But the visual display of Migrate (and ALL the additional tools) is pretty fantastic.

Screenshot of MAP toolkit database scenarios.
Some options available in the MAP Toolkit

Whatever tool you use, from a database perspective, you want to know things like what database systems are in your environment, what version and edition they are on, how many databases may be on an instance, what are the database names, file sizes, statuses, users, configurations, and other various database metadata. You are going to want to know some performance metric results and additional server details. You are going to want to know the various components that are installed on your servers, details about those components, and how they are used. Are you REALLY using those SSRS and SSAS components and if so, how?

Lastly, you want to make sure you know all of your relationships between applications, instances, database objects, and processes. It’s no fun to find out later that you had a database with hard-coded servers in some stored procedures or unknown linked server requirements. Or a SQL job that PBI Report Server created for each data refresh.

The Key Take-Aways here:

1.) Identify the infrastructure : things like servers

2.) Identify what apps do they use – this includes all your SQL server apps!

3.) And identify dependencies they may have: Internally and across servers. Don’t forget to include things like ports/networking

Data Management

Now is the time to find out what documentation you have about your data (and what you need to get). Having this information is essential if you determine you need to move things in parts or if you have overlap in data that might be potentially consolidated. This will help you down the road when we get into some architecture designs with the 5 Rs of rationalization. Our focus here is on having a data dictionary, a business glossary, a data catalog, and classifying your data.

A quick summary of these terms: a data dictionary helps you to understand and trust data in databases better, a business glossary provides a common language for the organization when it comes to business concepts and metrics,  a data catalog helps you to find, understand, trust and collaborate on data, and data classification groups your data elements to make it easier to sort, retrieve, and store.

Why are these things important for migration? First off, they are important just from a data governance standpoint. But more than that, knowing this information up front can save you a lot of headaches down the road. You may have business requirements for some of your data to be labeled in a security context. Maybe you are dealing with highly classified government data, health care data, or HR data. Or you may find you have data type mismatches? And data catalogs often review hidden dependencies that you may not have otherwise known.

All is not lost if you don’t have all of this. Azure has some internal tools like Purview to assist with this, and there are plenty of 3rd party tools. If you are like me, you already carry a script toolbox from the lifetime of your career (some of those scripts from 20 years ago still work!) that you can easily use. Apart from the Business Glossary, there are so many free options and scripts out there that this should not be a showstopper for you. For the Business Glossary – you are going to have to go to the source – your subject matter experts (SMEs).

Data Lineage

In addition to the previous items we mentioned for data management, I want to call out data lineage specifically.

Data lineage gives you insight into how your data flows. It helps  you understand how your data is connected and the impact of how changes to your data, processes, and structure, affects the flow and quality of your data. KNOW YOUR DATA FLOW. Find out where your data comes from, how it travels, the place(s) it lands, and ultimately, where it else it goes.

There are a lot of tools that will help you with data lineage; with various levels of sophistication. Long gone are the days where you must shift through excel sheets to figure it all out. That’s why graphical tools like Purview are really exciting for me. [Note: from initial insights into Purview costs once it’s past the preview stage – it gets pretty pricey, fast.] This is an image of Azure Purview and I wanted to show how granular it can get at the column level and how it travels through various processes and databases.

The column level feature is really really nice. It’s not necessary at this stage, but it certainly is helpful to you at the testing and troubleshooting phases. What you really need with your data lineage at this stage – and you can still see it in this graph – is how your dataflows between resources. Because this is a great way to discover things you may not be aware of in your data flow process that you need to pull into your migration plan.

What also can data lineage help with? Reporting considerations. Knowing what can break in a report, if you change at at the source is invaluable. While getting a big picture of what reports, models, applications may be impacted after a migration help circumvent some nasty surprises.

Pilot Project

If you haven’t moved anything to the cloud previously that is related to your infrastructure, then consider having a much smaller pilot project. One that will get you a feel for all of these steps but has a lower risk than your overall project.

What items do you look for in a pilot project?

Maybe you have a database that is only used for a small app that is low risk if the migration doesn’t go as expected. Try to keep your pilot project to applications with just a few dependencies. The goal of this is to a.) help you understand the process and b.) get you a quick win that you can show to stakeholders.

You want one that is low-risk, that is small enough to manage easily, but still large enough with a long enough duration to give you a good understanding of the processes involved. Besides size and duration, the criticality of your project is important. You want to incorporate a visible win that is important to your company that supports making bigger moves.

Finally, ff you’ve already done this previously, then this is when you review what you’ve learned from your previous pilot project. What were gotchas? What went really well? What is easily repeatable and what do you need to get down on paper?

Welp, we’ve come to the end of part 2. Feel free to hit me up with items you think I’ve missed or you want more clarification on. Next week is a much needed break for me, so [probably] no updates from me. Hope everyone has a wonderful Mother’s Day!

From,

DataWorkMom

New Stars Of Data #5 – March 12th!

In case you forgotten, New Stars of Data is back! Bounce bounce bounce.

Super excited as this is the program that helped get me started with my speaking (along with nudges from several #sqlfamily in the community). The event is the 5th in the series and is tomorrow (May, 12, 2023). The event is free, but make sure to register here: https://www.meetup.com/datagrillen/events/291222930/.

In case you are unfamiliar with New Stars of Data, let me give you the quick summary: Ben Weissman and William Durkin from DataGrillen saw a huge gap in the community for getting new MS Data platform speakers up and running and helping to ensure the person’s success. (Ok, that’s actually an assumption on my part, but that’s my take on it.) Rather than just offer speakers a space to get noticed, they designed a program that partners the speaker with a mentor to help with every step of the way. Sometimes multiple people (both Ben and Gabi Münster helped me with mine). They help with topic selection, abstract, presentation development, and even practice run-throughs. There is also a free library for anyone to use to help improve your speaking skills. They remove the barrier of “I know this subject really well, but I don’t want to suck in a public forum”. Afterwards, the videos are available on YouTube (after the volunteers do all their wizardry to get it uploaded). So really what you end up with is a free event on current topics with great speakers.

I’ve mentioned this before, but I will also mention it continuously, attending these events (and/or watching the videos on YouTube) helps diversity in out community. By default, underrepresented people have a harder time finding mentors for stuff like this, which makes these programs super important. If that’s a topic that interests you – than make sure you support events like these.

While I’ve been in the sql community for many many years, I have to admit it was super exciting to meet a lot of the people for the first time last year at PASS DCS who directly and indirectly helped me during my New Stars of Data Event. As well as the many friendships that have developed since. It’s not always possible to meet those that have made such an impact in your life, but if you get the chance, it’s pretty awesome.

Picture of Kristina Mishra (me), Ben Weissman, and Johan Ludvig Brattås at PASS DCS 2022
Me, Ben, and Johan at Karaoke night.

The event is tomorrow and it is on CET time (or maybe it’s GMT, I forget), but don’t let that stop you if you are in a different time zone! I plan to catch a few sessions as I am getting ready in the morning and during the remainder of the event. I’ll circle back around and catch the ones that are too early for me on YouTube. The session lineup looks really great, and I’m chuffed to see all the new and upcoming people. Really relevant topics on things like Power BI, Azure, Machine Learning, and other SQL/Data topics. Get your TRAIN on and join us if you can!!!!

Weekly Wrap Up – April 28, 2023

As usual, it’s been a busy few week at my job and in my personal life, so I’ll try and make this short an sweet.

Weekly Wrap up (technically from the last 2 weeks):

  • Certification update
  • WITspiration
  • Women don’t owe you an explanation <rant>
  • DPWIT-DEI Mental Health and Wellness Day
  • Part 1 of blog series: Migrating data solutions to the cloud – a checklist
  • Favorite Items of the Week in the Wild

Certification Update

Back at the end of January I did a Microsoft Virtual Training Day for Azure Fundamentals because I remembered that if you did the Virtual Training Day, that some of the VTD sessions offer a free certification test if you take it in under 90 days. So I signed up thinking it would force myself to get it done and have a clock ticking. There was no reason for me not to take the test at that point: Class is free, test is free, can take both the class and test during work and online (a big deal because my kids could interrupt during the test otherwise, which is not allowed). I even told myself “I’ll put it just under 90 days out so I have chance to study”. (HAHAAHHA The lies we tell ourselves.)

The test is pretty broad and there are a few sections that I didn’t have experience in. Truth be told, I was at work so I frequently got interrupted during the VTD, but still got a lot of information from it. Even for the things I knew, but don’t necessarily use in my area, it was good reinforcement. I highly recommend using VTDs and other free resources such as Microsoft Learn, as part of your cert training strategy.

Long story short, I took the VTD, forgot about it, and then realized test day was upon me. Freaked out, studied additionally for a few days, and lo-and-behold passed. Yes there were a few questions that had stuff that was new to me, but it was a lot easier than I had put in my mind.

Long story short – sometimes it’s a good idea to take the plunge. Even if you don’t think you are ready. (That’s kinda my thing). I had a bunch of things going on that day that blew up on me, so I really didn’t mention it at all publicly. I’m trying to get better at announcing my accomplishments – so there you go.

WITspiration

Meanwhile we’ve begun our work with WITspiration! I met with all the members awhile back and today I had my first meeting with my Circle. SUPER excited to be in a circle with such amazing women! I forgot to ask permission if I can post their names, so will wait until I get thumbs up for that. But I think we are going to create amazing things while having a sound board for each other for all things. Stay tuned for more information and I will try and remember to tag it for easy filtering.

Women don’t owe you an explanation

<begin rant>

We interrupt this regular broadcasting to explain YET AGAIN that women don’t owe you an explanation. Recently a male reached out to me with a sentence that started along the lines of “EXPLAIN YOURSELF” in a DM. It was not about anything technical and quite frankly a little bit of common sense or googling and the person could have figured it out. It was not someone I know, but it was someone many in our #SQL community know. I’m not going to call the person out, but if you are reading this: YOU HAVE NO RIGHT TO ASK ME THAT AND/OR DEMAND I TELL YOU ANYTHING PERSONAL ABOUT MYSELF.

Matrix: Check yourself before you wreck yourself meme.

I didn’t reply because quite frankly I was in shock, than I checked with a few friends to verify that it was way out of line (it was, of course), and then I had other bombs drop on me that day that made the situation pale in comparison. Now in hindsight I wanted to make sure to call it out here because whether you are THAT guy or just a GUY LIKE THAT – I want you to know never, never ever, never ever ever, reach out to some woman you don’t know asking her to explain anything that is none of your damn business. And if you are starting a sentence off with “EXPLAIN” and it has nothing to do with a technical thing – I can assure you – it’s none of your damn business.

<end rant>

DPWIT-DEI Mental Health and Wellness Day

If I haven’t mentioned it, and I don’t think I have, I’m presenting the session How to NOT DO all the Things – My challenges with Neurodiversity at Data Platform WIT-DEI Mental Health and Wellness Day – May 5th, 2023.

Honored to be speaking again for the Data Platform Women In Technology group and even more honored when I look at the great speakers lined up. Normally I don’t speak on non-technical things too often and this is my first session ever talking about Neurodiversity, so it will probably be way different than other sessions you have seen me speak on. If you are used to operating with 1000x things at a time – block off 11:30 AM CDT on your calendar and check it out (or many of the other GREAT sessions). Sign up here.

Part 1 of blog series: Migrating data solutions to the cloud – a checklist

Last, but not least, – Part 1 of 9 (yes 9) is out in case you missed it. This is the none technical, but very necessary items you need to make sure you do when planning a migration. It reviews key items you need to do for Pre-Planning and Evaluation. Next week I will push out Part 2: Discovery.

Favorite Items of the Week in the Wild

None.

Well, it’s not that there aren’t any, I just need to get this post out. I know, I know, I told you I would add it with each wrap-up, but I’m not this week and we are all going to just have to deal with it.

How bout this: I turned 51 on Wednesday, and as I’ve posted elsewhere: Being the same age as old people is weird, but I’m hanging in there.

Happy 51 to me!

Picture of me!

Migrating data solutions to the cloud: a checklist Part 1 of 9

If you are a follower of me in the various places or a reader of this blog, you know that recently I presented the session Migrating data solutions to the cloud: a checklist at SQLBits 2023. As promised in the weekly wrap-up from April 7th, here is the first installment of a more in depth dive to that session. The session had 9 parts to it and so I thought that would make for nice chunks to consume in blog posts. I’ll add links to each one so it will be easy to navigate once all of the posts are up.

The Parts are broken down as follows:

  1. Pre-Planning and Evaluation
  2. Discovery
  3. Assess
  4. Architecture
  5. Costs
  6. Migrate
  7. Testing
  8. Post – Migration
  9. Resources and Closing

This post will focus on the first item in the list Pre-Planning and Evaluation.

Let’s get right to it! Ok ok. I know you are probably chomping at the bit wanting to immediately get into the technical parts – I know how it goes – but that is not where you start.


King from Alice;s Adventures in Wonderland

“Begin at the beginning,” the King said, very gravely, “and go on till you come to the end: then stop.”

― Lewis Carroll, Alice’s Adventures in Wonderland


Goals

What is your company’s goal of moving to the cloud?  Some examples are:

  •   Reduction in CapEx (capital expenditures)  
  • Lower reliance of complex and/or end-of-support technologies
  • Optimization of internal operations
  • Reduction in vendor or technical complexity
  • Preparation for new technical capabilities

Modernization? Cost-savings? Multiple things? Maybe your current infrastructure is at end-of-life, and it just really makes sense to modernize it and move it over to the cloud before you are dead in the water. Or maybe your goal is to reduce downtime for managing infrastructure and upgrades .

What is the problem you are trying to solve? Is there a business requirement driving this or maybe something else? Make sure you understand what the problems are you are trying to solve and if your goals actually address those problems. That is a business decision that has to be determined WITH your technical team and not necessarily BY your technical team. I’m a technical person, and I’m going to be the first person drawn by the shiny new object – which often is not the best thing for the company strategy.

Image matching goals to problems trying to solve.

Ultimately your problems can drive a portion of your goals, but you may have additional objectives. These items need to be determined upfront so the choices you make during the process align. They create value streams for your organization. Higher ups love to hear about value streams!

Once you have your objectives – you can create a plan and KPIs towards those objectives and then show how you met those at the end. This is our objective, this is the state at the beginning, this is the state at the end. Look how far we’ve come!!!

It’s hard to have project success if you don’t define what your objectives are. This is a project, and if you’ve been working on projects for a while, you know how easy it is to go sideways and lose sight of your goals. Sometimes those goals change a bit, and that’s ok, but ultimately your success will be measured by if you achieve clearly defined goals that you can apply metrics towards.

Support

Blocks that contain the text "Executive Support" and "Stakeholder buy-in".

Executive Support

Many times, you will go into a migration project that is being driven by the top level. Maybe your CEO went to a conference or read some important articles – and if so, you are ahead of the game (well, until you have to set expectations properly). But if you don’t already have executive support, then you need to identify an executive sponsor. Someone who is high up and can lead a cultural shift within your organization. A Champion. <insert bugle sounds here>

Stakeholder Buy In.

You need to Identify and involve key stakeholders early in the process. On both the business and IT side. Involvement and communication is key.

People don’t like change. Try telling a bunch of financial analysts that have been doing their job for over 20 years and have lived through multiple technology shifts – try telling them they won’t have Excel anymore. I promise you; it won’t be pretty. Rather than focus on what you are taking away – focus on why the change is needed, and what it gives them. How can you get their buy-in for your project, while still being honest.

If you don’t have that executive support or stakeholder support, then you may need to a little digging. What are your company’s core values? What is the 5- and 10-year plan for business initiatives? How does moving to the cloud address these?  At the department level – what are primary goals and concerns from a technical perspective. How can moving to the cloud help this? Everyone’s answer will not be the same but look at how you can align key stakeholder needs with the goals of the C-Suite. Building a business case that addresses top concerns and how the cloud will help – is ideal for this situation.

Teams

The next thing we need to consider is what we will do in-house versus what we may pull in a partner for.

Internal Team:
-Determine SME Req
-Identify key members
-Assign roles
-Assess skills
-Train

For your internal team – first determine the different areas you will need a SME (subject matter expert) for, and a good idea of what they need to know. Second, identify potential key people you may have in-house to fulfill these roles. Ideally you will have people in your organization from across many teams  that you can assign to roles. Once you have assigned roles to people, you need to assess their skills. This will allow you to see what gaps you need to fill and then plan for how your org will both fill and monitor those domain gaps?

When possible, identify potential team members that either have the skills or can upskill. Build a skills readiness plan. Investing in your people is far cheaper than hiring outside help. Consultants are great – I know, I’ve been one, but there is no replacement for having in-house knowledge, particularly once those consultants have finished and walked out the door – potentially without much knowledge transfer. The people that will be maintaining and growing your systems need to have the skills.

That said, in some cases, you may want to hire outside help. Maybe many of your team members are really spread thin, or the upskill process doesn’t match the timeline – then definitely bring in consultants.

Common things for partners to be involved in:

  • Strategy: Help with defining all things such as business strategy, business cases, and technology strategies
  • Plan: Help with discovery tasks, such as assessment of the digital estate and development of a cloud adoption plan.
  • Ready: Support with landing zone tasks.
  • Migrate: Support or execute all direct migration tasks
  • Innovate: Support changes in architecture
  • Govern: Assist with tasks related to governance
  • Manage: Help with ongoing management of post-migration tasks

Along the lines of consultants – help them help you. Does your company have standards or best practices that are specific to your industry or workflow? Share that with them. Share any and all documentation that is relevant to your migration and environment.

If your company is able – consider Creating a board for key team members to interact and meet regularly: like a Cloud Center of Excellence (CCoE). Key members are chosen from each  IT areas to meet at a specified cadence to discuss all things Azure including identifying domain gaps. Those key members not only gain knowledge about technical aspects, but also get insight into projects that are going on through the different areas of the company. And they can take back that information to their team with a level of consistency. Which is super important when you are wanting establish best practices and standardize policies across teams.

Documentation

Now we need to find out what we have regarding documentation.

From the technical side you need to assess at what your current infrastructure looks like. What type of documentation do you have for your data estate and infrastructure?? Where is your data? What does your data require for things like storage and memory? What are all the components that connect to what you want to move? If you don’t know what your current infrastructure looks like, you need to determine how and who will document that for you.

On the business side: What are business requirements for your systems?  Do you have regulatory requirements? SLAs mandating certain uptimes? What about other Business requirement docs for security, compliance, backup, Recovery Point Objectives (RPO) and Recovery Time Objectives (RTO)?

And finally – have you previously tried to do a cloud migration? What documentation is left over from that? Is it current? What were some of the successes and some of the failures? Any lessons learned?

You don’t have to know everything at this point, but you do need to find out what you have and what you don’t have. And if we are perfectly honest – what may be out-of-date. This is where you need an Enterprise Architect and some in-depth meetings with the different departments. Communication is key to getting the documentation and finding what you have, what you don’t have, and what you may need down the line.

Welp, that concludes Part 1: Pre-Planning and Evaluation. What would you add to this list? Have I missed any additional parts that you’d like to see in the over all series? I love to get feedback to consider so feel free to reach out.

Stay tunned for Part 2: Discovery.

Weekly Wrap Up – April 7, 23

Weekly Wrap Up:
New Stars Of Data shoutout
SQLBits 2023 Reflections
Planned upcoming content and activities
Favorite Items of the Week in the Wild

Bit behind on the blog, but I’ve made a couple of tiny improvements recently. My initial idea with the blog was “just get it up as quickly as possible” with little regards to formatting and functionality (beside just reading a post). If I’m honest, these are the things that have slowed me down in prior attempts to get content out there: gold plating. Now that it’s been up for awhile, I did some quick edits on the back end so you can at least jump to specific categories, tags, or do an easy follow. It’s still bare-bones, but right now getting more content out is my goal for the spring.

Weekly Wrap Up:
New Stars Of Data shoutout
SQLBits 2023 Reflections
Planned upcoming content and activities
Favorite Items of the Week in the Wild

New Stars of Data shoutout

This is super long overdue, but my ADHD makes me procrastinate often and things fall by the wayside. Not a great excuse, but I’ll own it.

First off, if you don’t know about New Stars of Data (run by Ben Weissman and William Durkin) and you love learning all things data virtually – then please take a gander. New Stars of Data is a fantastic program to get new speakers a chance to get out there. Speakers get one on one mentoring every step of the way and the program helps new speakers deliver great content and get them on the road to speaking. How do I know? That’s where I started! (So yes I have a lot of love and bias towards the program).

The next event is May 12, 2023 and I’m really excited about the line-up. Please consider joining the event not only to get great content, but to support and encourage new speakers. If you are unable to attend the event (or a particular session), then NSOD posts the videos later to the DataGrillin youtube page. Plus – if you are really serious about wanting to get more women into speaking – this is a part of it. After I spoke at NSOD, several user groups reached out to me to keep the ball rolling. All which resulted in my next topic: SQLBits 2023.

SQLBits 2023 Reflections

Confession time: when I submitted to SQLBits last year, I didn’t really expect my session be accepted. I had started a new job Dec 2021 after a long hiatus and I stopped speaking so I could focus on getting where I wanted to be for my new company. Seeing the call for speakers for SQLBits, I promised myself I’d at least submit and choose a topic that I thought would also be great for my company. Not knowing if I’d be able to travel, I submitted to do a virtual session, which I knew there were limited spots available

And then it was accepted.

Cat GIF putting paw to mouth

Here is where I will give a tiny bit of advise: As soon as you are accepted – start working on your presentation. You have no idea what will come down the pipeline to derail you. Everything that could throw my schedule out the window – did. You have been warned: what you do with that knowledge is up to you.

Now a few weeks after the event, I can comfortably say it was incredible. Not just as a speaker – (WHICH WAS AMAZING), but also as an attendee. Even as a virtual speaker/attendee. While I did miss the interaction and fun at the actual location – the level of detail that was provided every step of the way was beyond my expectations. I still felt a part of the event (and yes even dressed up for my session!).

Kristy dressed up as Elf with little friend on shoulder

I can not express how much I appreciate the opportunity not only to speak at such a great event, but to do so virtually. As a woman in tech with children – traveling has been a great barrier for me and is a large part of what prevented me from speaking in earlier years. So thank you Organizers of SQLBits for allowing this option – I know it comes at great cost and work for organizers and volunteers. By having this option, it helps me represent women in the community and still be a part of something really special. The experience was one I will never forget, and while traveling overseas to present was never on my list prior – it is a new goal for me for future years.

Planned Upcoming Content and Activities

While I’m high off of speaking (and getting good reviews!) from SQL Bits, I’ve gone ahead and submitted sessions for a few other events and I’m considering another large one. That one is in person, so I’m still waffling a bit on it. More about that in a future post. Hopefully you’ll see lots more of me speaking this year. My main issue (besides traveling) is that I have so many ideas and I always want to do THE NEXT THING, so I haven’t really refined the art of reusing a session. And for me, creating new content is a really laborious process. Hopefully as I do it more, I’ll figure out how to get better at that.

That said, my slides for SQLBits session “Migrating data solutions to the cloud – a checklist” should be available soon through the SQLBits website. (The holdup is me.) An interesting thing I learned when creating my session was I had way too much content. Probably about 4 hours worth. And I had to go back and chop a lot out. So my goal over the next few months is to transfer that chopping into a series of blog posts. If you made the session – first-off THANK YOU – and secondly, the blog posts will be a more in depth coverage of each section I went over. Expect a lot more technical aspects in certain sections.

Finally, I’ve got 2 new other initiatives I’m working on that are specific to women in tech. They are both in the beginning phase so I can’t go into details on one of them, but the other one is Tracy Boggiano and Deborah Melkin‘s women’s mentoring program: Witspiration! For all the ups and downs of being a woman in tech, I have to say that it has made such an incredible difference in my life and I want to share that with others. From a kid that had so much going against her, being a woman in tech has given me opportunities that I would have never have had otherwise. Expect to hear more of about that in the future.

Favorite Items of the Week in the Wild

Yesterday I was thinking about this as a routine feature on this blog that includes both fun things and technical stuff, but for this week it’s only going to include 2 items – FUN STUFF. Mostly because I just started saving things late yesterday and also because I’ve far surpassed the time block I gave myself for today’s post.

With that I give you:
1.) Ian Coldwater‘s adventures into Kubernetes erotica by ChatGPT. If you don’t already follow Ian, you should. They are full of all kinds of awesomeness.
2.) Generative AI by Auralnauts : Your favorite 90’s song “Ice Ice Baby”, performed by the cast of Matrix. And Wilford Brimley for some reason.

Have a great weekend!

#TidBitTrenches: SSMS Errors on Load

New install of SQL Server 2019 produced an interesting error upon opening SSMS.

Ran into an interesting issue today. Upon opening a new install of SQL Server 2019, I received the below error:

SSMS Error message. Text of error message below image.

The Microsoft.SqIServer.Management.ThreatDetection.ThreatDetectionPackage,
Microsoft. SqIServer.Management.ThreatDetection,
Version=16.0.0.0, Culture= neutral,
PublicKeyToken=89845dcd8080cc91’ package did not load correctly.
The problem may have been caused by a configuration change or by the installation of another extension. You can get more information by examining the file C:\Users\<username>\AppData\Roaming\Microsoft\AppEnv\1 5.0\ActivityLog.xml‘.
Restarting Visual Studio could help resolve this issue. Continue to show this error message?

UGH. Not helpful. I do what any reasonable IT person does – I google the error. Not super helpful either. I look back at the error message. Wait a minute. That version number looks odd. Since this is a new box, I look at what has been installed.

Installed apps image highlighting 2 versions of SSMS

2 versions of SSMS? That in itself is not normally an issue, but it was the Preview version that gave me pause. Went to the authoritative voice – Microsoft – and said:

SSMS 19.0.1 is the latest general availability (GA) version. If you have a preview version of SSMS 19 installed, you should uninstall it before installing SSMS 19.0.1.

Ok. Fine. I’ll follow the rules. This once. I uninstalled both versions and then installed the most current version.

Gene Wilder gif from Young Frankenstein with text: "Its Alive" From https://media.tenor.com/SuADVxKkQ-AAAAAC/frankenstein-its-alive.gif

And just like that, I was back in business. Not even a reboot needed.

SSMS window without errors this time.

#TidbitTrenches: Production fixes

Why you shouldn’t rush to a fix in production.

Recently we ran into an issue with one of our Production SQL Server boxes. We knew the fix: we’d have to upgrade to SQL Server Enterprise. And quick. My server guy asked me if he needed to block out time THAT DAY so we could get things rolling. It’s a reasonable question, he needs to make time in his schedule to do such tasks. I said no.

WHAT? WHY? Because years of experience (and impulsivity) have taught me you first stop and think.

Some examples of things that I had to think about in this situation:

  • Did I want to upgrade our version along with our edition? (Yes, yes, I did)
  • If yes, what version – the latest? (Probably not)
  • Do I want a new server or is this an in-place upgrade? (New Server)
  • What else does could this affect? (Lots)

Tons of other things to think about, but since this is post is supposed to be a tidbit, we will stop there. Here’s the thing – we could have affected a lot.

Let’s address each of these examples to give us an idea of what can go wrong. First off, our current SQL Server version is in extended support and we are missing out on features I want to implement. These features match with our company’s goals over the next few years, and our next big lift should be more Azure focused than SQL Server version focused. That means I don’t want to install another version 1 year from now. I’m a busy gal and 1 year goes by quickly!

Does that mean I want the latest version? More bang for the buck – right? Brent Ozar’s post Which Version of SQL Server Should You Use? gave me pause. And when I thought about it more, I realized we may have compatibility issues with other apps that interact with our databases on that server. (BTW: checked with one of the vendors and they confirmed they’ve done ZERO testing on the latest SQL Server version and do not know any current clients that are using it.) So I needed to really weigh benefits versus risk on what version we should go to.

What about in-place upgrades? While I’ve done more in-place upgrades than I care to count, occasionally they can cause unexpected issues; I didn’t want to add more variables when I was already tackling an issue fix. Full stop.

And finally – what else could this affect? This is such a fundamentally important question that really I could have just had that as a singular bullet point. How does your data flow? Are apps that are part of the data flow process going to play nice with your changes? What is connecting to it? Do you even know? What is your plan when you get a ton of support calls because things aren’t working that you didn’t even know about? If you’ve never encounter this type of scenario – go take a look at the book: The Phoenix Project. I listened to the audio version years ago and seriously LOL’d at some parts because I felt like I had lived it. I’m not alone in this.

Final thought: Before being the superhero and trying to fix something super fast in Production, stop and think. You’ll probably find a temporarily solution that will hold you over until you’ve tested out any major changes. And that’s your tidbit from the trenches for today.