2010-10-11 11 views
10

Widziałem rad „rozgrzewkę” EC2 pokonać Pisać karnego: -Jak "rozgrzać" magazynowanie EC2/EBS?

rozgrzać partycji danych - istnieje jeden wadą przy użyciu dysku IO w EC2: występ „pierwszy zapis” hit, gdy początkowo pisze do nowych partycji. Aby uniknąć tej kary, można "rozgrzać" partycję, wykonując sortowanie polecenia wyrzucania, które uzyskuje dostęp do tej funkcji. Na przykład można użyć polecenia dd Linux , aby zapisać na dysku. Podczas gdy kara nadal występuje i nie można uniknąć , co najmniej pierwszego zapisu do twoje bazy danych nie ucierpią z powodu efektów .

Źródło: http://answers.oreilly.com/topic/1345-getting-the-most-out-of-mysql-in-the-amazon-cloud/

... ale nie znalazłem żadnej dodatkowej porady na temat najlepszych praktyk! Czy dotyczy to pamięci EBS? Czy ktoś może polecić składnię "dd", która wykona tę rozgrzewkę i jak zapewnić, że wszystkie bloki są "rozgrzane"?

+0

Czy zadałeś to pytanie na [forum AWS] (http://aws.amazon.com/forums)? Jestem pewien, że zespoły EC2/EBS prawdopodobnie byłyby w stanie ci pomóc. –

Odpowiedz

14

Dzięki za wskaźnik do forum AWS. Opublikowalem tam pytanie po zamieszczeniu tutaj i otrzymałem odpowiedź od Jason @ AWS. Nić jest tutaj: -

http://developer.amazonwebservices.com/connect/message.jspa?messageID=198413#198413

... i jego odpowiedź brzmiała: -

Jest kara studiów pierwszego odczytu dla woluminów EBS utworzonych z migawek, jak objętość jest udostępnione przed wszystkie bloki zostały pomyślnie załadowane. Można negować to kara zmuszając każdy blok na głośność należy czytać:

$ dd if=/dev/<device> of=/dev/null

+1

Dotyczy to tylko woluminów utworzonych z migawki. Podejrzewam, że wolumeny mogą być tworzone jako pliki rozrzedzone, co oznacza, że ​​będziesz chciał wymusić przydział, pisząc losowe dane (lub być może zera). – Matt

+0

dd if =/dev/zero of =/dev/ BS = 1M (dla woluminów innych niż migawki) – Matt

+0

W przypadku woluminów systemu Windows działających jako dyski rozruchowe, błędy dd od razu z "Błąd otwierania pliku wejściowego: 32 Proces nie może uzyskać dostępu do pliku, ponieważ jest używany przez inny proces "Jakiekolwiek obejścia? –

3

http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-prewarm.html wskazuje, że wielkość migawkowe mogą być podgrzane przez czytanie całego dysku; to przyspiesza czytanie. Woluminy migawkowe i inne niż migawki mogą wstępnie rozgrzewać zapis, zapisując cały dysk.

Po utworzeniu nowego woluminu EBS lub przywróceniu woluminu z migawki, bloki pamięci zaplecza są natychmiast przydzielane użytkownikowi. Jednak przy pierwszym dostępie do bloku pamięci należy go wyczyścić (dla nowych woluminów) lub utworzyć jego migawkę (dla przywróconych woluminów) przed uzyskaniem dostępu do bloku. Ta wstępna czynność wymaga czasu i może spowodować od 5 do 50 procent utraty IOPS dla woluminu przy pierwszym dostępie do każdego bloku.

+0

Ta odpowiedź została oznaczona jako niskiej jakości. Czy możesz podać kilka cytatów z tego linku w swojej odpowiedzi, aby go poprawić? –