Data Source Partitions

You use the Profiles resource to create partitioned data sources. Commerce Server 2000 supports data source partitioning to accommodate site traffic that can exceed 10 million users. Partitioning is an effective means to scale and maintain the database transaction loads associated with large populations of users. Each partition of a data source can connect to a database or a Lightweight Directory Access Protocol (LDAP) source. With a partitioned data source, the individual databases offer better performance and response times than if all of the data collected with a profile definition is stored in a single database.

Mapping to Multiple Databases

Custom Attributes

Changing Partitions

Hashing Keys

Mapping to Multiple Databases

When you use a partitioned data source to map a profile definition to multiple OLE DB databases or LDAP sources, the data storage devices (OLE DB databases or LDAP sources) must have identical schemas. For example, if you create a partitioned data source that maps a profile definition to three databases, the table definitions of all three databases must be identical. Commerce Server data sources support a maximum of 128 total partitions.

Custom Attributes

You can add custom attributes to a data source partition. Custom attributes are application specific. Typically, the attributes that are common to all profile definitions or data stores are stored in the ClassDef or SourceDef table. However, there might be specific attributes that apply only to certain selected data source objects. For example, you can create a custom attribute to maintain the sort order of data sources or partitions on a data source, or to help you maintain consistency with other objects, such as member definition and source definition objects. Data source custom attributes are available only within the Profiles resource.

Changing Partitions

After you add a partition to a data source, you can change the partition, but you cannot remove it. If you want to remove the partitioning of a data source, you must define a new data source, and then delete the old one. When you partition a data source, you must identify one partition as the default partition.

Hashing Keys

A hashing key is a unique key that is used to keep data from a single source (in this case, a profile definition) together, even though physically it is stored in multiple databases. Data sources use a hashing key to partition data across multiple databases. You use the Profiles resource (or the Profile Designer module in Commerce Server Business Desk) to select a profile property to be the hashing key for a profile definition.

If you do not define a profile property as the hashing key, all data collected with a profile definition is stored in the database assigned to the default partition. After you have defined a hashing key, you cannot redefine it. For information about defining a hashing key, see Adding Properties to Profile Definitions.

See Also

Sample Data Sources

Profile Definitions

Adding a New Data Source

Managing Data Sources


All rights reserved.