Yet Another Computing Blog
Windows, Linux, SQL Server and other stuff
Wednesday, June 19, 2019
Reference Architecture - Windows Failover Cluster - Two Nodes Multi-Site
Introduction
Monday, January 19, 2015
Encrypting Data In SQL Server
Friday, December 26, 2014
Using The Command Line To Upgrade Windows Edition
Thursday, October 23, 2014
Windows Server 2012 Deduplication - Powershell Reference
- There is a scheduler which runs one deduplication job / operation at any point in time
- Powershell and windows commands add jobs to the scheduler queue - only one job may run at a given point in time
- Types of deduplication operations:
- Optimization - deduplicates files on the filesystem.
- Scrubbing - performs an integrity check of the deduplication store
- GarbageCollection - files deleted from the filesystem do not automatically free up space on the disk. A garbage collection must be run to clean up the dedupe store
- You can configure the minimum age of files to deduplicate. Typically this should be set to a value greater than one day to ensure active files are not deduplicated.
Here are some handy powershell commands for managing deduplication on Windows Server 2012:
Thursday, May 29, 2014
Renew A Windows Server Group Membership Without Rebooting
Friday, March 21, 2014
Setup SNMP On A Linux Host
Wednesday, February 26, 2014
Deploying A SQL 2012 AlwaysOn Cluster
Friday, February 21, 2014
Building A Windows Cluster Using Windows Server 2008 R2
Saturday, February 1, 2014
Upgrading Powershell on Windows Server 2008 R2
The latest version of Powershell, version 4, has been released by Microsoft in late October 2013. It brings a lot of additional functionality and performance improvements to the table. This document covers how to upgrade Powershell from your current version to Powershell 4.0.
Tuesday, August 6, 2013
SQL Server Filestream Of Limited Use For Publicly Accessible Websites?
We have a new feature being developed for our publicly accessible websites that enables users to upload files into “the system”. At first glance the SQL Server Filestream feature looks perfect for this type of scenario however there are several limitations that cripple it’s usefulness in publicly accessible environments.
The SQL Server Filestream feature has two modes of operation. In the first mode all file access is performed through transact SQL. Even though the file is stored on the SQL Server’s filesystem it is access via T-SQL and is returned as a blob (varbinary(max)). This is essentially the same as storing the file in the database as a blob.
In the second mode, the application queries the filestream enabled table to get the handle of the file. It then “streams” the file using a SMB connection to the SQL Server. This is by far more efficient that accessing the file via T-SQL. It’s more efficient because SQL Server is doing what it does best, returning data sets, and Windows Server is doing what it does best, file serving.
For maximum performance we want to use the second mode however there are a few problems using the streaming feature.
- The fileshare is located on the SQL Server itself. For a webserver in the DMZ to use the streaming feature it needs SMB access to the SQL Server. This is generally a port that we’d rather not open up.
- Often the DMZ servers are not on the same domain as internal servers. This causes issues with authentication to the fileshare. There may be ways around this such as passing credentials from the application to the fileshare but even so this may be a cludgy approach.
After reviewing the filestream feature we’re still using it, however we’re using it in T-SQL mode. It looks as though the streaming mode is probably best used on internal applications where security isn’t a major factor. Typical examples that come to mind are intranets, document management systems, Customer Relationship Management systems etc.