Index

載入數據後創建索引總是更快嗎?

  • June 30, 2014

我有大量記錄(約 10 億條)需要載入到 MongoDB(實際上是 TokuMX,但無論如何)。我需要在集合上創建大約 6 個不同的索引。載入數據然後創建索引總是更快嗎?當我查看 Mongo 的日誌文件時,似乎 Mongo 在實際開始創建索引之前執行了某種大型操作(可能是行數?),並且它對我創建的每個索引都執行此操作。

載入數據後創建索引總是更快嗎?

如果我等到載入數據後,在後台同時創建每個索引而不是一個一個地創建它們會更快嗎?

過去我們會以這種方式批量載入我們的數據:

  1. 刪除索引
  2. 按照建構聚集索引的順序載入數據(即,您以精確的方式導出數據)
  3. 載入完成後,創建聚集索引
  4. 接下來,創建任何其他非聚集索引
  5. 米勒時代(這是在我買不起像樣的啤酒之前)

事實證明,這種方法總是比保留索引更快。但是,這是針對 Sybase 和 SQL Server 的。我想其他系統會類似,但我不能肯定地說。

引用自:https://dba.stackexchange.com/questions/69299