我有一个用于存储物品及其属性的数据库。属性数量是可扩展的,因此有一个连接表来存储与物品值相关联的每个属性。
CREATE TABLE `item_property` (
`property_id` int(11) NOT NULL,
`item_id` int(11) NOT NULL,
`value` double NOT NULL,
PRIMARY KEY (`property_id`,`item_id`),
KEY `item_id` (`item_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
这个数据库有两个目标:存储(首要优先级且需要非常快速,我希望在几秒钟内执行许多插入(数百次)),检索数据(使用item_id和property_id进行选择)(这是第二个优先级,它可以慢一些,但不要太慢,否则会破坏我的数据库使用)。
当前表格中已经拥有16亿条条目,并且简单的计数可能需要长达2分钟...插入速度不足以使用。
我正在使用Zend_Db来访问我的数据,并且真的很高兴您不建议我开发任何PHP端元素。