Tallan Blog

Tallan’s Experts Share Their Knowledge on Technology, Trends and Solutions to Business Challenges

Category Archive for "Data & Analytics"

Parsing Delimited Strings in a SQL Database

I often receive requests from colleagues needing to solve particularly thorny problems from within a SQL database. This article is intended for those who might find themselves needing to parse a delimited string inside a SQL database, those who find themselves in a position to provide solutions to this particular issue and those liking SQL challenges.
Recently a colleague posed a problem where the value in one column was a list of user property metadata. Each user property was a list of the information required to extract values from a second column in the same table, a list within a list with a common delimiter throughout. A key-value pairs table is a suitable design for this application; the designer chose a different path. The data and the metadata about that data were denormalized into separate columns. Our goal is to determine a solution…

How Automated Reporting Saved 96 Days Per Year for a Non-Emergency Medical Transport Broker

One of the most common goals in business is improving efficiency while maintaining high-quality work. As a consulting company, Tallan has worked with hundreds of clients on thousands of projects all across the US, so we are no stranger to the common expectation that our services will increase the quality of technology, and improve operations. 
Recently, we engaged with a local non-emergency medical transportation (NEMT) broker on a Data & Analytics project. NEMT brokers serve as a liaison between health plan providers, patients, and transportation vendors. Their mission is to coordinate transportation services for disadvantaged patients who are unable to make it to health care appointments. Providing this service both improves wellness and reduces costs for insurers.
NEMT Brokers are responsible for, among other things, tracking interactions and reporting data to the insurers with whom they hold contracts. These contracted relationships now…

Power BI Embedded: Take your Power BI Content to the Next Level

Power BI is a self-service business analytics solution that continues to progress the data and analytics space. Allowing different user types the ability to create and collaborate on reports through visualizations, Power BI offers a quality enterprise reporting solution for your organization.
Power BI Embedded allows you to add Power BI visualizations and reports to custom applications and websites. In doing so, customers can access the data they need through fully interactive reports. With the Power BI Embedded API, embedding analytics is a breeze and can be done within an existing application. Once your application contains embedded visualizations, the API also includes endpoints allowing communication between Power BI content, and the data within your custom application. This opens an exciting approach to business intelligence in the form of actionable insights. Imagine being able to view reports and act on them all…

Tallan’s Power BI User Group Taking Leadership Strides

Inspiring global thought leaders at Tallan’s headquarters, the Hartford Power BI User Group’s very own Michael Thomas took the #2 spot in his global debut! Data & Analytics is an area that maintains its voice in the industry, as well as in our relationship with Microsoft and a part of that relationship involved the work Tallan has done historically with Power BI; a Microsoft visual analytics platform and tool. To spread the word on Power BI, as well as encourage the community of users and those interested, Tallan has been hosting Hartford, CT’s local Power BI User Group.
People are welcome to attend for the refreshments and stimulating conversation, however the focus of these monthly meetings is to showcase the features and capabilities of the tool and collaborate with like, and different minded people on how to utilize Power BI.
Tallan has…

Analyzing the XML of SSIS Packages

What is SSIS?

SSIS, or SQL Server Integration Services, is a tool for data migration most commonly utilized to create and maintain a data warehouse.
Migrating data is generally done with a process known as an ETL (Extract, transform, and load). This involves ingesting data from one or more source(s), converting it to the desired format and finally sending it to a destination that is often a data warehouse.
An SSIS project is broken down into smaller units of work called packages that are executed individually. Packages are typically organized and grouped according to their destination, such as the table they are loading data into, rather than their sources. This is because a package may create all of the necessary output for a single table in a data warehouse while coming from multiple sources.
Different parts of an SSIS package include:

Connection(s): sources and destinations…

Exploring Advanced Persistent Threats

What Are Advanced Persistent Threats?
Advanced Persistent Threats (also known as APTs) are prolonged targeted cyberattacks. Such attacks are carried out by a well-funded (typically state-sponsored) group of highly skilled hackers who have high aspirations. Typically, APTs involve the creation of custom attacks that specifically target the victim’s network/machine. APTs primarily target government agencies, defense contractors, manufacturers of products, vendors, and partners of a primary target, and companies with intellectual property. The Stuxnet worm is a good example of such an attack. It is believed to have been created by the NSA, CIA, and Israeli intelligence. It was discovered in 2010 and was responsible for destroying several centrifuges at Iran’s Natanz uranium enrichment facility. The worm would search infected computers for signs of Siemens Step 7 software (used on industrial computers serving as PLCs), if found, it would update its code…

Horizontal Partitioning in Azure Cosmos DB

In Azure Cosmos DB, partitioning is what allows you to massively scale your database, not just in terms of storage but also throughput. You simply create a container in your database, and let Cosmos DB partition the data you store in that container, to manage its growth.
This means that you just work with the one container as a single logical resource where you store data. And you can just let the container grow and grow, without worrying about scale, because Cosmos DB creates as many partitions as needed behind the scenes to accommodate your data.
Automated Scale-Out
These partitions themselves are the physical storage for the data in your container. Think of partitions as individual buckets of data that, collectively, is the container. But you don’t need to think about it too much, because the whole idea is that it all just…

Tallan Blog Featured Image

Demystifying the Multi-Model Capabilities in Azure Cosmos DB

Azure Cosmos DB is Microsoft’s globally distributed, massively scalable, horizontally partitioned, low latency, fully indexed, multi-model NoSQL database.
If you start to elaborate on each of the bullet points in this soundbite opening, there’s a lot to discuss before you get to “multi-model NoSQL” at the tail end. Starting with “globally distributed,” Cosmos DB is – first and foremost – a database designed for modern web and mobile applications, which are (typically) global applications in nature. Simply by clicking the mouse on a map in the portal, your Cosmos DB database is instantly replicated anywhere and everywhere Microsoft hosts a data center (there are nearly 50 of them worldwide, to date). This delivers high availability and low latency to users wherever they’re located.
Cosmos DB also delivers virtually unlimited scale, both in terms of storage – via server-side horizontal partitioning, and throughput…

Understanding Consistency Levels in Azure Cosmos DB

Developers with a background in relational databases are accustomed to achieving data integrity using transactions. Once a writer updates a bank balance and commits the transaction, it’s entirely unacceptable for a reader to ever be served the previous value, and a relational database ensures that this never happens. In the NoSQL world, this is referred to as strong consistency. Achieving strong consistency in a NoSQL database is more challenging because NoSQL databases by design write to multiple replicas. And in the case of Azure Cosmos DB, these replicas can be geographically spread across multiple Microsoft data centers throughout the world.
First, let’s understand consistency within the context of a single data center.
In one Azure data center, your data is written out to multiple replicas (four at least). Consistency is all about whether or not you can be sure that the data…

Tallan Blog Featured Image

Exploring Buffer Overflows in C, Part Two: The Exploit

Welcome to part two of Exploring Buffer Overflows in C! If you have not taken the time to read the previous article I highly recommend doing so before going any further. In this post, I will be walking you through a simplified version of a buffer overflow exploit and will draw heavily on the vocabulary and theory discussed out in the last post. You can find Part One on Tallan’s Blog here. It also would be helpful to be familiar with hexadecimal numbers, which you can read about here. With that out of the way, let’s get to hacking.
Before We Begin
Before we can start we have to pick a target. Several methods exist to detect potential buffer overflows, ranging from manually reading the code to automated testing. Assuming you do have the source code of a program, searching for insecure…