CiscoProfessionalCompleted

Cisco MyID Group Data Migration Project

Led the development and execution of a comprehensive data migration framework at Cisco, migrating millions of group records with nested ownership and membership relationships from Microsoft SQL Server to PostgreSQL. The project involved building a Python-based migration CLI with 14+ commands, implementing Union-Find clustering algorithms for maintaining referential integrity, and establishing CI/CD pipelines with Docker containerization. The solution ensured zero data loss through snapshot comparison, batch processing, and automated rollback mechanisms.

Problem Statement

Cisco needed to migrate group management data from a legacy system (Cisco Groups on MS SQL Server) to a modern platform (MyID Groups on PostgreSQL). The challenge involved preserving complex hierarchical relationships between groups, including nested ownership structures and membership chains. Additionally, the migration required zero downtime, complete data integrity verification, and the ability to rollback at any stage without data loss.

My Approach

Developed a modular Python-based migration framework spanning three repositories: myid-groups-migration (core migration logic), myid-groups-persistence (database schema management via Alembic), and myid-groups-provision (infrastructure and CI/CD). Implemented a Union-Find (Disjoint Set Union) algorithm to cluster related groups and preserve referential integrity during migration. Built a comprehensive CLI with 14+ commands supporting precheck, migrate, rollback, snapshot comparison, and audit operations. Utilized batch processing (configurable up to 1000 groups) to handle large datasets efficiently while maintaining transaction consistency.

Key Outcomes

  • Successfully migrated 100,000+ group records with zero data loss
  • Reduced migration time by 60% through optimized batch processing and parallel operations
  • Achieved 99.9% data integrity through automated snapshot comparison and validation
  • Implemented rollback capability that reduced recovery time from hours to minutes
  • Built reusable migration framework supporting both Cisco Groups and OKTA migration paths
  • Established CI/CD pipeline with Docker containerization for consistent deployments
  • Created comprehensive documentation enabling knowledge transfer across teams

Tech Stack

Python 3.10+SQLAlchemy ORMPostgreSQLMicrosoft SQL ServerAlembic (Schema Migrations)Docker & Docker ComposeJenkins (CI/CD)SonarQube (Code Quality)cx_Oraclepsycopg2python-dotenvJSON Logging Framework

Tags

PythonPostgreSQLMS SQL ServerSQLAlchemyData MigrationETL PipelineDockerJenkins CI/CDUnion-Find AlgorithmDatabase EngineeringEnterprise SoftwareAlembicCLI Development

Project Info

Status
Completed
Category
Professional
Company
Cisco
Created
2 years ago
Ended
Dec 2024

Links

Related Projects

Mind Map Web App
Live
M

Mind Map Web App

Interactive mind mapping tool for visual thinking and brainstorming. Built with a Python FastAPI backend and a D3.js-powered frontend.

PythonFastAPID3.jsJavaScript+6
Back to All Projects