DBA Kevlar http://dbakevlar.com Tips, tricks, (and maybe a few rants) so more DBAs become bulletproof! Wed, 17 Jan 2018 22:10:22 +0000 en-US hourly 1 https://wordpress.org/?v=4.9.2 https://i0.wp.com/dbakevlar.com/wp-content/uploads/2015/12/cropped-dbakevlar2.png?fit=32%2C32 DBA Kevlar http://dbakevlar.com 32 32 17330520 GDPR ‘Murica! http://dbakevlar.com/2018/01/gdpr-murica/ http://dbakevlar.com/2018/01/gdpr-murica/#respond Wed, 17 Jan 2018 22:08:33 +0000 http://dbakevlar.com/?p=7700 Just over a year ago, an alarm of emails, posts and projects arose in Europe surrounding the General Data Protection Regulation, also known with the acronym, GDPR.  It was as if someone had poked the sleeping bear of IT and

Read More GDPR ‘Murica!

The post GDPR ‘Murica! appeared first on DBA Kevlar.



Tags:  , , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [GDPR 'Murica!], All Right Reserved. 2018.
]]>
Just over a year ago, an alarm of emails, posts and projects arose in Europe surrounding the General Data Protection Regulation, also known with the acronym, GDPR.  It was as if someone had poked the sleeping bear of IT and woke it and boy, was it grumpy.

Suddenly EU technologists were learning all about advanced system security, how to encrypt and mask data, multi-tier authentication, along with creating procedures when a user requested to be forgotten.  Projects and money were being allocated to take on this demand that considering its initiative was passed back in 2014, you’d think would have been earlier than a year ago, but hey, procrastination isn’t just for us ADHDr’s.

Now GDPR is everywhere you look in American news, in articles and blogs with the May 25th, 2018 EU deadline quickly approaching.  The realization that we’re more connected than we’ve ever realized globally and that we’re held accountable to GDPR has many scrambling to be “GDPR complaint”.  Far beyond anyone saying, let’s make America great again, we have to recognize the regulations of our European customers.

As relational databases are the most common location for data in businesses today, the DBA, developer and application support  are going to feel the most pressure of this looming deadline.  It’s also a law that is legally binding to any company doing business with customers in the EU and must be adhered to.

So what are the main areas of concern for database technology concerning GDPR?

Security breaches of electronic data increased over 40% in just the last year.  This is expected to increase and with the introduction of the cloud, advanced security methods must be embraced by everyone.  Per the GDPR, a security breach is”:

the accidental or unlawful destruction, loss, alteration, unauthorized disclosure or, access to, personal data transmitted, stored, or otherwise processed.

The EU is taking an unprecedented step in what it identifies as personal data, too, which includes much of the data outside of what we commonly identify as data used for identity theft.

Companies that do business with any country that is part of the EU will be held accountable, so there isn’t a choice in compliance because your company only has customers in one or two countries.  This includes companies that use a third party that use data from the EU, as well.  There is a six degrees of separation that makes a high percentage of companies liable to require compliance.

There are specific rights to every EU citizen as part of GDPR:

  • The right to be informed
  • The right to access
  • The right to rectification
  • The right to be forgotten
  • The right to restrict processing
  • The right to data portability
  • The right to object
  • The right to not be part of automated profiling or decisions based on data

As a citizen of the EU, you have the right to know how your data is being used.  It must be clearly disclosed, i.e. with full transparency.  You have the right to access your own data and to view how it’s being used.  I’m unsure what format or interface that will be offered, but I’m foreseeing something similar to credit reporting, but it will be individual data reporting.  Also, similar to credit reporting, if the data that’s out there is incorrect, you’ll have the ability to request it be corrected if it’s incorrect or incomplete.

If you decide you want to be forgotten, you have the right to request your data be removed.  The company must provide a valid reason for storing the data in the first place, but if they can’t provide any, then it must be deleted.  Even if they do get to store it, you can also request for it not to be processed, especially if the data is incomplete or incorrect.  You’ll have the opportunity to require a company to wait to process until time a data completion request is finalized, ensuring that incomplete or incorrect data doesn’t progress through other systems.

Just like with medical data, due to HIPPA, you can make requests of your data and ask that it be used in another system for credit and banking.  This could cut down on unnecessary copies and may build the initiative for a personal ID, outside of a person’s Social Security Number that is both inefficient and leaves us more open to identify theft.

You can object to your data being added to companies, such as marketing campaigns, which could cut down on spam calls, marketing mailings, etc.  Think about the amount of trees that could be saved with that second one.

The next is in the best interest in the future of machine learning and AI-  You have the right to remove your data from any automated decision or profiling performed on your data.  This could have serious impact to automated advertising through machine learning and for those that are considering breaking this rule, I’d reconsider.  Any organization that breaches any of these could suffer fines up to 20 million euros or 4% of your global turnover.  That’s even more money in the US, so don’t take this lightly.

So, whatever you do, if you haven’t started working on your GDPR initiative, start.  You’re behind and there’s a lot to cover in a short 4 months to gain compliance.

 

 

 

 

 

 

 



Tags:  , , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [GDPR 'Murica!], All Right Reserved. 2018.

The post GDPR ‘Murica! appeared first on DBA Kevlar.

]]>
http://dbakevlar.com/2018/01/gdpr-murica/feed/ 0 7700
The Future of the DBA, #C18LV, Video 1 http://dbakevlar.com/2018/01/future-dba-c18lv-video-1/ http://dbakevlar.com/2018/01/future-dba-c18lv-video-1/#comments Wed, 10 Jan 2018 16:06:16 +0000 http://dbakevlar.com/?p=7697 I’m starting to move towards doing more videos and hope to improve my video skills, (and maybe add a dance sequence, ya know, like the hip kids…)  Check out this post and please, do add comments, ask questions or just

Read More The Future of the DBA, #C18LV, Video 1

The post The Future of the DBA, #C18LV, Video 1 appeared first on DBA Kevlar.



Tags:  , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [The Future of the DBA, #C18LV, Video 1], All Right Reserved. 2018.
]]>
I’m starting to move towards doing more videos and hope to improve my video skills, (and maybe add a dance sequence, ya know, like the hip kids…)  Check out this post and please, do add comments, ask questions or just tell me what you think?

Have an awesome Wednesday and no, don’t comment on my consistent need to make a strange face at the beginning of a video… 🙂



Tags:  , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [The Future of the DBA, #C18LV, Video 1], All Right Reserved. 2018.

The post The Future of the DBA, #C18LV, Video 1 appeared first on DBA Kevlar.

]]>
http://dbakevlar.com/2018/01/future-dba-c18lv-video-1/feed/ 1 7697
The 12 Days of Database Christmas http://dbakevlar.com/2017/12/12-days-database-christmas/ http://dbakevlar.com/2017/12/12-days-database-christmas/#respond Sun, 24 Dec 2017 14:43:45 +0000 http://dbakevlar.com/?p=7655 My brain has a tendency to wake up way before everything else in the house, so I try to keep it occupied best I’m able without disturbing anyone.  This may explain why so many if my plans are well flushed

Read More The 12 Days of Database Christmas

The post The 12 Days of Database Christmas appeared first on DBA Kevlar.



Tags:  , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [The 12 Days of Database Christmas], All Right Reserved. 2018.
]]>
My brain has a tendency to wake up way before everything else in the house, so I try to keep it occupied best I’m able without disturbing anyone.  This may explain why so many if my plans are well flushed out, as I have a tendency to hash them out in the early morning hours as a way of letting the rest of the household sleep.  This morning, on the eve of Christmas, I may have let my brain offer a Database Administrator twist to an old Christmas favorite…

Yes, to the tune of “the 12 Days of Christmas “ 🙂

 

The Twelve Days of a DBA’s Christmas

On the first day of Christmas, my database gave to me, a huge a$$ report to read.

On the second day of Christmas, my developer gave to me, two pathetic procedures and…

On the third day of Christmas, my system admin gave to me, a ton of third-tier storage…

On the fourth day of Christmas, my business gave to me, four slashed projects.

On the fifth day of Christmas, my user gave to me, five Cartesian joins….

On the sixth day of Christmas, my architect gave to me, six nodes clustering

On the seventh day of Christmas, my analyst gave to me,  seven tables scanning…

On the eighth  day of Christmas, my scheduler gave to me, eight mviews refreshing…

On the ninth day of Christmas, my merge statement gave to me, nine sessions blocking …

On the tenth day of Christmas, my subquery gave to me, ten latches locking…

On the eleventh day of Christmas, my manager gave to me, eleven Web meetings…

On the twelvth day of Christmas, my DevOps team gave to me, twelve tasks to automate…

 

Merry Christmas Everyone!

 



Tags:  , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [The 12 Days of Database Christmas], All Right Reserved. 2018.

The post The 12 Days of Database Christmas appeared first on DBA Kevlar.

]]>
http://dbakevlar.com/2017/12/12-days-database-christmas/feed/ 0 7655
Content- My Year in Review, 2017 http://dbakevlar.com/2017/12/content-year-review-2017/ Tue, 19 Dec 2017 23:43:48 +0000 http://dbakevlar.com/?p=7567 So where did 2017 go?!?!?  I really, really would like to know…  Needless to say, it’s time to do a year in review already and I actually have time to do it this year! DBAKevlar Blog I wrote over 100

Read More Content- My Year in Review, 2017

The post Content- My Year in Review, 2017 appeared first on DBA Kevlar.



Tags:  

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [Content- My Year in Review, 2017], All Right Reserved. 2018.
]]>
So where did 2017 go?!?!?  I really, really would like to know…  Needless to say, it’s time to do a year in review already and I actually have time to do it this year!

DBAKevlar Blog

I wrote over 100 blog posts this year between DBAKevlar, Delphix and partner sites, but I’ve enjoyed sharing with the different communities.  There’s significant changes going on in the IT world regarding the future of the Database Administrator.

This deafening message came through when pulling together my top blog posts for 2017, with Death of the DBA, Long Live the DBA presenting itself as the top post of the year.

I get a lot of my views outside of subscriptions via search engines, but there’s still a good number of viewers that come to my site due to Twitter and Linked in, etc.  Big shout out to Martin Berger, who’s been an awesome reference for my blog, (whatever you’re doing, just keep doing it… :))

I also did a lot of referring from my own blog, including over 450 times people went to Delphix from one of my blog posts, (Yay!  I actually do my job sometimes… :))

Most of my readers are from the United States, but then again, most of my speaking events are here in the US, too.

DBAKevlar Presenting

So how much did I present this year? Between in person events for Oracle and SQL Server, along with webinars and the demand for DevOps, I presented a lot-  69 to be exact.  With the quantity of SQL Saturday’s out there, I presented at a few more SQL Server events than I did Oracle ones, but it just means I get to share the love of database technology more.

I was thrilled to get a chance to present in Morocco this year, along with returning to Europe to present in Germany at DOAG and the UK for UKOUG.

DBAKevlar Other Schtuff

I also published an ebook, (with a copy in print to give away at events) did a couple podcasts and then we have a successful 2017 RMOUG Training Days conference, the beginning of my presidency of Rocky Mountain Oracle User Group, (RMOUG) and work for the board of directors for the Denver SQL Server User Group as their liaison.   We’re now hard at work on the upcoming RMOUG Training Days 2018, which has a new location, new events and I can’t wait to see where it takes us next!

My highlights for 2017?  That I was accepted to present at both Oracle Open World and Microsoft Summit.  This was one of my goals for 2017.  Being honored as one of eight Microsoft technologists to accept my Idera ACE and to have one Oracle webinar and two Microsoft webinars-  one for 24HOP, (24 hrs. of PASS) and the Microsoft PASS Linux Edition just this last week.

Yeah, 2017 ROCKED.  Bring on 2018!!

 

 

 

 

 



Tags:  

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [Content- My Year in Review, 2017], All Right Reserved. 2018.

The post Content- My Year in Review, 2017 appeared first on DBA Kevlar.

]]>
7567
Graph Database in SQL Server 2017, Part I http://dbakevlar.com/2017/12/graph-database-sql-server-2017-part/ Fri, 15 Dec 2017 19:48:43 +0000 http://dbakevlar.com/?p=7533 I felt like playing with something new for the holidays  and chose to investigate the Graph Database feature in SQL Server 2017. Graph Database is no simple feature, so this is going to take more than one post, but we’ll

Read More Graph Database in SQL Server 2017, Part I

The post Graph Database in SQL Server 2017, Part I appeared first on DBA Kevlar.



Tags:  

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [Graph Database in SQL Server 2017, Part I], All Right Reserved. 2018.
]]>
I felt like playing with something new for the holidays  and chose to investigate the Graph Database feature in SQL Server 2017.

Graph Database is no simple feature, so this is going to take more than one post, but we’ll start here and see how long it takes for me to be distracted by another new feature…:)  As you can only have one user graph per database, that should limit my investigation to controlled chaos.

Graph databases are all about relationships-  relationships between data.  The output can provide insight into data that might not be apparent in a tabular fashion and the basic, graph data model is slightly different from how we think of a database model:

The first thing is to know that the feature is available in both Azure SQL Database and SQL Server 2017 as shown above, it’s comprised of node and edge tables.

You can quickly  locate the graph database objects in a SQL Server 2017 database  by querying sys.tables:

SELECT NAME as table_name, is_node as node_table, is_edge as edge_table
FROM sys.tables
WHERE IS_NODE=1 or IS_EDGE=1
ORDER BY  table_name;
GO

As you’ll note, the where clause is searching for node, (vertices) and edge, (relationship) values of 1.  And these are the two objects that create the graph database.  Those edge tables are going to define the relationship between each of the node tables, which then will render your graphs to provide value to the output.

Querying a graph database requires the use of a new TSQL function, called MATCH(), which then will then graph out the entities to the screen, matching up each node via appropriate edge for other node’s properties and attributes.  When data is complex and the need for a more visual output to view the data in a non-tabular form, a graph database output can provide incredible value.

SELECT RelPerson2.Name 
FROM  RelPerson1, Friends, RelPerson2
WHERE MATCH(RelPerson1-(Friends)->RelPerson2)
AND RelPerson1.Name = 'Joe';

The physical relationship between all the people in this query that are connected to Joe might appear something like the following:

For the DBA, it’s important to know that node and edge tables can have indexes just like other tables, but most often are going to provide benefit on the those ID columns that connect node and edge tables, as that’s were the joins between the objects are made.

Where they differ is foreign keys.  Outside processing and foreign keys aren’t required due to the design focus on relationships already present in a graph database.

I think the best examples I’ve seen of graph database use is for complex hierarchy, such as org charts and data centers.  As the use of these grows and people find more value out of them, I have no doubt DBAs will be spending more time working with them.

 

 

 

 



Tags:  

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [Graph Database in SQL Server 2017, Part I], All Right Reserved. 2018.

The post Graph Database in SQL Server 2017, Part I appeared first on DBA Kevlar.

]]>
7533
Pass Marathon on Linux for SQL Server, Wednesday, Dec. 13th http://dbakevlar.com/2017/12/pass-marathon-linux-sql-server-wednesday-dec-13th/ Tue, 12 Dec 2017 23:50:09 +0000 http://dbakevlar.com/?p=7526 Tomorrow Pass is sponsoring a Linux Marathon for all the SQL DBAs getting ready to go big with Linux. The schedule is jam packed with sessions on getting started with Linux, working with SQL Server on Linux and then a

Read More Pass Marathon on Linux for SQL Server, Wednesday, Dec. 13th

The post Pass Marathon on Linux for SQL Server, Wednesday, Dec. 13th appeared first on DBA Kevlar.



Tags:  , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [Pass Marathon on Linux for SQL Server, Wednesday, Dec. 13th], All Right Reserved. 2018.
]]>
Tomorrow Pass is sponsoring a Linux Marathon for all the SQL DBAs getting ready to go big with Linux.

The schedule is jam packed with sessions on getting started with Linux, working with SQL Server on Linux and then a few sessions, including my own for essential tools that the DBA needs to work with Linux.  I’m the last one on the schedule for the day, to be followed by me heading down to the south side of town for the monthly, (and very Christmas-y) SQL Server User Group meeting.

If you aren’t a member of the PASS organization, it is free and you can register for the event and get more out of the community by attending or speaking at your own local SQL Server User Group or branch out to the national or virtual events.  Just remember, it is the most wonderful time of the year, peeps.



Tags:  , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [Pass Marathon on Linux for SQL Server, Wednesday, Dec. 13th], All Right Reserved. 2018.

The post Pass Marathon on Linux for SQL Server, Wednesday, Dec. 13th appeared first on DBA Kevlar.

]]>
7526
Shooting the DBA isn’t a Silver Bullet to the Cloud http://dbakevlar.com/2017/12/shooting-dba-isnt-silver-bullet-cloud/ Fri, 08 Dec 2017 19:03:19 +0000 http://dbakevlar.com/?p=7518 We’ve all been watching numerous companies view value in bypassing the Database Administrator and other critical IT roles in an effort to get IT faster to the cloud.  It may look incredibly attractive to sales, but the truth of it

Read More Shooting the DBA isn’t a Silver Bullet to the Cloud

The post Shooting the DBA isn’t a Silver Bullet to the Cloud appeared first on DBA Kevlar.



Tags:  , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [Shooting the DBA isn't a Silver Bullet to the Cloud], All Right Reserved. 2018.
]]>
We’ve all been watching numerous companies view value in bypassing the Database Administrator and other critical IT roles in an effort to get IT faster to the cloud.  It may look incredibly attractive to sales, but the truth of it is, it can be like setting up land mines in your own yard.

Having the right people in the right roles, doing the right tasks is essential to having a complete cloud deployment.  Easy access without any checks and balances is just asking for trouble, which I am quickly realizing as I discuss this topic with more folks on my travels.  One company, who originally just sold cloud solutions, started offering audits of cloud environments.  They have experienced and incredible demand for this type of review and upon inspection, discovered over 80% of existing cloud projects they audited, failed many basic security and standard environment requirements that having a Database Administrator’s involvement would have assisted in avoiding.

Some of the most common failures?

  • Common best practice for multifactor authentication, often embedding credentials into the application or database layer.  They often found the developers expected to address it at a later time and then never doing so due to time limitations or missing review steps.
  • Weak or missing encryption at the production layer and access to critical data in non-production.  This is a sore point for me, as no one needs access to critical data in a non-production environment with the number of advanced masking tools available on the market.  Some will complain about the cost, but what is the cost to your company with one breach.  Out of business anyone?
  • APIs are often the most exposed layer of any multi-tier environment and if you’ve skipped deep penetration testing of this layer, you’re just asking to be some hacker’s weekend project.
  • Account hijacking is all too common these days.  There are advanced database, as well as application monitoring systems that will note potential fraudulent activity and notify those responsible.  DBAs understand this responsibility, where developers goal is to build out functionality.  Understand the difference in goals.

The expense of putting IT processes in place to discover and repair vulnerabilities is small compared to the potential damage and understanding why different mindsets and roles are designated for a reason is important to the success of the cloud.  Even if sales is focused on getting the people who will use the product without much scrutiny doesn’t mean that IT should stop taking full advantage of the DBA role which may be standing between them and the cloud to stay in business for the long run.



Tags:  , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [Shooting the DBA isn't a Silver Bullet to the Cloud], All Right Reserved. 2018.

The post Shooting the DBA isn’t a Silver Bullet to the Cloud appeared first on DBA Kevlar.

]]>
7518
UKOUG and Microsoft Marathon Webinar http://dbakevlar.com/2017/12/ukoug-microsoft-marathon-webinar/ Wed, 06 Dec 2017 14:22:46 +0000 http://dbakevlar.com/?p=7504 I’m here for the last day of UKOUG Tech17 and it’s been an awesome event.  This is my first time to this event while in Birmingham and although quite the party town on the weekends, its a great city to

Read More UKOUG and Microsoft Marathon Webinar

The post UKOUG and Microsoft Marathon Webinar appeared first on DBA Kevlar.



Tags:  , , , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [UKOUG and Microsoft Marathon Webinar], All Right Reserved. 2018.
]]>
I’m here for the last day of UKOUG Tech17 and it’s been an awesome event.  This is my first time to this event while in Birmingham and although quite the party town on the weekends, its a great city to have an event like UKOUG’s trio of events during the week.

I was welcomed to great turnouts to both my presentations and then enjoyed numerous sessions by other’s, such as Richard Foote, Jonathan Lewis, Roger MacNicol and others that one might not get a chance to see in at most US Oracle User Group events.

My biggest challenge in my second session was that I was in the Hall 1, (aka the big arse room) where I couldn’t see anything past the main lights, so decided quickly to skip any questions during the session and asked folks to come see me afterwards.  Even with microphones half way up the theater, I was picturing the comedy of me trying to figure out where the question was coming from and what was being said beyond the echo in the huge chamber.

There were numerous social get-togethers around the conference, but with so many November events and travel, I found that I was a little less social than I would be normally.  I still had plenty of opportunity to catch up with folks and it was lovely to see everyone.

This is the last event for the year with travel for me, so next week I’m home and have Microsoft’s Pass Marathon virtual event, where I and a number of other experts will be sharing our knowledge on Linux for the SQL Server DBA.

If you haven’t had the chance to work with SQL Server 2017 on Linux, it’s a simple process to install Docker, (who doesn’t have Docker on their laptop these days??) and add the image for SQL Server 2017, so seriously consider the option to get familiar with the newest version of SQL Server with the new OS.

 



Tags:  , , , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [UKOUG and Microsoft Marathon Webinar], All Right Reserved. 2018.

The post UKOUG and Microsoft Marathon Webinar appeared first on DBA Kevlar.

]]>
7504
SQL Server 2017 on Linux- Processes http://dbakevlar.com/2017/12/sql-server-2017-linux-processes/ http://dbakevlar.com/2017/12/sql-server-2017-linux-processes/#comments Mon, 04 Dec 2017 12:16:10 +0000 http://dbakevlar.com/?p=7468 So while finishing up my slides for the Microsoft Pass Linux Marathon webinar on Dec. 13th, Tim and I started to discuss the apples vs. oranges comparison of SQL Server on Linux process management vs. an Oracle instance. We discussed

Read More SQL Server 2017 on Linux- Processes

The post SQL Server 2017 on Linux- Processes appeared first on DBA Kevlar.



Tags:  , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [SQL Server 2017 on Linux- Processes], All Right Reserved. 2018.
]]>
So while finishing up my slides for the Microsoft Pass Linux Marathon webinar on Dec. 13th, Tim and I started to discuss the apples vs. oranges comparison of SQL Server on Linux process management vs. an Oracle instance.

We discussed the differences one might expect to see using different tools with the two database platforms and the first question surrounded information pmap would provide.  We commonly use pmap to map out processes, including child and sub-processes of a particular PID.   As my current images have multiple database platforms on each of them,  I quickly spun up a Docker image of SQL Server 2017 to ensure I had a clean image to work from.

First, what processes are running?

$ ps -ef
root         1     0  0 22:22 ?        00:00:00 /bin/sh -c /opt/mssql/bin/sqlservr
root         7     1  0 22:22 ?        00:00:00 /opt/mssql/bin/sqlservr
root         9     7  3 22:22 ?        00:00:24 /opt/mssql/bin/sqlservr
root       165     0  0 22:24 pts/0    00:00:00 bash
root       300   165  0 22:34 pts/0    00:00:00 ps -ef

Unlike Oracle, there aren’t separate background processes like the pmon, log writer, etc. that was present for us to identify, as you see in the following example:

$ ps -ef | grep orcl
delphix   2927     1  0 Nov22 ?        00:06:49 ora_vkrm_orcl
delphix   4542     1  0 18:48 ?        00:00:00 ora_w000_orcl
delphix   9331     1  0 Oct18 ?        00:04:24 ora_pmon_orcl
delphix   9333     1  0 Oct18 ?        00:05:21 ora_psp0_orcl
delphix   9335     1  0 Oct18 ?        05:45:03 ora_vktm_orcl
delphix   9339     1  0 Oct18 ?        00:01:01 ora_gen0_orcl
delphix   9341     1  0 Oct18 ?        00:01:44 ora_diag_orcl
delphix   9343     1  0 Oct18 ?        00:01:37 ora_dbrm_orcl
delphix   9345     1  0 Oct18 ?        00:16:50 ora_dia0_orcl
delphix   9347     1  0 Oct18 ?        00:00:57 ora_mman_orcl
delphix   9349     1  0 Oct18 ?        00:03:55 ora_dbw0_orcl
delphix   9351     1  0 Oct18 ?        00:18:27 ora_lgwr_orcl
delphix   9353     1  0 Oct18 ?        00:05:58 ora_ckpt_orcl
delphix   9355     1  0 Oct18 ?        00:01:36 ora_smon_orcl
delphix   9357     1  0 Oct18 ?        00:00:19 ora_reco_orcl
delphix   9359     1  0 Oct18 ?        00:05:22 ora_mmon_orcl
delphix   9361     1  0 Oct18 ?        00:12:19 ora_mmnl_orcl
delphix   9363     1  0 Oct18 ?        00:00:26 ora_d000_orcl
delphix   9365     1  0 Oct18 ?        00:00:24 ora_s000_orcl
delphix   9886     1  0 Oct18 ?        00:58:21 ora_arc0_orcl
delphix   9888     1  0 Oct18 ?        00:58:44 ora_arc1_orcl
delphix   9890     1  0 Oct18 ?        00:00:34 ora_arc2_orcl
delphix   9892     1  0 Oct18 ?        00:58:21 ora_arc3_orcl
delphix   9894     1  0 Oct18 ?        00:01:11 ora_ctwr_orcl
delphix   9896     1  0 Oct18 ?        00:00:26 ora_qmnc_orcl
delphix   9911     1  0 Oct18 ?        00:06:54 ora_cjq0_orcl
delphix  10082     1  0 Oct18 ?        00:00:27 ora_q000_orcl
delphix  10084     1  0 Oct18 ?        00:02:42 ora_q001_orcl
delphix  14181     1  0 Oct18 ?        00:01:17 ora_smco_orcl
delphix  30148     1  0 Nov22 ?        00:02:25 ora_m002_orcl
delphix  30151     1  0 Nov22 ?        00:02:27 ora_j000_orcl
delphix  30456     1  0 Nov22 ?        00:00:22 ora_j001_orcl
delphix  31062     1  0 Nov22 ?        00:02:25 ora_j002_orcl
delphix  31456     1  0 Nov22 ?        00:00:21 ora_j003_orcl

In our Oracle environment, we can see every background process, with it’s own pid and along with the process monitor, (pmon) db writer, (dbwr), log writer, (lgwr), we also have archiving, (arcx), job processing, (j00x) performance and other background processing.  I didn’t even grep for the Oracle executable, so you recognize how quickly we can see what is running.

In the SQL Server environment, we only have two processes- our parent process is PID 7 and the child is 9 for SQL Server and nothing to distinguish what they actually are doing.  If we decide to use the pmap utility to view what the parent and child process are doing, we see only sqlservr as the mapping information.

$ pmap -x 7

7:   /opt/mssql/bin/sqlservr
Address           Kbytes     RSS   Dirty Mode  Mapping
000000762cbcb000     888     724       0 r-x-- sqlservr
000000762cbcb000       0       0       0 r-x-- sqlservr
000000762cea8000      24      24      24 rw--- sqlservr
000000762cea8000       0       0       0 rw--- sqlservr
000000762ceae000     300      20      20 rw---   [ anon ]
000000762ceae000       0       0       0 rw---   [ anon ] 
0000400000000000       4       4       4 rw---   [ anon ]
...
ffffffffff600000       4       0       0 r-x--   [ anon ]
ffffffffff600000       0       0       0 r-x--   [ anon ]
---------------- ------- ------- ------- 
total kB           80212   13660    8896

The information mapping is filled with heap, (anon) info, along with libraries and bin executables.  Nothing out of the ordinary here, but nothing of detail, either.

If I were to do the same for Oracle-  let’s say the pmon process, you’d see more information, including what the process is doing:

$ pmap -x 9331

9331:   ora_pmon_orcl
Address           Kbytes     RSS   Dirty Mode   Mapping
0000000000400000  189264   12340       0 r-x--  oracle
000000000bed4000    2020     256      36 rw---  oracle
000000000c0cd000     348      60      60 rw---    [ anon ]
000000000c6d5000     584      84      84 rw---    [ anon ]
0000000060000000   12288     356     356 rw-s-    [ shmid=0x50001 ]
0000000060c00000  364544    2824    2824 rw-s-    [ shmid=0x58002 ]
0000000077000000    2048       4       4 rw-s-    [ shmid=0x60003 ]
...

We would see every library being called, along with the memory usage, etc.  The child process of 9 showed substantially more memory usage, but we’re left with little to go on for what each process is responsible for in the database engine:

$ pmap -x 9 

9:   /opt/mssql/bin/sqlservr
Address           Kbytes     RSS   Dirty Mode  Mapping
000000006a400000       4       4       4 r---- system.sfp
000000006a400000       0       0       0 r---- system.sfp
000000006a401000    1308    1304     164 r-x-- system.sfp
...
ffffffffff600000       4       0       0 r-x--   [ anon ]
ffffffffff600000       0       0       0 r-x--   [ anon ]
---------------- ------- ------- ------- 
total kB         3064272  604820  587480

Digging further into this process and using TOP, we can filter for just the child PID 9 and see the memory usage, but still nothing that tells us what 9 is responsible for.

$ top -H -p 9
top - 22:50:39 up 34 min,  0 users,  load average: 0.00, 0.00, 0.00
Threads: 154 total,   0 running, 154 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.1 us,  0.1 sy,  0.0 ni, 99.8 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  4042116 total,  1722984 free,   678736 used,  1640396 buff/cache
KiB Swap:  1048572 total,  1048572 free,        0 used.  2936276 avail Mem 
  PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND 
26 root      20   0 3017376 591652  15800 S  1.7 14.6   0:27.98 sqlservr                     
22 root      20   0 3017376 591652  15800 S  0.3 14.6   0:01.41 sqlservr                    
14 root      20   0 3017376 591652  15800 S  0.3 14.6   0:00.32 sqlservr                  
9 root       20   0 3017376 591652  15800 S  0.0 14.6   0:00.00 sqlservr                     
10 root      20   0 3017376 591652  15800 S  0.0 14.6   0:00.04 sqlservr                   
11 root      20   0 3017376 591652  15800 S  0.0 14.6   0:00.00 sqlservr                  
12 root      20   0 3017376 591652  15800 S  0.0 14.6   0:00.04 sqlservr                     
13 root      20   0 3017376 591652  15800 S  0.0 14.6   0:00.43 sqlservr      
...

We can verify that there are a number of background processes, but like we discussed in the beginning, there isn’t any type of assignment letting us know what they are each responsible for.

Using the PS utility doesn’t provide us much more:

ps -T -p 9

  PID  SPID TTY          TIME CMD
    9     9 ?        00:00:00 sqlservr
    9     1 ?        00:00:00 sqlservr
    9     2 ?        00:00:00 sqlservr
...
    9    12 ?        00:00:00 sqlservr
...
    9    60 ?        00:00:00 sqlservr
    9    61 ?        00:00:00 sqlservr

It does inform us that there are 56 subprocesses connected to child PID 9 and now I’ve decided there’s only one way to get the details behind what is what.  It’s time to log into the database and look inside:

Connect via SQLCMD:

$ /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P ‘<password>’

Then queried the information I needed, (going old school) from sysprocesses, as the DMVs weren’t as efficient:

1> select spid, program_name, cmd from MASTER..sysprocesses;
2> go

spid   program_name                         cmd    
------ -----------------------------------------------------
 1                                          XTP_CKPT_AGENT 
 2                                          LOG WRITER      
 3                                          LAZY WRITER     
 4                                          RECOVERY WRITER 
 5                                          SIGNAL HANDLER 
 6                                          LOCK MONITOR    
 7                                          XIO_RETRY_WORKER
 8                                          XIO_LEASE_RENEWA
 9                                          BRKR TASK       
 10                                         TASK MANAGER    
 11                                         TASK MANAGER    
 12                                         XE TIMER        
 13                                         RESOURCE MONITOR
 14                                         XE DISPATCHER   
 15                                         TASK MANAGER    
 16                                         TASK MANAGER    
 17                                         TRACE QUEUE TASK
 18                                         SYSTEM_HEALTH_MO
 19                                         RECEIVE         
 20                                         TASK MANAGER    
 21                                         CHECKPOINT      
 22                                         TASK MANAGER    
 23                                         HADR_AR_MGR_NOTI
 24                                         BRKR EVENT HNDLR
 25                                         BRKR TASK       
 26                                         BRKR TASK       
 27                                         BRKR TASK      
 28                                         TASK MANAGER    
 29                                         TASK MANAGER    
 30                                         TASK MANAGER    
...  
 51      SQLCMD                             SELECT          
 52                                         TASK MANAGER      
 53      SQLServerCEIP                      AWAITING COMMAND
 54                                         TASK MANAGER    
 ...    
 60                                         TASK MANAGER    
 61                                         TASK MANAGER    
(61 rows affected)

If you were curious what I queried looking at the DMVs, here’s the high level versions:

select thread_address, os_thread_id from sys.dm_os_threads;

select session_id, host_process_id, endpoint_id, program_name, client_interface_name, is_user_process, quoted_identifier, database_id, authenticating_database_id from sys.dm_exec_sessions;

Well, no matter what, that answers some of my questions, but there’s still a lot more to learn… 🙂

 

 



Tags:  , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [SQL Server 2017 on Linux- Processes], All Right Reserved. 2018.

The post SQL Server 2017 on Linux- Processes appeared first on DBA Kevlar.

]]>
http://dbakevlar.com/2017/12/sql-server-2017-linux-processes/feed/ 2 7468
UKOUG Tech 2017 http://dbakevlar.com/2017/11/ukoug-tech-2017/ Thu, 30 Nov 2017 17:28:26 +0000 http://dbakevlar.com/?p=7481 Its been a couple years since I presented at UKOUG.  After taking last year off to prioritize some projects with Delphix, I’m back to speaking and the event committee was gracious enough to offer a goth girl a couple spots

Read More UKOUG Tech 2017

The post UKOUG Tech 2017 appeared first on DBA Kevlar.



Tags:  , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [UKOUG Tech 2017], All Right Reserved. 2018.
]]>
Its been a couple years since I presented at UKOUG.  After taking last year off to prioritize some projects with Delphix, I’m back to speaking and the event committee was gracious enough to offer a goth girl a couple spots on the schedule this year.

The event is in Birmingham, and although I’ve never been there, I’m told by reports, it’s rather rainy and cold this time of year, so I better prepare, (nothing like people selling you on a location…:))

I have two sessions this year, the first one is on Super Sunday:

Sunday, Dec. 3rd  at 4pm in the Media Suite

Oracle vs. SQL Server- The war of the Indices

The second is in the standard schedule:

Monday, Dec. 4th at  12:35pm in Hall 1

Oracle Optimized- AWR, ASH & ADDM Features

I also signed up to chair a few sessions.  It’s important to give back to the community at large, so I was happy that I had some time to chair the following three sessions:

Title First name Surname Company name Title
Mr Guido Schmutz Trivadis Kafka Connect & Kafka Streams – Powerful Ecosystem Around the Kafka Core
Mr Mike Durran Oracle Oracle Data Visualization – The Latest & Greatest
Dr Roger MacNicol Oracle Using Oracle Columnar Technologies Across the Information Lifecycle

I promise I’ll only help and won’t heckle anyone… 🙂  This is one of the largest European events and it has a lot of backing by the UK community.  I’m looking forward to:

  1. Present at UKOUG after the haitus.
  2. Get to visit with some awesome people at an incredible event.
  3. Use up the last of my timezone limbo that I have left over from my trip to DOAG the week before… 🙂

See you in Birmingham next week!

 

 

 

 



Tags:  , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [UKOUG Tech 2017], All Right Reserved. 2018.

The post UKOUG Tech 2017 appeared first on DBA Kevlar.

]]>
7481
Database Scoped Configurations http://dbakevlar.com/2017/11/database-scoped-configurations/ http://dbakevlar.com/2017/11/database-scoped-configurations/#comments Tue, 28 Nov 2017 18:22:46 +0000 http://dbakevlar.com/?p=7454 As most of you know, I’m working to update all of my SQL Server knowledge, which hasn’t gone as deep as I would like since SQL Server 2012. So there are a couple things we’re going to focus on today,

Read More Database Scoped Configurations

The post Database Scoped Configurations appeared first on DBA Kevlar.



Tags:  ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [Database Scoped Configurations], All Right Reserved. 2018.
]]>
As most of you know, I’m working to update all of my SQL Server knowledge, which hasn’t gone as deep as I would like since SQL Server 2012.

So there are a couple things we’re going to focus on today, first of which is the top in the list which I’ve highlighted, Legacy Cardinality Estimation:

By default, this value is turned off and as the optimizer is essential to database performance and in each database platform, handled differently, it’s worth starting to disect.  The Database Scoped Configuration settings, which are database specific, and can be accessed via the SSMS, right clicking on the database and left clicking on Database Properties and on Options.

The second is to query sys.database_scoped_configurations:

SELECT name, value 
 FROM sys.database_scoped_configurations;

The values from here will be displayed as the numerical values for ON=1 and OFF=0

Only the MAXDOP, (Maximum Degree of Parallelism) is a numerical value vs. On/Off.  This is proven after I save my update to the MAX DOP shown at the properties for the database that will immediately change the value of DOP allowed from none to four.  Needless to say, this was just to prove the update and I reverted it to 0 vs. a distinct value.

The Legacy_Cardinality_Estimation is part of a larger feature that controls feature versioning choices for the optimizer in SQL Server.

Legacy Cardinality Estimation

Oracle DBAs have used the CARDINALITY hint for some time and it should be understood that this may appear to be similar, but is actually quite different.  As hinting in TSQL is a bit different than PL/SQL, we can compare similar queries to assist:

TSQL
SELECT CustomerId, OrderAddedDate 
FROM OrderTable 
WHERE OrderAddedDate >= '2016-05-01';
OPTION (USE HINT ('FORCE_LEGACY_CARDINALITY_ESTIMATION'));
go
PL/SQL

Where you might first mistake the CE hint for the following CARDINALITY hint in Oracle:

SELECT /*+ CARDINALITY(ORD,15000) */ ORD.CUSTOMER_ID, ORD.ORDER_DATE 
FROM ORDERS ORD WHERE ORD.ORDER_DATE >= '2016-05-01';

This would be incorrect and the closest hint in Oracle to SQL Server’s legacy CE hint would be the optimizer feature hint:

SELECT /*+ optimizer_features_enable('9.2.0.7') */ ORD.CUSTOMER_ID, ORD.ORDER_DATE FROM ORDERS ORD 
WHERE ORD.ORDER_DATE >= '2016-05-01';

If you’re wondering why I chose a 9i version to force the optimizer to, keep reading and you’ll come to understand.

To check the compatibility version, as well as setting it per database in SQL Server, we would perform the following:

SELECT ServerProperty('ProductVersion');    

SELECT d.name, d.compatibility_level FROM sys.databases AS d 
WHERE d.name = '<Database_name>';

To update the compatibility version to the latest version to match our SQL Server vNext database engine, we’d run the following command:

ALTER DATABASE <yourDatabase> SET COMPATIBILITY_LEVEL = 140;

Let’s assume we just upgraded our database to 140, (SQL Server 2017) and are experiencing some serious performance issues that didn’t appear during testing.  We could choose to set the compatibility level to 130, (SQL Server 2016) to temporarily address the performance problem, allowing the optimizer to use previous version features, while we troubleshoot the issue.

ALTER DATABASE <yourDatabase> SET COMPATIBILITY_LEVEL = 130;

Now database engine and compatibility is an odd thing, just like in  Oracle.  To understand the versions that are out there, here’s a handy reference:

Now you will notice that their isn’t a value for SQL Server 7 when setting compatibility.  Even though 70 might be the version value, the ability to set back to it requires a different answer to the fix than you see for newer versions.  First of all, if you’re still forcing compatibility down to version 7, we need to have a serious talk, but if you need to force compatibility back to version 7, this is where we get into crazy land… 🙂

ALTER DATABASE SCOPED CONFIGURATION LEGACY_CARDINALITY_ESTIMATION = ON;

This option will then allow you to override the compatibility level value of a given database.  What this means is that you can have a database with:

  • Product version: 140, (SQL Server 2017)
  • Compatibility version: 120, (SQL Server 2016)
  • and then turn scoped database configuration on for legacy cardinality estimation and use the optimizer compatibility features for 100, (SQL Server 2012)

When performance challenges occur, this can create an incredibly complex situation.  The optimizer is an incredible set of features and it becomes more complex with each release.  New features can impact how previous optimizer features once performed and when scoped database configuration for legacy cardinality estimates are turned on, it can really create a puzzle box for the DBA to diagnose.  The recommendation is turn on the query store, pull an XML trace of the process performance and then view the specific information at deep detail of what the optimizer did during the execution.

I believe as many do, fixing something right is a better choice than bringing a performance issue requiring an optimizer value override for more than one version.   If you do have to make this decision as a last resort, do so with the idea that its a temporary solution.  I’d feel this way if it was Oracle or SQL Server.  I know there was a demand to have this feature by some powerful customer at some point, but we all know it will end up creating more pain than gain in the end.

 

 

 



Tags:  ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [Database Scoped Configurations], All Right Reserved. 2018.

The post Database Scoped Configurations appeared first on DBA Kevlar.

]]>
http://dbakevlar.com/2017/11/database-scoped-configurations/feed/ 1 7454
How Not to Make WIT Result in WTH http://dbakevlar.com/2017/11/not-make-wit-result-wth/ Wed, 22 Nov 2017 15:50:53 +0000 http://dbakevlar.com/?p=7422 The support of Women in Technology at Oracle is a fine line and a careful argument. I receive between 20-30 communications in any week on the topic and I think the challenge as I speak to people is the importance

Read More How Not to Make WIT Result in WTH

The post How Not to Make WIT Result in WTH appeared first on DBA Kevlar.



Tags:  ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [How Not to Make WIT Result in WTH], All Right Reserved. 2018.
]]>
The support of Women in Technology at Oracle is a fine line and a careful argument. I receive between 20-30 communications in any week on the topic and I think the challenge as I speak to people is the importance of education over persecution. I’m at DOAG, (Deutschland Oracle User Group) conference this week and it’s common for someone to ask to speak to me on the topic of WIT. These valuable conversations have lead to deep reflection of what it means to offer support and how we can improve diversity in the Oracle community….then again, it may just be the jet lag talking… 😊

Moving the needle forward in educating people on the small details that create the “death by a thousand pin pricks” that consistently cost us women in technology and impact women’s contributions to the community/industry often consists of very different answers than one would expect. I think its easy to look for a silver bullet. One of those bullets is the WIT luncheon and the idea that you will solve the real problems by just serving some food. The truth is, these events should simply be a celebration of women in tech, not thought of as a resolution for cultural bias that continues to haunt us.

100% Contribution

When any community doesn’t receive the full productivity of 50% or more of it’s contributors, there is going to be a cost and the technical industry feels this pain regularly. The only way to resolve it is to find solutions that require the full technical contribution of everyone involved.
To demonstrate how assumptions/perceptions can lead us down a rabbit hole, I’m going to focus on two scenarios that I believe are excellent examples from the Oracle community on how two situations can appear to be similar and are actually very different:
Scenario One has a conference with a group of women who are hired to escort and ensure the attendees are entertained at the event. The event location has a culture where women aren’t often technical and being a highly patriarchal society, the women spend significant time dancing late into the night, with none of these women onsite to attend technical sessions or to present. There are consistent whispered conversations about the inappropriateness of the women at the event, along with some public jokes that highlight how inappropriate the women are at a professional event, but also serve to alienate those offended by this cultural dinosaur further.
Scenario Two has a conference, contains a number of women speakers and all of the speakers are escorted to and from the stage by two women who are representing the essence of Oracle- the Greek representation- Oracle is female, her job is to facilitate knowledge. There are some attendees who are only viewing these women as escorts to the speakers and questioned why was this a viable in the modern age of technical conferences. Is this not a cultural dinosaur like Scenario One?
What is the difference between these two events?

Respect.

Its essential that before we react, we discuss and understand each perspective and what is experienced by those organizing as well as attending. There is an importance on accepting cultural differences, but also know that those who step out of the crowd to initiate change have a hope for a better future.  We often accept culture and may still understand the demands that are on the organizers to have a successful event, but know they’ve made concessions to the majority.
The most important part of the conversation is the discussion. Learning from everyone involved and to continue to have a goal of education over persecution should be the highest priority for everyone.

The Difference

In Scenario One, the women aren’t there contributing to the technical aspect of the event. They are only there based on their physical appearance and there is an expectation of little contribution outside of this where the women are concerned. I’ve presented at this event and it was an overall cultural scenario. I was uncomfortable when I walked around the venue and it was the same experience no matter if I was in the presence of attendees or guests of the venue outside of the event. This also  lets one know that it’s overall culture and not isolated to the event.
In Scenario Two, the speakers were escorted to the podium by two women, but there is an important and unknown reason behind why women were the ones escorting all the speakers.  It wasn’t that there weren’t women speakers or attendees, but historical relevance. Only women were recognized as true  “Oracles” and it was a sign of respect back to the origins of the “Oracle” mythology.

Beginning of the Fix

What can be done to initiate change for the future?
1. Create a Code of Conduct. An event should adopt and expectation of how those representing the event and in attendance are to conduct themselves. If you want to grow and be part of the larger world, then the event has to grow beyond the local culture. The code of conduct should be present on the back of badges, the registration and event site. Setting an expectation of the level of respect to all involved at the event serves both those that are subject to less respect and helps those that might violate this to grow.
2. Invite women to submit abstracts and to attend. Men and women are raised differently and due to this, women often underestimate their value to an event, both in contributions and attendance. Let them know that they are wanted at the event. It doesn’t mean having a quota, but do have a goal of a certain percentage of women speakers with a goal to increase that yearly. You will find the more women that speak, are interviewed and are SEEN, the more women that will attend. Offer mentorship to new speakers, get more women involved and find women who can lead mentoring efforts going forward. If we can’t see it, we can’t be it.
3. Educate- If you have a situation that can be misunderstood and isn’t a cultural or bias limitation, publish it to the event site. Market why you do what you do so others can champion your cause. If you are a white dude and want to say there isn’t anything wrong with having “eye candy” at an event, sorry, but you are part of the problem. If you’re a woman saying that its alright when someone says its not a problem to have women contributing to a technical conference with their physical appearance and not their technical contributions, you’re also part of the problem. We should all be part of the solution and that doesn’t mean persecution, but realize, if you limit how women contribute at an event, enlightened folks will contribute their time elsewhere and the event will suffer in the end.



Tags:  ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [How Not to Make WIT Result in WTH], All Right Reserved. 2018.

The post How Not to Make WIT Result in WTH appeared first on DBA Kevlar.

]]>
7422
Considerations When Using SQL Server 2016 Dynamic Data Masking http://dbakevlar.com/2017/11/considerations-using-sql-server-2016-dynamic-data-masking/ http://dbakevlar.com/2017/11/considerations-using-sql-server-2016-dynamic-data-masking/#comments Wed, 15 Nov 2017 18:49:59 +0000 http://dbakevlar.com/?p=7411 SQL Server 2016 introduced a new security feature called Dynamic Data Masking.  With the General Data Protection Regulations, (GDPR) breathing heavy down most IT in America’s neck, its good timing. “Data Masking” is a term that has a strict definition, but

Read More Considerations When Using SQL Server 2016 Dynamic Data Masking

The post Considerations When Using SQL Server 2016 Dynamic Data Masking appeared first on DBA Kevlar.



Tags:  , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [Considerations When Using SQL Server 2016 Dynamic Data Masking], All Right Reserved. 2018.
]]>
SQL Server 2016 introduced a new security feature called Dynamic Data Masking.  With the General Data Protection Regulations, (GDPR) breathing heavy down most IT in America’s neck, its good timing.

Data Masking” is a term that has a strict definition, but different results when we actually discuss the technology behind it.  The main goal is to obfuscate critical data in a non-reversible process and I deem it separate from encryption technology. With SQL Server’s Dynamic Data Masking, the original data is still present in the database, with a masking rule applied to hide the data, allowing anyone with the unmask privilege to still view it.

grant unmask to <user/role>;

As Delphix has a very robust and non-reversible, masking product, I realize that you get what you paid for.  The real question is the cost of data vulnerability in an age of security breaches, (over 1000 reported so far in 2017) worth the loss of customer loyalty, revenue and possibly the company.

So how does Dynamic Data Masking work?  It’s a simple alter table command.  If you have a table called Employees that contains their social security numbers and you want to mask them, you can add a masking function to the SSNum column:

alter table store.Employees
alter column [SSNum] add masked with (function = 'partial(0,"XXX-XX-",4)');

select SSNum from store.Employees;

XXXX-XX-5426
XXXX-XX-8954
XXXX-XX-0143
XXXX-XX-5499
...

Anyone with the unmask privilege or DB_OWNER will be able to view the data.  As many development and testing environments grant higher privileges to the users and in SQL Server, it’s not rare for a developer to be the DB_OWNER, (I used to come across this all the time when recoveries were performed by the wrong OS user) this leaves this data still quite vulnerable.  I do like that if you were to take a backup and recover it with masking, the obfuscated data is what is recovered physically.  I’m more concerned about those odd environments where compliance hasn’t been put in place on owners of the database that would still view the originally masked data, but unmasked.

Performance isn’t impacted, (i.e. no referential integrity concerns or execution plans) as the optimizer  performs all steps against the real data, which leads me to wonder what happens with some of the newer monitoring tools that state they can display SQL and bind variable data without accessing the database directly.  Would they “sniff” the masked data or unmasked?  Would it matter who the OS User or roles in the database?

The masking can also be reversed on an object with just a simple command:

alter table store.Employees
alter column [SSNum] drop masked;

This seems too easy to get access to critical data.  Understand that having critical data secured is essential, but before choosing a product, make a list of what could happen, the impact to the organization if the data is breached and the value of having a masking or encryption product that is robust enough to handle your requirements.

I’m heading home from Devoxx Morocco tomorrow and will be heading to DOAG in Nuremberg, Germany the beginning of next week.  It appears that jet lag will be a semi-permanent state for me this month…. 🙂



Tags:  , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [Considerations When Using SQL Server 2016 Dynamic Data Masking], All Right Reserved. 2018.

The post Considerations When Using SQL Server 2016 Dynamic Data Masking appeared first on DBA Kevlar.

]]>
http://dbakevlar.com/2017/11/considerations-using-sql-server-2016-dynamic-data-masking/feed/ 1 7411
Azure SQL Database- Automatic Index Management http://dbakevlar.com/2017/11/azure-sql-database-automatic-index-management/ http://dbakevlar.com/2017/11/azure-sql-database-automatic-index-management/#comments Thu, 09 Nov 2017 13:42:08 +0000 http://dbakevlar.com/?p=7399 As I begin my education in SQL Server 2017, as well as Azure SQL Database, my attention was caught by the optimizer improvements and especially automatic tuning. Often referred to with features starting with the naming convention of “dynamic” in

Read More Azure SQL Database- Automatic Index Management

The post Azure SQL Database- Automatic Index Management appeared first on DBA Kevlar.



Tags:  ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [Azure SQL Database- Automatic Index Management], All Right Reserved. 2018.
]]>
As I begin my education in SQL Server 2017, as well as Azure SQL Database, my attention was caught by the optimizer improvements and especially automatic tuning.

Often referred to with features starting with the naming convention of “dynamic” in Oracle, many automatic features either thrill or frustrate DBAs, no matter what the platform.  The frustration enters with the features introduction and often decreases as the feature matures and becomes more stable.  With the introduction of the Automatic Tuning from Microsoft, there’s a sense of concern, but also some very promising ways Microsoft is introducing these features.

With Automatic Tuning, the Database Engine in Azure SQL Database has Automatic Index Management.  Any DBA is going to take the recommendation for an addition of an index with a grain of salt.  The index has to be justified, not that it will only be used by one query, but that it provides repeated value and it can be justified by the pressure added for every insert, update and delete to additional index.

Where we’re hesitant to add an index, the opportunity to drop an unused index is something we’ll take advantage of whenever its offered.  With Azure SQL Database, the Database Engine can drop unused indexes as it tracks index usage.

In Oracle, we’ve been able to track usage of an index, but only within the monitoring period and if you had end of period reports or end of year processing that wasn’t captured, you could drop indexes that were crucial to the system.  Now, with Oracle 12.2, they’ve started to track, not only if indexes are used or unused ongoing, but how many times the index is used:

select name, total_access_count, total_exec_count, last_used from DBA_INDEX_USAGE where name='IDX_1';

NAME      TOTAL_ACCESS_COUNT TOTAL_EXEC_COUNT  LAST_USED
--------- ------------------ ---------------- ---------------------
IDX_1                   85                85     11-03-2017 18:58:43

With Azure SQL Database, Automatic Tuning is continuously monitoring and should be trusted for dropping indexes, but upon further research, it became apparent, that like Oracle, there is a window that the monitoring is for and if you have period or yearly processing that relies on the indexes, you could be impacted.  Per the documentation, “indexes that were not used in a longer period of time that could be removed.” Am I going to choose to drop that index its identified that isn’t required?

Even a bigger question-  would I ever turn on the automation for the create or drop index in the automatic tuning feature?  Nope and NOPE.

I have to admit, when the documentation states that any change that doesn’t improve performance is “immediately reverted” in Automatic Tuning, I’m curious if that the feature is part of index management, as it might be an interesting day in a DBAs life to have indexes disappear and reappear.  I also wonder what that means when we’re talking about a 1TB+ index… 🙂



Tags:  ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [Azure SQL Database- Automatic Index Management], All Right Reserved. 2018.

The post Azure SQL Database- Automatic Index Management appeared first on DBA Kevlar.

]]>
http://dbakevlar.com/2017/11/azure-sql-database-automatic-index-management/feed/ 1 7399
East Coast Oracle Conference, (ECO 17) http://dbakevlar.com/2017/11/east-coast-oracle-conference-eco-17/ Wed, 08 Nov 2017 21:09:08 +0000 http://dbakevlar.com/?p=7392 So this week I’m back on the other coast, Raleigh, NC at ECO17 after last week in Seattle. I’ve switched from SQL Server to Oracle and we won’t discuss how many times I had to correct myself as I said,

Read More East Coast Oracle Conference, (ECO 17)

The post East Coast Oracle Conference, (ECO 17) appeared first on DBA Kevlar.



Tags:  , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [East Coast Oracle Conference, (ECO 17)], All Right Reserved. 2018.
]]>
So this week I’m back on the other coast, Raleigh, NC at ECO17 after last week in Seattle. I’ve switched from SQL Server to Oracle and we won’t discuss how many times I had to correct myself as I said, “transaction log” instead of “archive log” and pointed west instead of east for the ocean…My expression at times was similar to Obi Wan’s-

For the next month, I’ll be sticking to the Oracle side, as this is going to be a crazy month for travel.  My two sessions at ECO this week were well attended and I really enjoyed talking to folks and learning some new schtuff.

Great job on your IoT sessions, Blaine Carter.  Blaine probably has my dream job of playing with all kinds of open source all day, but he actually did a presentation on how he’s set up his smart home.  He took the time to explain how we can do it better and what open source software is out there to centrally manage it and how to use ORDS for the rest APIs.  It was fun and the discussions were interesting and gave me the information I need when I upgrade all my smart home gadgets in the 5th wheel next year.

I presented “DevOps for the DBA” and presented my former keynote session, “Cloudy with a Chance of Databases”, both of which were well attended.  I love how many folks in the Oracle community are beginning to embrace advanced skills and not just content with standard database administration.  There are interesting and exciting areas for us to expand our careers and it isn’t the downhill slope that some people are promoting with the introduction of autonomous database.

The evening was spent having dinner with some awesome folks, even if they decided to photoshop themselves into the picture, (we won’t discuss this abomination of nature….and art.

For Day two, I did spend significant time speaking with attendees and still was able to attend a few sessions, including a great Javascript/CSS session from Jorge Rimblas.  He did a great job of introducing these two languages to PL/SQL Developers and hopefully offering some insight of why they might want to do more with both of them.



Tags:  , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [East Coast Oracle Conference, (ECO 17)], All Right Reserved. 2018.

The post East Coast Oracle Conference, (ECO 17) appeared first on DBA Kevlar.

]]>
7392
Kudos to Pass Summit 2017 http://dbakevlar.com/2017/11/kudos-pass-summit-2017/ http://dbakevlar.com/2017/11/kudos-pass-summit-2017/#comments Tue, 07 Nov 2017 18:15:39 +0000 http://dbakevlar.com/?p=7383 This week I had the opportunity to present at Microsoft’s Pass Summit, which was one of two events I had on my list for this year, (the other was Oracle Open World.) Although I’m still learning about all the events

Read More Kudos to Pass Summit 2017

The post Kudos to Pass Summit 2017 appeared first on DBA Kevlar.



Tags:  ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [Kudos to Pass Summit 2017], All Right Reserved. 2018.
]]>
This week I had the opportunity to present at Microsoft’s Pass Summit, which was one of two events I had on my list for this year, (the other was Oracle Open World.) Although I’m still learning about all the events on the Microsoft side, unlike Oracle, where there’s one, massive event in San Francisco each fall, Microsoft has split their annual events into three to focus on each audience. In less than two months, there was MS Ignite in Florida, focused on tomorrow’s technology, IT Dev Connections, geared towards development and then this week, Pass Summit, for the Data Platform expert, (DBA and Data Scientist…)  I’m unsure of what events are going to have to leave my list I currently attend to fit these ones in, but somethings going to have to give.

Still a Newbie

I attended my first Pass Summit last year and was incredibly impressed with the quality of content, as it geared towards the topics and focus someone like me would be interested in.

Although there are a number of similarities to any technical event, (and I do present at a number of different events specializing in Oracle, SQL Server, Big Data, DevOps, Testing and Agile) there are some unique characteristics to Summit that I want to recognize.

The content is top-notch and focused on database, development, analytics and professional development. I’ve already discussed some of my favorite sessions from the conference and my main failing was not having the opportunity to attend more sessions. Delphix has been a sponsor of Pass Summit for years and this year was no different. I’m always impressed with the attendee interest and traffic in the exhibitor area for Microsoft events. The attendees are just more engaged than other events and want to understand how products can make their companies more successful with technology.

This event is held each year at the Washington Conference Center, which is easy to access, has ton of hotels nearby and makes it easy to make the most of the event.

Diversity and Inclusion

Upon receiving your registration badge, one of the first things that stand out from other events is the Anti-harassment 800 number and policy notification on the back in red. Some of the attendees joke about the need of this notification, but for a woman in technology from other communities, I was struck by the overall behavior differences at Microsoft events and I have to give some of the credit to the importance Microsoft and the Pass community gives to diversity and inclusion.

This acknowledgement is to notify attendees and exhibitors that this event has a no-tolerance policy towards harassment and that all attendees deserve the best event experience. Where a woman in attendance at most tech events often expects one or two awkward incidents to occur, the reminder displayed on the badge decreases the likelihood. It is there for everyone who attends the events and sets expectations. All interactions, no matter the participants, are less apprehensive and I found there were more networking, communication and all attendees’ benefit.

On the topic of diversity and inclusion, there are multiple women in technology happy hour tables, a luncheon and sessions. Men wear kilts in support of the women at least one day of the conference and there is an openness in discussing even difficult topics with a goal if more diversity involvement in technology and in the community. Social media has it’s own handle that highlights the women’s contributions throughout the week and many regional groups have a goal of 50% women speakers for their events. There are still the same challenges when it comes to having more people of color in the technical space, but that just means there are more opportunities for this initiative to grow.

SQL Family

As with most conferences, there are a number of post-day events, but what’s more popular are the niche events that have grown in popularity over the years, like karaoke, (yes, I said karaoke.) I still didn’t get up the nerve or have the time to attend, (I’m pacing and bracing myself for the upcoming month of travel) but I’m told this and post conference dinners are the thing for networking with others.

Gaining intimate knowledge of the MSSQL community or SQLFamily, (you can follow the #SQLFamily hashtag for more) is important as you speak at these events. Quite a few of the events require an invitation, either in the form of tickets or armbands to gain access if necessity demands it. Some of these events are incredibly invaluable to me and my goal is always events that I can communicate with those that are hosting and attending, so if they’re noisy to the point you’re unable to, you’re probably going to lose me quickly.

So what did I feel were opportunities for improvement this year? Often there were multiple invites I wasn’t able to attend. As I stated, with some of the events are just for attendees to unwind and let loose. These aren’t the events for me, where I’m looking to connect and network, but everyone deserves to get their geek on, no matter what form that takes in and Summit ensures that everyone has the chance.

I have an additional, professional goal- I need to spend some serious education time enhancing my Microsoft Data Platform skills. I find that I’m still pulling from my previous life as a DBA and as most people know, I believe in walking the walk, not just talking the talk. The demands of my day job, pull from different technology and platforms have kept me from investing the time I need to in Microsoft post SQL Server 2012 and that has got to change.  If you have any recommendations, please feel free to email me at my dbakevlar address at gmail.  I’d appreciate the feedback and advice.

Until the next SQL Saturday, I’m focused on Oracle for a couple weeks, first at East Coast Oracle Conference, (ECO) this week, next week at Devoxx Morocco, followed by DOAG, (Germany) and UKOUG, (The UK) to finish up the year.  Boy, am I going to be tired this Christmas!

 

 

 

 



Tags:  ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [Kudos to Pass Summit 2017], All Right Reserved. 2018.

The post Kudos to Pass Summit 2017 appeared first on DBA Kevlar.

]]>
http://dbakevlar.com/2017/11/kudos-pass-summit-2017/feed/ 1 7383
Pass Summit 2017, 2nd Day, Thursday http://dbakevlar.com/2017/11/pass-summit-2017-2nd-day-thursday/ Fri, 03 Nov 2017 14:28:31 +0000 http://dbakevlar.com/?p=7376 Thursday started out calm, self-assured that I knew where I needed to be all day and was prepared.  I tweeted happily that I had found a lovely spot to work during the keynote, (day job!) Yeah, this: At the keynote,

Read More Pass Summit 2017, 2nd Day, Thursday

The post Pass Summit 2017, 2nd Day, Thursday appeared first on DBA Kevlar.



Tags:  , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [Pass Summit 2017, 2nd Day, Thursday], All Right Reserved. 2018.
]]>
Thursday started out calm, self-assured that I knew where I needed to be all day and was prepared.  I tweeted happily that I had found a lovely spot to work during the keynote, (day job!)

Yeah, this:

At the keynote, there was a table with my name on it where I was supposed to be.  Thank you so much to Brent Ozar for letting me know so I could apologize for the miscommunication with the organizers of the blogger table, (which is not the same thing as the blogger meetup-  oops!!)

The rest of the day was crazy busy, but incredibly enjoyable and educational.  I attended Andy Yun’s session on UDFs and Nested Views impact on Optimizer choices to confirm they suffer very similar challenges as Oracle.  I’d always enforced the rule of avoidance from my experience with E-business Suite in Oracle when working with SQL Server just to be safe and his presentation did a great job of using a story and code to explain, although the number of permutations is decided by time vs. quantity like Oracle’s CBO, it does happen and the complexity of next views can impact the ability to choose an acceptable plan.

Too Many Lunches

Next, I played Hobbit and went for first, second and third lunch, (not really, but it was fun to say…)  I stopped into the WIT Birds of a Feather table and hosted a number of fantastic conversations with the table.  I was thrilled to have both men and women at the table and it confirmed that we’re all part of the solution.

I missed the WIT luncheon keynote, as I had to rush over for lunch with my Seattle based fellow Oakies.  Thank you to Kyle Hailey, Jeremiah Wilton and Jeremy Schneider for the wonderful lunch and catching up.  It was great to see you while I was here in the city!

Post lunch, I had an interview with PassTV with SentryOne.  Instead of being in the stream, they made the decision to add my interview into the final broadcast, so I’m looking forward to seeing the final product when completed.

I did get to spend some time in the booth yesterday, but it was only long enough to be told I missed a ton of people who were looking for me, so apologies to all I missed!  Once the booth closed, I headed over to Pass Speaker Idol, which I LOVED!!  It’s an awesome concept-  have folks that have never spoke at Summit, try their hand at speaking in a five minute presentation and judged by five senior speakers from the event.  The winner of each of the rounds goes onto the finals and the winner gets a guaranteed speaking spot at Summit 2018.  This is an incredible way to bring in new speakers and I applaud Pass’ dedication to that goal.

Afterwards, I attended Glenn Berry‘s “Improving SQL Server Performance” session.  Glenn is awesome, (DBA Crush) and he covered many tricks I’d learned over the years to design a Windows server around optimal performance for a SQL Server database, but showed us some great new options with newer servers I was unaware of.  Glenn considers himself more of a hardware guy, (over his SQL Skills peers) but his performance queries have been a standard for me since the beginning of my investment in SQL Server.

To Many Events

The evening was upon me and I bid farewell to my coworkers, who I watched enviously depart for a great company dinner and I went to network, (i.e. do my job…. :))  I attended the Idera party, (everyone was really getting into the band, (I’m not much of a concert goer, so it took me a minute to realize everyone had picked up earplugs as they came in) The band was rocking out and took the term “hair band” to new levels!  I departed after making the rounds and ran into Steve Jones and chatted for a few minutes as I returned to the event center and discussed the Redgate party, which he confirmed would be a smash, but at that point, decided to balance my evening out by proceeding over to game night.  Catherine was nice enough to escort me into the event and I played a lovely game of Scrabble and chatted with Karen Lopez before turning in for the night.

The Friday Don’t Miss

Friday at 10:30am, I have Koffee with Kellyn in the Delphix booth and then I’ll be presenting at the LAST session of the day, (3:15 in room 615), doing a talk on “War of the Indices, Oracle vs. SQL Server”.  This talk will compare deep research done on indexing in the two platforms, then how the engine, memory allocation, optimizer and data storage creates benefits and latency in performance.



Tags:  , ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [Pass Summit 2017, 2nd Day, Thursday], All Right Reserved. 2018.

The post Pass Summit 2017, 2nd Day, Thursday appeared first on DBA Kevlar.

]]>
7376
Pass Summit 2017, 1st Day, Also Known as HumpDay http://dbakevlar.com/2017/11/pass-summit-2017-1st-day-also-known-humpday/ Thu, 02 Nov 2017 16:18:01 +0000 http://dbakevlar.com/?p=7370 I’ve plenty of rest after arriving in Seattle yesterday to get my registration for Pass Summit, attended the Women in Technology Happy Hour and then received my Idera ACE! Now Wednesday morning, I spent it reworking my slides for the

Read More Pass Summit 2017, 1st Day, Also Known as HumpDay

The post Pass Summit 2017, 1st Day, Also Known as HumpDay appeared first on DBA Kevlar.



Tags:  ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [Pass Summit 2017, 1st Day, Also Known as HumpDay], All Right Reserved. 2018.
]]>
I’ve plenty of rest after arriving in Seattle yesterday to get my registration for Pass Summit, attended the Women in Technology Happy Hour and then received my Idera ACE!

Now Wednesday morning, I spent it reworking my slides for the third time and preparing while the main keynote was going on, (my session was right after and was streamed.) After all that work, I then came to realize after adjusting my resolution, we loaded the previous deck and I had to think fast, skipping some older slides during my presentation. Lucky for me, I had an awesome audience and the questions from the attendees consumed the time lost from the missing slides!

Booth Bacon, (We do not say Booth Babe)

Afterwards, I spent most of the day in the Delphix booth, across from the Microsoft monopoly. I work remote, so was happy to spend some time with the folks from our MSSQL teams.   I still had a few conference attendees who were surprised to see a speaker they knew from the Oracle community at a MSSQL event and a few asked to take selfies with me, (very appreciated, thank you!)

Now We Troubleshoot

I did get to go to two sessions later in the day, SQL Server 2017 on Linux from Bob Ward.  Bob verified why I record my demos and just play them back during events, but as Tanel Poder would say when these things happen in the Oracle world, “Now we troubleshoot!”  There was significant troubleshooting going on during Bob’s session due to VM misbehavior, but still picked up some good tips that the MSSQL community will need as they go to the Linux side and I appreciate his humor during tech challenges!  Awesome job, Bob!

The Day’s End

Someone said I’m supposed to do karaoke tonight and this is “the thing” at Summit, but it may take me another year to get up the nerve and to be honest, I ended up going to dinner with some incredibly high-end rum with coworkers instead …baby steps, baby steps… 🙂



Tags:  ,

Del.icio.us
Facebook
TweetThis
Digg
StumbleUpon


Copyright © DBA Kevlar [Pass Summit 2017, 1st Day, Also Known as HumpDay], All Right Reserved. 2018.

The post Pass Summit 2017, 1st Day, Also Known as HumpDay appeared first on DBA Kevlar.

]]>
7370