SAS Data Integration Studio, DataFlux Data Management Studio, SAS/ACCESS, SAS Data Loader for Hadoop and others

Data structure - horizontal vs vertical

Accepted Solution Solved
Reply
New Contributor
Posts: 4
Accepted Solution

Data structure - horizontal vs vertical

I am currently building a solution in Excel that will allow users to enter information on a template and have SAS import the template for calculations. The template will include start and end dates for a given condition. In this case, the condition refers to the department that employees work within. Since employees change departments, we want to track data based on which department they completed the work for.

Currently, I am looking at this in two different ways (see charts below). Table one has the employees enter changes by including new rows of data. Table two has the employees enter changes by including new columns of data. Does anyone have experience with which of these data structures works best for longevity and flexibility? I want the best long term solution.

Thanks for your time!

Kyle

Vertical
EmployeeDepartmentStart dateEnd date
JohnFinance1/1/20153/31/2015
JohnMarketing3/31/201512/31/2015
MaryOperations1/1/201512/31/2015
SusanSales1/1/2015

12/31/2015

Horizontal
EmployeeDepartmentStart dateEnd dateTeamStart dateEnd date
JohnFinance1/1/20153/31/2015Marketing3/31/201512/31/2015
MaryOperations1/1/201512/31/2015
SusanSales1/1/201512/31/2015

Accepted Solutions
Solution
‎07-01-2015 02:58 PM
Super User
Posts: 17,819

Re: Data structure - horizontal vs vertical

Vertical, it is a common data structure, and you can easily determine which is the latest/first via sorting by date. You can either leave the end date missing for current positions or set it to something like Dec 31 9999.

FYI This is called a Type 2 Slowly Changing Dimension (SCD)

Slowly changing dimension - Wikipedia, the free encyclopedia

View solution in original post


All Replies
Valued Guide
Posts: 858

Re: Data structure - horizontal vs vertical

I think vertical is the way to go, add a date field for when the record was added and changed and you can sort by that if necessary, horizontal can get ugly depending on how long this is in use.

Solution
‎07-01-2015 02:58 PM
Super User
Posts: 17,819

Re: Data structure - horizontal vs vertical

Vertical, it is a common data structure, and you can easily determine which is the latest/first via sorting by date. You can either leave the end date missing for current positions or set it to something like Dec 31 9999.

FYI This is called a Type 2 Slowly Changing Dimension (SCD)

Slowly changing dimension - Wikipedia, the free encyclopedia

Community Manager
Posts: 486

Re: Data structure - horizontal vs vertical

Also, LinusH wrote an article series on SCDs that may be helpful.

☑ This topic is SOLVED.

Need further help from the community? Please ask a new question.

Discussion stats
  • 3 replies
  • 579 views
  • 7 likes
  • 4 in conversation