2015-04-20 101 views
0

我嘗試在cloudera hadoop集羣上執行性能測試。但是,就Impala使用緩存來存儲以前的查詢而言,我怎樣才能清空緩存?Cloudera Impala性能測試 - 清空緩存

Impala是否使用緩存? Impala不會緩存數據,但會緩存某些表和文件元數據。儘管後續迭代中的查詢可能運行得更快,因爲數據集已緩存在OS緩衝區緩存中,但Impala未明確控制此操作。

引自:http://www.cloudera.com/content/cloudera/en/documentation/cloudera-impala/latest/topics/impala_faq.html#faq_performance_unique_1__faq_caching_unique_1

回答

0

文件元數據緩存是從 「查詢緩存」 的不同。它只是在HDFS中緩存文件和塊的位置,這是大多數數據庫已知的事情,但Impala可能不會,因爲它從Hive獲取表/文件元數據。文件元數據在您的測試中應可用於Impala。

帕拉從不緩存查詢,但文件數據可以以兩種方式之一進行緩存:

  1. 您啓用HDFS caching。我假定你沒有這樣做。
  2. HDFS讀取的某些數據可能位於OS緩衝區緩存中。 Impala無法控制這一點。一些googling提出了關於清除Linux緩衝區緩存的指導,例如this unix.stackexchange.com answer