A series of arguments with developers who insist that fuzzy searches or spell-checking be done within the application rather then a relational database inspired Phil Factor to show how it is done. When the database must find relevant material from search terms entered by users, the database must learn to expect, and deal with, both expected and unexpected … Read more16 February 2017
If you are introducing DevOps workflows into a large organization, you’ll need to plan carefully and prioritize tasks, adapt, maintain a thick skin, communicate constantly, and ensure that all teams have a chance to contribute their solutions. Bob Walker explains how FCSA set up a DevOps Workgroup, its philosophy and its goals for improving database and application deployment processes.… Read more14 February 2017
The ability to scale out SSRS, so that multiple report server instances can access a single report server database, is an Enterprise Edition-only feature. So when Rodney Landrum was tasked with implementing a scale-out solution, with failover, for SSRS on SQL Server Standard Edition, it required some creative thinking. This article describes his solution, its merits and drawbacks.… Read more14 February 2017
When exploring the use of the Metaphone algorithm for fuzzy search, Phil couldn't find a SQL version of the algorithm so he wrote one. The Metaphone algorithm is built in to PHP, and is widely used for string searches where you aren't always likely to get exact matches, such as ancestral research and historical documents. It is particularly useful when comparing strings word-by-word. With a SQL version, it is easy to experiment on large quantities of data!… Read more10 February 2017
Tables that return the value of the data in the table at a particular point of time have been with us since the first relational database, but have always required special queries and constraints, and can be tricky to get right. System-versioned Temporal Tables, new in SQL Server 2016, make such tables behave like any other. How do you create one, or modify an existing table? How can you get an In-Memory Optimized OLTP table to be Temporal? Alan Grinberg shows how. … Read more10 February 2017
Is 'Always Encrypted' SQL Server 2016's most widely important new feature? It is significant that 'Always Encrypted' in SQL Server is in all editions of SQL Server. Because of the increasing importance of encryption to data governance, it allows encryption for the sensitive application data for everywhere beyond the application's client connection, including network, server, database and storage. Robert Sheldon explains what it is, why you should try it out, and how to set about it.… Read more03 February 2017
User Acceptance Testing (UAT) is an important part of the development process. If carried out as early as possible and as regularly as possible, it not only alerts the development team to aspects that don't yet meet the requirements of the users, but also gives governance a better idea of progress. If UAT is delayed, defects become expensive and troublesome to fix. Sophia Segal gives an experienced summary view of UAT… Read more30 January 2017
Node.JS and SQL Server are a good match for creating non-blocking, event-driven database applications. Though you can use ODBC or JDBC to communicate between the two, it is possible to run such applications on platforms such as Azure, Linux, OSX and iOS by using Node together with the JavaScript TDS library called 'Tedious'. 'Tedious' is a mature product but it is still possible to get things wrong in converting SQL Server datatypes such as BigInt to native Javascript data. … Read more26 January 2017
The feature formerly known as Hekaton, now In-Memory OLTP can provide very useful performance gains where you carefully select the tables to become memory-optimised. How do you set about the job of converting existing tables to become memory-optimised tables? the process isn't entirely straightforward but the benefits that an In-Memory OLTP table delivers is worth your effort. Alex Grinberg takes you through the basics.… Read more25 January 2017
Sometimes, you can be asked an awkward question about data that doesn't quite fit with the SQL way of thinking. Although window functions have made SQL more versatile, there are times when you have to reach for your favourite book of algorithms to code your way around an unusual reporting task… Read more20 January 2017
Many practical database problems can be tackled more simply and intuitively by graphs or networks, which in this sense are graphs in which attributes can be associated with the nodes and edges. It is a natural way to study relationships within the data. SQL databases aren't the easiest way of doing it, but it makes sense where the scale permits it. Because of the range of graphs and techniques, some Graph theory is unavoidable before you get stuck into the code, and who better to introduce graph databases than Joe Celko? … Read more13 January 2017
Sometimes, it isn't the technicalities or details of database source control that people find difficult, but the general concepts and workflow. In this article, taken from Robert Sheldon's book 'SQL Server Source Control Basics' , he takes a step back from the details to explain the whole purpose of database source control and the most important operations within source control such as versioning, branching and merging.… Read more12 January 2017
Transparent Data Encryption (TDE) encrypts the data within the physical files of the database, the 'data at rest'. Without the original encryption certificate and master key, the data cannot be read when the drive is accessed or the physical media is stolen. The data in unencrypted data files can be read by restoring the files to another server. TDE requires planning but can be implemented without changing the database. Robert Sheldon explains how to implement TDE.… Read more12 January 2017
SSIS was not originally designed with automated deployment in mind. However, any database that uses SSIS projects and their packages needs a way of scripting the deployment of them if the database is to be deployed rapidly, or via a build server. Nat Sundar shows a technique that can be extended to manage the scripted deployment of SSIS projects. … Read more11 January 2017
Identifying a need for better collaboration between teams is only the first step to introducing DevOps workflows into your organization. You also need to define a common DevOps goal, a strategy to achieve it, and then to break down this strategy into series of manageable tasks for each team. Bob Walker describes how Farm Services of America started to "do DevOps".… Read more04 January 2017
If you need to run SQL Server in an Azure Virtual Machine, your choice of Azure storage will have a great effect on its performance. If performance is important, you are likely to discover complications and barriers in the storage options when you come to provision the server. If you get it wrong, you could end up with an expensive service. Joshua explains the value of using a lab environment to allow you to make well-informed VM storage decisions when the time comes to provision your production system. … Read more04 January 2017
Once you have Query Store enabled on your databases, runtime statistics are generated for your queries; but what about the natively-compiled stored procedures and memory optimised tables that come with In-Memory OLTP? Do you get the full range of runtime statistics? This is an intriguing question that Enrico explores and answers.… Read more16 December 2016
The easiest way of explaining how a DevOps approach to database deployment can dramatically speed up the process is to use the term ‘shift-left’. By performing, or at least preparing for, all the processes and tasks that are necessary for deployment as soon as possible in the development cycle, it is possible to move from big, infrequent releases to “little and often”. Stephanie Herr explains how ‘shifting left’ can get deployment pipelines moving.… Read more13 December 2016
Virtual machines are easier to manage via PowerShell than with the the Hyper-V Manager console. PowerShell Direct takes this further by allowing you to interact easily with the virtual machines on the Hyper-V host without needing network access. With Windows Nano Server, PowerShell Direct is an essential because this OS requires you to use remote management via PowerShell scripts.
… Read more13 December 2016
SQL Server Encryption is an essential part of what is required for protecting data. Column-level encryption can be a very effective way of doing this. In the first in a series of articles on the theme of SQL Server Encryption, Robert Sheldon once more makes it all seem easy.… Read moreNext