Problems displaying this newsletter? View online.
SQL Server Central
Featured Contents
Question of the Day
The Voice of the DBA
 

Growing Artificial Intelligence

This editorial was originally published on Jul 4, 2016. With Steve on holiday, this is an interesting look back almost a decade into the past at AI technology.

There's a fascinating piece over at O'Reilly that looks at what we might consider Artificial Intelligence (AI) to be. The discussion looks at Deep Blue, Watson, and AlphaGo, all of which have defeated humans in game competitions where we might expect some intelligence is needed. We could argue that, but certainly, these computing machines have done more to display knowledge than the best humans at certain endeavors.

What is interesting is that each of these machines, while very competent in its area, is specialized. AlphaGo can't play chess, nor can DeepBlue play Go. Each has been tuned to a specialized area, and also trained to excel in that area. This isn't fundamentally different than humans that train and specialize themselves, though certainly we find humans have more capabilities in a general sense (for now) than machines.

As we look to grow intelligence, however, there is one thing that's commonly needed in both artificial or machine intelligence and human intelligence: data. Whether a human is training themselves to solve a particular problem, compete in a game, or even excel in a sport, they need lots of data. We gather this with our senses as well as by examining what others have one, contemplating actions, trying out different actions, ideas, or concepts, and then adjusting to improve.

This is what researchers are also trying to do with gaming machines, with self-driving cars, and even with bots. That last item is interesting to me, as I haven't paid much attention to bots. A long conversation with another SQL professional got me interested in, and intrigued by, the idea of software robots that might handle various complex tasks better than the FAQ method that so many applications and websites use. I wasn't sure these would be useful, but I have found the Slackbot to be more helpful than the help or searches for some tasks.

There's work to be done, and I know the Slackbot (and other machine intelligence software) needs to be trained better. This requires data. Lots of data, and possibly lots of hand holding from a human. For many areas, such as relatively low-level customer support or problem solving, I wonder if a bot could be trained to work better than the simple decision tree algorithms like those found in the Windows Troubleshooter.

There are various ways we might grow this software to help us, and make no mistake, we will need to grow it. Plenty of businesses are becoming excited about machine learning, the R language or Python, software bots, and more. In all the cases of implementing these systems, the one demand that will impact many of us is the need for lots of data. Data that's organized, that is relevant, that we can use to separate out successes from failures, and evaluate our particular problem better. We will need to group data into knowledge and then feed it into software.

I think this is a bit different than how most of us have used data over the years. We've often collected, manipulated, aggregated, summarized, and spit data back out to (ultimately) some human that can make a decision. Most of us haven't worked with sending data to a machine intelligence and somehow then helping it to understand how to respond on make a decision.

My suspicion is there will be lots of work for us in the next decade in helping machines to use data and understand it, maybe even to use them to help us gather, organize, clean, and manipulate data better ourselves. It's an exciting time to be a data professional, and I'm sure some of you will work on a few very exciting projects in the future.

Steve Jones - SSC Editor

Join the debate, and respond to today's editorial on the forums

 
 Featured Contents
SQLServerCentral Article

Think LSNs Are Unique? Think Again - Preventing Data Loss in CDC ETL

utsav from SQLServerCentral

When using only an LSN to track which changes you have processed, you can lose data. This article shows how to avoid this problem.

External Article

Query Exercise Answer: Generating Big TempDB Spills

Additional Articles from Brent Ozar Blog

In last week’s Query Exercise, I challenged you to play some code golf to generate big spills with tiny T-SQL.

Blog Post

From the SQL Server Central Blogs - Why is shrinking IT budgets a good thing?

Joyful Craftsmen from Joyful Craftsmen Blog

Each year around this time, companies enter the familiar ritual of budgeting. For many, it feels like a long and exhausting negotiation between ambition and constraint. Everyone knows, it...

Blog Post

From the SQL Server Central Blogs - Getting SQL Server 2025 RTM Running in Containers on macOS

aen from Anthony Nocentino Blog

SQL Server 2025 RTM is here, and if you’re running Docker on macOS, you might have hit a wall trying to get it running. Here’s what happened when I...

Learn Microsoft Fabric: A practical guide to performing data analytics in the era of artificial intelligence

Site Owners from SQLServerCentral

A step-by-step guide to harness the power of Microsoft Fabric in developing data analytics solutions for various use cases

 

 Question of the Day

Today's question (by Steve Jones - SSC Editor):

 

A Big PK

In SQL Server 2025, how many columns can be included in a Primary  Key constraint?

Think you know the answer? Click here, and find out if you are right.

 

 

 Yesterday's Question of the Day (by Alessandro Mortola)

The Read Committed Snapshot Isolation behaviour

I am currently working with Sql Server 2022 and AdventureWorks database.

First of all, let's set the "Read Committed Snapshot" to ON:

use master;
go

alter database AdventureWorks set read_committed_snapshot on with no_wait;
go

Then, from Session 1, I execute the following code:

--Session 1
use AdventureWorks;
go

create table ##t1 (id int, f1 varchar(10));
go

insert into ##t1 values (1, 'A');

From another session, called Session 2, I open a transaction and execute the following update:

--Session 2
use AdventureWorks;
go

begin tran;
update ##t1 
set f1 = 'B'
where id = 1;

Now, going back to Session 1, what happens if I execute this statement?

--Session 1
select f1
from ##t1
where id = 1;

 

Answer: Session 1 waits for Session 2 to commit or rollback

Explanation:

Although Session 1 is connected to AdventureWorks, the global temporary table is actually created in the tempdb database, where enabling READ_COMMITTED_SNAPSHOT is not allowed.

Therefore, because the row being updated is locked by Session 2 (whose transaction is still open), Session 1 must wait for a commit or a rollback.

Row Version Concurrency in SQL Server is well documented in this article by Kalen Delaney:

https://www.red-gate.com/simple-talk/databases/sql-server/t-sql-programming-sql-server/row-versioning-concurrency-in-sql-server/

Discuss this question and answer on the forums

 

 

 

Database Pros Who Need Your Help

Here's a few of the new posts today on the forums. To see more, visit the forums.


SQL Server 2017 - Administration
Deny Connect problem - I have a login I need to deny connect to on a server, but it is "hidden" inside a Windows Security Group instead of directly added to SQL Server security. I cannot deny connect to the whole group. I need to specifically not allow this specific login to connect to this server. But when I […]
SQL Server 2019 - Administration
Veeam Backup DAG issue. Access to availability group is not permitted. - Hi all,   Has anyone encountered an issue whereby using a distributed availability group to migrate data from cluster 1 to cluster 2 leaves stale GUIDs in the Veeam postgres database causing the backups to fail with the above error?   Anyone have a fix?   Thanks  
SQL Server 2019 - Development
CAST datetimeoffset(7) as a datetime in UK format - I have a view where I am casting a datetimeoffset(7) field to smalldatetime or datetime as my reporting application won't accept the datetimeoffset(7) format.  Problem is I am trying to get this field to show up in UK format.   I am using CAST to get my results.  I can get the format I need by […]
what are the downsides of TDE not running vs running? - hi for the 2 years i've been here I believe we've had "encryption" turned off in what i only know as the way we tell ssms to communicate with our sql servers ...and i've always thought meant also the server itself relaxing how it communicates back to whatever client is asking for data. recently an […]
Reporting Services
Catalog max connection pool size: 100 - Seeing this message repeated every 10 seconds in the RSHostingService_yyyy_mm_dd_hh_mm_ss.log file. Can anyone advise: a) Why this is being reported so frequently? b) Does it indicate the limit is being hit? c) If b is true, how can I increase it? I've had a look through the configuration files and can't find anything specifying "100" […]
Editorials
Your Security Checkup - Comments posted to this topic are about the item Your Security Checkup, which is is not currently available on the site.
How Important Are Real Time Decisions? - Comments posted to this topic are about the item How Important Are Real Time Decisions?
SQLServerCentral.com Website Issues
Website Stability 2025/12/05 - All week we've had issues with the site being up and down. There's been a tremendous amount of traffic to various pages, many of them old. Lots of redirects, and lots of volumes (hundreds or thousands of requests/sec). It seems like someone scanning archive.org and then hitting us from their various points. We have put […]
403 Forbidden - I created a post (or tried) in the 2022 Admin forum. https://www.sqlservercentral.com/?post_type=topic&p=4694880 But it's now inaccessible. Not sure what I did wrong.
Article Discussions by Author
Unlocking Data Transformation: My journey with dbt (Data Build Tool) on SQL Server - Comments posted to this topic are about the item Unlocking Data Transformation: My journey with dbt (Data Build Tool) on SQL Server
Putting the Player with the Number - Comments posted to this topic are about the item Putting the Player with the Number
Fabric Mirroring - Comments posted to this topic are about the item Fabric Mirroring
T-SQL in SQL Server 2025: The UNISTR Function - Comments posted to this topic are about the item T-SQL in SQL Server 2025: The UNISTR Function
SQL Server 2022 - Administration
Help! MEMORY_ALLOCATION_EXT wait stalls - Hi I have an overnight process that moves allot of claims records Been working fine for many years. Now it hits this part of the code (across a linked server) and gets the (1596567ms)MEMORY_ALLOCATION_EXT wait type and will sit there forever and never move any records - no delta movements at all. Used to complete […]
SQL Server 2022 - Development
This doesn't make sense to me - making me crazy - er - Hi So I have the below select query that won't return results if I have it this way:   --DOES NOT RETURN-- AND EXISTS (SELECT 1 FROM edi.dbo.PEC_RGT_EDI_834_Inbound_Exception xx WHERE (xx.SubscriberNumber = x.subscribernumber OR x.MBI = xx.mbi) AND xx.LastDateProcessed>'05/31/2022') But will return results with this very small change: --DOES RETURN-- REPLACE ABOVE WITH BELOW AND […]
 

 

RSS FeedTwitter

This email has been sent to {email}. To be removed from this list, please click here. If you have any problems leaving the list, please contact the webmaster@sqlservercentral.com. This newsletter was sent to you because you signed up at SQLServerCentral.com.
©2019 Redgate Software Ltd, Newnham House, Cambridge Business Park, Cambridge, CB4 0WZ, United Kingdom. All rights reserved.
webmaster@sqlservercentral.com

 

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -