Sun Java System Content Delivery Server 系统管理指南
|
|
Content Delivery Server 数据库包含由 Content Delivery Server 执行的所有事务的记录。随着时间的推移,包含这些事务的表会变得很大,从而可能导致性能降低。应定期从数据库的表中删除不活动项。
本节提供了有关管理数据库中数据量的信息。可以删除不再需要的数据,也可以对要留作历史记录的选定数据进行归档。
本章包括以下主题:
3.1 表维护
监视本节中列出的 Content Delivery Server 数据库表,并根据需要删除某些项。此外,还要按照 Oracle 的建议对数据库执行标准的维护过程。
3.1.1 事务表
下表会随着 Content Delivery Server 中发生的事务数量的增加而增大。可以对这些表中的某些数据进行归档,以使其大小维持在易于管理的水平。
- SUBSCRIBER_PURCHASE(Vending 结构)- 包含订户从特定 Vending Manager 购买的所有内容。此表会相对于订户数量和他们尝试购买的订阅数目的增加而相应增大。应对此表进行维护,以确保使用该内容的订户许可证的完整性。
当订户或他们已购买的内容不再处于活动状态时,可以从该表中清除相应的数据。
- FULFILLMENT_REQUEST(Vending 结构) - 包含以 Vending Manager(与此表一起部署)名义发出的下载请求。为订户随后尝试的任何下载授权时,都需要使用此表。此表与 SUBSCRIBER_PURCHASE 表的增长速率相同。
当订户或他们已购买的内容不再处于活动状态时,可以从该表中清除相应的数据。
- CDS_EVENT(Vending 或 Catalog 结构)- 包含 Content Delivery Server 已发出的所有事件。由于有很多事件类型,因此该表会迅速增大。此表中的事件用于报告历史记录。此表存在于创建的每个 Vending Manager 数据库中。如果将 Catalog Manager 独立于所有 Vending Manager 进行部署,则此表将在 Catalog Manager 数据库中存在。
如果使用后付费服务并已处理数据,或者报告服务已启用并处于最新状态,则可以从此表中清除数据。
- CAMPAIGN_PROCESSING(Vending 结构)- 包含发送到每个订户的所有活动消息。该表将按已执行的活动数量和已收到通知的订户数量的增加成比例增大。只要活动处于活动状态且订户可以从该活动中购买内容,就需要用到这些数据。
活动到期后,可以从此表中清除数据。
- SUBSCRIBER_GIFT(Vending 结构)- 存储订户已指定的礼品。
订户被停用后,可以从此表中清除数据。
3.1.2 实体表
下表保留了数据实体,如订户和可下载内容。当实体处于非活动状态时,可以从这些表及其相关的表中删除不使用的记录。
- SUBSCRIBER(Vending 结构)- 包含已使用 Content Delivery Server 的订户的所有订户帐户。如果 Content Delivery Server 与外部订户数据库集成,则会在此表中保留该信息的子集,以便引用其他表,如 SUBSCRIBER_PURCHASE。当订户处于非活动状态时,可以从以下各表中删除相关数据:
- CDS_SUBSCRIBER - 名称、地址和其他配置文件信息
- SUBSCRIBER_PLAN_MAP - 为订户指定的订户计划
- SUBSCRIBER_PURCHASE - 订户购买的所有内容
- SUBSCRIBER_WISHLIST - 订户在愿望列表中放置的项
- SUBSCRIBER_PREFERENCE - 订户设置的显示首选项
- RESOURCE_CLASS(Catalog 结构)- 包含使用 Content Delivery Server 提交或注册的所有可下载内容。当项目处于非活动状态时,可以从以下各表中删除相关数据:
- RESOURCE_CLASS_LOCALE - 特定于语言环境的名称和描述
- RESOURCE_CONTENT_DATA - 内容的二进制代码
- RESOURCE_INSTANCE - 与设备相关的版本
- RESOURCE_SCREENSHOT - 内容的屏幕快照
- INSTANCE_CAPABILITY_MAP - 内容的功能要求
- MODEL_CLASS_INSTANCE_MAP - 内容到 Catalog Manager 中设备的映射
- CAT_PRICING_MODEL_MAP - 内容的价格模型
- CATEGORY_RESOURCE_MAP - 内容所在的类别
- CS_PRICING_OPTION_MAP - 价格选项和内容之间的映射。
- CATEGORY_ITEM (Vending 结构)- 包含 Vending Manager 的内容。如果内容在目录中不可用,则可以为每个 Vending Manager 删除该内容,并从以下各表中删除相关数据:
- CATEGORY_ITEM_MAP - 内容所在的类别
- EXTERNAL_CONTENT_MAP - 缓存内容的文件位置
- VEN_PRICING_MODEL_MAP - 内容使用的价格模型
- HANDSET_CONTENT_MAP - 内容到 Vending Manager 中设备的映射
- VS_PRICING_OPTION_MAP - 价格选项和内容之间的映射。
- INSTANCE_CAPABILITY_MAP - 内容的功能要求
- RESOURCE_CONTENT_DATA - 内容的二进制代码
3.2 归档数据
Content Delivery Server 数据库中用于存储记录(以提供系统活动的相关信息)的表可能会迅速增大。包含大量数据的表可能会对性能产生负面影响。可以使用 Oracle 导出工具 exp 备份数据,然后将数据从 Content Delivery Server 数据库中删除。有关导出工具的信息,请参见 Oracle 数据库文档。
要降低数据库大小,请定期对以下表中的数据进行归档:
- CDS_EVENT 表 - 记录 Content Delivery Server 发出的所有事件。Catalog Manager 数据库和每个 Vending Manager 数据库都包含一个 CDS_EVENT 表。CDS_EVENT 表中的数据用于 Vending Manager 生成的报告。Vending Manager 管理控制台的报告中只显示该表中保留的数据。因此,表中保留的数据量取决于您希望 Vending Manager 管理员看到多少以前的数据。
请定期从每个 Catalog Manager 和 Vending Manager 数据库的表中删除历史数据。以下代码显示了用于对指定日期之前的数据进行归档的样例命令。
# exp USERID=user-ID/password OWNER=prefix_component_owner FILE=file-name \
QUERY='WHERE cds_event_date < \'date\'' TABLES='CDS_EVENT'
# sqlplus system/system
SQL> DELETE FROM prefix_component_owner.cds_event where cds_event_date < 'date';
SQL> commit;
SQL> exit
#
|
user-ID 是具有 Oracle 数据库系统权限的用户 ID。password 是与所使用的用户 ID 相关联的密码。prefix 是创建要归档的数据库时在数据库配置文件中指定的前缀。component 是 ps(对于 Catalog Manager 数据库)或 vs(对于 Vending Manager 数据库)。file-name 是将数据归档到的文件的名称。date 是一个日期,它采用 Oracle 数据库能够识别的日期格式,将对该日期之前的数据进行归档。
- REPORT_DOWNLOAD 表 - 记录每个购买和退款事件的事件信息。REPORT_DOWNLOAD 表在每个 Vending Manager 数据库中都存在。后付费服务将填充此表。此表中的数据供外部系统(如 Crystal Reports)使用。表中保留的数据量取决于引用数据的外部系统的需要。
请定期从每个 Vending Manager 数据库的表中删除历史数据。以下代码显示了用于对指定日期之前的数据进行归档的样例命令。
# exp USERID=user-ID/password OWNER=prefix_vs_owner FILE=file-name \
QUERY='WHERE TRANSACTION_DATE < \'date\'' TABLES='REPORT_DOWNLOAD'
# sqlplus system/system
SQL> DELETE FROM prefix_es_owner.report_download
2 where transaction_date < 'date';
SQL> commit;
SQL> exit
#
|
user-ID 是具有 Oracle 数据库系统权限的用户 ID。password 是与所使用的用户 ID 相关联的密码。prefix 是创建要归档的数据库时在数据库配置文件中指定的前缀。file-name 是将数据归档到的文件的名称。date 是一个日期,它采用 Oracle 数据库能够识别的日期格式,将对该日期之前的数据进行归档。
- MESSAGE_SERVICE 表 - 记录发送到订户的多媒体消息。MESSAGE_SERVICE 表在每个 Vending Manager 数据库中都存在。消息状态将存储在此表的 EXTERNAL_MESSAGE_KEY 列中。收到来自多媒体消息服务 (Multimedia Messaging Service, MMS) 网关的响应时,状态将会更新。用于状态的值取决于使用的 MMS 网关。
请使用以下命令定期删除从每个 Vending Manager 数据库的表中成功收到的消息。
# exp USERID=user-ID/password OWNER=prefix_vs_owner FILE=file-name \
QUERY='EXTERNAL_MESSAGE_KEY = \'status\'' TABLES='MMS_MESSAGE'
# sqlplus system/system
SQL> DELETE FROM cds_vs_owner.mms_message
2 where external_message_key = 'status';
SQL> commit;
SQL> exit
#
|
user-ID 是具有 Oracle 数据库系统权限的用户 ID。password 是与所使用的用户 ID 相关联的密码。prefix 是创建要归档的数据库时在数据库配置文件中指定的前缀。file-name 是将数据归档到的文件的名称。status 是 MMS 网关用于表明已成功收到消息的值。
Sun Java System Content Delivery Server 系统管理指南
|
820-5381-10
|
|
版权所有 © 2008, Sun Microsystems, Inc. 保留所有权利