When does a machine become human? When they can Lie…

Don’t worry I am not talking of androids or cyborgs. I am talking about the classical definition used to determine artificial intelligence. The most widely used benchmark or at least the most well know is The Turing test: is a test of a machine’s ability to exhibit intelligent behavior equivalent to, or indistinguishable from, that of a human.  …

Game Theory and Databases

CASE 1 Two members of a criminal gang are arrested and imprisoned. Each prisoner is in solitary confinement with no means of speaking to or exchanging messages with the other. The police admit they don’t have enough evidence to convict the pair on the principal charge. They plan to sentence both to a year in…

Cell level encryption

Encrypting data at the cell level is important in order to protect information within the database. While all users have access to view data not all users are equal. Therefore it makes sense to encrypt data in such a way that only authorized users who have a key to decrypt the data are the only…

sys.dm_exec_describe_first_result_set()

This DMV is probably one of the most useful DMVs for developers and Business intelligence users since it describes the data type and other columnar information of the result set. Unlike sp_help which describes a table this particular DMV or DMF actually can be used to dynamically determine the datatypes and other usage options for…

sys.dm_db_log_space_usage

Another DMV that is available in SQL server 2012 is the sys.dm_db_log_space_usage DMV, this DMV is useful when trying to decide the current state of the Log file. And if there is any use trying to shrink the database. This DMV could also help the DBA understand if the log file is constantly running out…

sys.dm_server_memory_dumps

Memory dumps are a copy of what lies in the RAM during a particular scenario such as a crash or even a manual Dump. Memory dumps are useful when working with any application because it helps identify exactly what was running on a system when the problem occurred. However with certain applications such as sql…

sys.dm_os_windows_info

A minor DMV with SQL Server this particular one doesn’t really provide much information about the OS other than the version and service pack level. It is nowhere near the amount of information that could be captured using other means. You can’t even say which edition of the OS its running so I really don’t…

sys.Dm_db_database_page_allocations()

This new DMV is basically a modified version of the DBCC IND command that is used to display the page allocations for a specific database object like a table. The advantage of the DMV is that it’s readily portable and provides a more complete picture of the allocations of the pages to the object it…

Business Intelligence on a Phone Bill

I often tell my trainees that BI can be done on pretty much anything. A common example of this is the Phone Bill or the Bank statement. Your phone bill or statement can give an idea of not just your spending habits or preferences but even your routine and much more. I recently decided to…