private String serializeSystemStreamPartition(SystemStreamPartition ssp) {
    // Create the Json string for SystemStreamPartition
    Map<String, String> sspMap = new HashMap<>();

    sspMap.put(SYSTEM_PROP_NAME, ssp.getSystem());
    sspMap.put(STREAM_PROP_NAME, ssp.getStream());
    sspMap.put(PARTITION_PROP_NAME, String.valueOf(ssp.getPartition().getPartitionId()));

    return new String(jsonSerde.toBytes(sspMap));
  }
Azure checkpoint manager is used to store checkpoints in a Azure Table.
All the task checkpoints are added to the a single table named "SamzaTaskCheckpoints".
The table entities take the following form:

+-----------------+---------------------+-------------------+
|                 |     Serialized      |                   |
|   TaskName      |     JSON SSP        |     Offset        |
|                 |                     |                   |
+-----------------+---------------------+-------------------+

 Each entity have a partitionKey set as the TaskName and the rowKey set as the SSP.
samza-azure/src/main/java/org/apache/samza/checkpoint/azure/AzureCheckpointManager.java