A system, comprising: a configuration designer of a heterogeneous storage service, and a deployment coordinator, wherein the configuration designer is configured to: determine a plurality of service requirements of a client of the heterogeneous storage service via a programmatic interface, wherein the plurality of service requirements comprise one or more of: (a) a performance requirement for one or more types of storage operations to be performed at a storage group, (b) an availability requirement, (c) a data durability requirement, or (d) an access interface requirement; provide, to the client, an indication of one or more candidate storage group configurations that can meet at least a subset of the plurality of requirements, wherein the one or more candidate storage group configurations include a first storage group configuration comprising a plurality of data store instances (4852A, 4852B) and a first log-based transaction manager, wherein the first log-based transaction manager is configured to accept write requests for commit when duplication is not detected, and when no read-write conflicts are detected, based at least in part on an analysis of a write record log indicating previously-committed writes, and wherein the plurality of data store instances includes a first data store instance implementing a first access interface and a second data store instance implementing a different access interface; and wherein, in response to an indication of an approval by the client of a pricing policy associated with the first storage configuration, the deployment coordinator is configured to: instantiate the plurality of data store instances and at least the first log-based transaction manager; and determine access metadata enabling the client to submit requests for a particular type of storage operation of the one or more types of storage operations. a configuration designer of a heterogeneous storage service, and a deployment coordinator, wherein the configuration designer is configured to: determine a plurality of service requirements of a client of the heterogeneous storage service via a programmatic interface, wherein the plurality of service requirements comprise one or more of: (a) a performance requirement for one or more types of storage operations to be performed at a storage group, (b) an availability requirement, (c) a data durability requirement, or (d) an access interface requirement; provide, to the client, an indication of one or more candidate storage group configurations that can meet at least a subset of the plurality of requirements, wherein the one or more candidate storage group configurations include a first storage group configuration comprising a plurality of data store instances (4852A, 4852B) and a first log-based transaction manager, wherein the first log-based transaction manager is configured to accept write requests for commit when duplication is not detected, and when no read-write conflicts are detected, based at least in part on an analysis of a write record log indicating previously-committed writes, and wherein the plurality of data store instances includes a first data store instance implementing a first access interface and a second data store instance implementing a different access interface; determine a plurality of service requirements of a client of the heterogeneous storage service via a programmatic interface, wherein the plurality of service requirements comprise one or more of: (a) a performance requirement for one or more types of storage operations to be performed at a storage group, (b) an availability requirement, (c) a data durability requirement, or (d) an access interface requirement; provide, to the client, an indication of one or more candidate storage group configurations that can meet at least a subset of the plurality of requirements, wherein the one or more candidate storage group configurations include a first storage group configuration comprising a plurality of data store instances (4852A, 4852B) and a first log-based transaction manager, wherein the first log-based transaction manager is configured to accept write requests for commit when duplication is not detected, and when no read-write conflicts are detected, based at least in part on an analysis of a write record log indicating previously-committed writes, and wherein the plurality of data store instances includes a first data store instance implementing a first access interface and a second data store instance implementing a different access interface; and wherein, in response to an indication of an approval by the client of a pricing policy associated with the first storage configuration, the deployment coordinator is configured to: instantiate the plurality of data store instances and at least the first log-based transaction manager; and determine access metadata enabling the client to submit requests for a particular type of storage operation of the one or more types of storage operations. instantiate the plurality of data store instances and at least the first log-based transaction manager; and determine access metadata enabling the client to submit requests for a particular type of storage operation of the one or more types of storage operations.