American Tower Corporation (ATC) is a cellular and broadcast tower owner and operator with over 30,000 towers worldwide. They faced challenges with outdated reporting from single purpose data marts and lengthy data extracts. To improve, ATC started an enterprise data warehouse program in 2008 using Kimball methodology, SQL Server 2005, and Cognos 8. They initially used SSIS for ETL but it had performance and functionality issues. A proof of concept showed expressor was 8-24x faster for Oracle extracts and had better scripting and functionality. ATC transitioned to using expressor for ETL which improved performance, added semantic rationalization, and enabled bulk updates and growth. Lessons included that "free" tools like SSIS have
Human Factors of XR: Using Human Factors to Design XR Systems
Lessons from American Tower on Building a Flexible and Affordable Data Warehouse
1. Lessons learned from American Tower Building a flexible and affordable enterprise data warehouse with the expressor semantic data integration system
2. Who is ATC? Cellular and broadcast tower ownership and operation Over 30,000 towers Leader in tower industry worldwide Operations in US, Mexico, Brazil, India $1.6B revenue (worldwide), 1200 employees (US) 2
3. Business Challenges International operations 4 markets at present, plus future expansions Business model Real estate Outdated reporting environment Single purpose data marts Lengthy, redundant data extracts No clear definition of contents Poor reporting 3
4. Enterprise Data Warehouse Program Started October 2008 Improve user experience for reporting Integrated data Improved reporting tool Faster data refreshes Three-part solution Data Warehouse: Kimball methodology, SQL Server 2005 BI reporting tool: Cognos 8 Governance process: Business-led management of DW 4
5. Selecting the right tools Reporting tool (Cognos 8) Lengthy vendor selection process, close business involvement Database for DW (SQL Server 2005) Technical evaluation (data volumes and future capacity reqs) Experience of existing personnel ETL tool (initially SSIS) Experience of existing personnel Budget (used existing SQL Server licenses) Technical evaluation (could live with shortcomings) 5
6. ETL Structure - High Level Three-step process Separate jobs for each process 6 Source System EDW Extract Transform Load Raw data pulls Prepare data Load Facts & Dimensions (SCD)
7. ETL Structure - Detail Three-layer process for each step 7 Scheduler Control Flow, timing Extract Metadata Wrapper Data quality, logging, etc. ETL Execution Actual data transfer / processing
8. SSIS Issues Functionality Bulk updates Awkward scripting (two languages, not well integrated) Performance Oracle extracts not performing optimally 8
9. Opportunity for expressor Became aware of expressor mid-2009 Proof of concept to establish benefits Performance: 8-24x faster for Oracle extracts (1-4 channels) Scripting: expressordatascript very powerful Functionality: bulk updates, general capabilities Acquisition made much easier by low cost of adoption 9
10. ETL Structure - expressor Three-step process 10 Scripting ETL functionality Extract Transform Load Raw data pulls Prepare data Load Facts & Dimensions (SCD) Improved performance Semantic rationalization Bulk updates expressor benefits
11. ETL Structure Three-layer process for each step 11 Scheduler Control Flow, timing Extract Metadata Wrapper Data quality, logging, etc. Change execution method via metadata ETL Execution Actual data transfer / processing Replace with expressor
12. expressor Downstream Benefits Semantic dictionary Clarify confusing business terms Multiple formats for Tower Number Differing business terms for same concept (milestone / date) Direct input from BAs into data modeling / ETL Growth potential Add channels as needed Development / Maintenance Simpler ETL Fewer stored procedures or “inventive” solutions 12
13. expressor Challenges expressor datascript is different from MS / .Net world Very powerful scripting language Single library All semantic terms share a namespace Process / Flow control Involving BAs in semantic rationalization Requires process change outside development team 13
14. Lessons Learned SSIS is “free”, but you get what you pay for Functionality limitations; we didn’t know what we were missing Performance Transition requires effort Small learning curve for expressor datascript Semantic Rationalization process impacts Work with all affected groups ETL Architecture preparation pays off Plan for scalable hardware and flexible software 14