7
我們的項目將MySQL數據庫的INNODB表內的世界數據庫保存在樹狀結構中。 地球是根,那麼國家,那麼國家地區和地點是葉子。如何在MySQL表中使用外鍵和空間索引?
外鍵用於提供對兒童(例如,某個地區的城市)的快速訪問。
現在我們要在給定座標的數據庫中實現快速地理搜索。 一個明顯的解決方案是使用SPATIAL INDEX,這是MyISAM表的一個特性。 但MyISAM表不支持外鍵。而INNODB表格不支持SPATIAL INDEX。
所以,如果我們使用MyISAM表,我們必須放棄外鍵,這會讓孩子搜索的方式太長。
我們如何將快速兒童搜索結合到樹中,並且在表中還有SPATIAL INDEX?
請注意,外鍵的目的不是加速查詢,而是強制執行表之間的關係。加速查找的是與外鍵一起創建的索引。 – Benjamin 2012-10-25 01:27:59