Skip to content

Instantly share code, notes, and snippets.

View Anshuman-02905's full-sized avatar

Anshuman Mandal Anshuman-02905

View GitHub Profile
Feature Amazon DMS Azure DMS
Primary Use Database migration & CDC replication Database migration & CDC replication
Supported Targets Aurora, RDS, Redshift, S3 Azure SQL, PostgreSQL, MySQL, SQL Managed Instance
CDC / Incremental Load Yes Yes
Serverless Mode Yes (DMS Serverless) Yes (DMS Standard with Azure Migrate Integration)
Monitoring CloudWatch Azure Monitor / Azure Portal
Schema Conversion With AW
| **Feature** | **Amazon DMS** | **Azure DMS** |
|----------------------------|--------------------------------------------------|----------------------------------------------------------|
| **Primary Use** | Database migration & CDC replication | Database migration & CDC replication |
| **Supported Targets** | Aurora, RDS, Redshift, S3 | Azure SQL, PostgreSQL, MySQL, SQL Managed Instance |
| **CDC / Incremental Load** | Yes | Yes |
| **Serverless Mode** | Yes (DMS Serverless) | Yes (DMS Standard with Azure Migrate Integration) |
| **Monitoring** | CloudWatch | Azure Monitor / Azure Portal |
| **Schema Conversion** | With AW

| Feature | Amazon DMS | Azure DMS |

| -------------------------- | ------------------------------------ | -------------------------------------------------------- |

| Primary Use | Database migration & CDC replication | Database migration & CDC replication |

| Supported Targets | Aurora, RDS, Redshift, S3 | Azure SQL, PostgreSQL, MySQL, SQL MI |

| CDC / Incremental Load | Yes | Yes |

| Stage | AWS Services | Purpose |

| ------------------ | -------------------------------------- | ------------------------------------------------------ |

| Ingestion | DMS, Kinesis, AppFlow, Transfer Family | Bringing data from on-prem, SaaS, or streaming sources |

| Transformation | Glue, EMR, Kinesis Data Analytics | Cleaning, enriching, and standardizing data |

| Orchestration | Glue Workflows, Step Functions, Lambda | Scheduling, dependency handling, and automation |

Memory Area Description
User Space Memory accessible by applications, including heap, stack, and loaded libraries. Each process has its own isolated user space.
Kernel Space Protected memory used by the operating system for core routines, drivers, and managing processes. Shared among all processes but inaccessible to user applications.
Metric Description
VSZ (Virtual Memory Size) Total virtual memory requested by a process, including all mapped libraries, heap, stack, and reserved address space. Can appear very large, even if not all memory is used.
RSS (Resident Set Size) Actual memory currently residing in RAM for the process. Reflects the real memory footprint that affects system performance.
Field Purpose
lock Mutex used for protecting span and memory operations.
free mTreap of non-scavenged spans, i.e., available memory that hasn’t been returned to the OS.
scav mTreap of free and scavenged spans, i.e., memory ready to be reused or returned to the OS.
sweepgen Tracks the current sweep generation for the garbage collector.
sweepdone Indicates whether all spans in a generation have been swept.
sweepers Number of active sweepone calls running concurrently.
Term Description
Concurrent Runs alongside your goroutines without stopping the world for long periods.
Tri-color Objects are tracked as:
• White = unreachable (candidate for GC)
• Gray = discovered, still need scanning
• Black = reachable, fully scanned
Mark-and-sweep The GC first marks all live objects (reachable from roots), then sweeps memory used by unreachable objects.
Aspect mspan mheap
Scope Local to P while allocated Global, shared among all Ps
Allocation Divided into slots for small objects Provides spans to mcentral/mcache or allocates large objects directly
Sharing Moves between Ps via mcentral, never shared while in use Shared globally across all Ps
Locking Lock-free while local Locking required for global access
Type Size Allocation Path
Tiny <16 bytes mcache (fast path)
Small 16B–32KB mcache → mspan → mcentral → mheap → OS
Large >32KB mheap → OS (direct allocation)