Francesco Cogno's blog

Where data hit programming languages. Hard. In the shin.

End-to-end WordCloud using Rust, TypeScript, AngularJS 2, and timdream’s WordCloud

Word clouds are a very attractive way of visually representing the relative importance of words. At a glance you can guess how important a word is relative to the others in the cloud. We will build two components: A text parser that will calculate the relative weight of each word in a given text (we’ll… Read more

How to render SQL Server acyclic blocking graphs using Visual Studio Code, TypeScript, NodeJS and TreantJS – Part 2

Recap In the previous blog post (you can find it here: http://bit.ly/bcts1) we’ve seen how to setup a NodeJs REST application in Visual Studio Code. We’ve also seen how easy is to debug the application without leaving the IDE. In this second part, we will see how to wire some data to a gorgeous library:… Read more

How to render SQL Server acyclic blocking graphs using Visual Studio Code, TypeScript, NodeJS and TreantJS – Part 1

Introduction SQL Server uses blocking – among other technologies – to ensure ACID transactions. There are a lot of lock types in SQL Server, ranging from Shared and Exclusive, Page and Range or even table level. You can find more about these here: [TechNet] – Lock Modes. Whenever SQL server tries to acquire a lock… Read more

Spark and Zeppelin BI using Azure HDInsight with OpenData Lombardia datasets

Intro In the previous blog post (Azure Data Lake BI sample using Open Data Lombardia) we’ve shown how easy is to perform analytics using Microsoft Data Lake and U-SQL. An alternative to that is to use the Apache Spark engine (http://spark.apache.org/) on top of an HDInsight cluster. Spark on HDInsight is at the time of… Read more

Azure Data Lake BI sample using Open Data Lombardia

Azure Data Lake storage and Analytics compose the brand new Big Data solution provided by Microsoft. These services are fully managed (PaaS) services built on top of Hadoop, Yarn and many other Apache technologies. This diagram shows the high-level architecture: . Unique in this diagram is the U-SQL language. U-SQL is a Microsoft new language…. Read more

IoT: Send events to Azure Event Hub using Rust

IoT: Send events to Azure Event Hub using Rust Azure Event Hub Microsoft Azure offers a very appealing IoT service. It’s called Event Hubs (https://azure.microsoft.com/en-us/services/event-hubs/). Basically it gives you and endpoint in which you can send your events. The events are stored for a retention period and can be retrieved in a FIFO manner by consumers…. Read more

SQL Server 2016 and Azure SQL Database Always Encrypted feature in action

SQL Server 2016 and Azure SQL database from v12 onwards offer a new security functionality called Always encrypted (*SQL Database will support in Preview the feature within the next month). Let’s see what it does with a simple example.  Always encrypted feature promises you to protect your data from prying eyes and does that simply… Read more

Parallel DBCC CheckDB using GOlang

Parallel DBCC CheckDB in GOlang In this post I will show you how to use the concurrent features of the GO (ie GOlang) language in order to perform some maintenance tasks in parallel. This is just a showcase of features so don’t expect a enteprise-ready functionality . The problem we address in this case is… Read more

SQL Server intrusion detection using Azure Event Hub, Azure Stream Analytics and PowerBI

Intro A couple of days ago I was asked this question: As a DBA, what can Stream Analytics do for my on-premise SQL Server? The answer is easy to come by: to handle the ERRORLOG. SQL Server has its own streaming log: it’s called ERRORLOG (yes, the capitalization is intended) and gives us a cartload… Read more

HandsOn – SQL Database Row-Level Security

Few days ago we released, in preview, a new cool feature for SQL Database: row-level security. This feature opens new security patterns, particularly coupled with the upcoming data obfuscation feature. In this post I’ll show you how to get started with a viable pattern; for more details please refer to the Row-Level Security Preview page on… Read more