PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Intel SSD, вече извън списъка на sh..err, sramed list

Вече направих дългия запис на конференцията тук, така че само бърза актуализация:  са публикувани слайдове от PGEast и следващата седмица ще бъда на все по-грешно наричаната конференция MySQL в Санта Клара, Калифорния.

Едно нещо, което ми е известно за момента, е да се разправям за евтините твърди дискове и как те са гадни за използване на база данни. Уики страницата Reliable Writes събира по-голямата част от фона тук. Ситуацията през последните няколко години е, че всяко евтино устройство на пазара няма безопасен кеш за запис за използване на база данни. Всеки мой клиент, който е закупил един от SSD дисковете на Intel, например X25-M или X25-E, който не е корпоративен, е претърпял поне една огромна загуба на данни.

За да направите флаш устройството безопасно, трябва да имате резервна батерия на устройството, поради същите причини, поради които са необходими на високопроизводителни RAID контролери. Когато базата данни записва данни и използва системното извикване fsync, за да се увери, че е прехвърлена на диска, не можете физически да запишете тези данни достатъчно бързо, за да направите хората щастливи, нито на въртящ се диск, нито на флаш. Ситуацията е малко по-лоша дори при флаш, защото записването на малки записвания на данни без кеш всъщност също ще износва устройството по-бързо. Добавете батерия, накарайте контролера на устройството да изчисти всички чакащи данни, когато захранването падне, и можете да направите SSD достатъчно надежден за бази данни.

Наистина скъпите корпоративни дискове постигнаха това право от известно време, но хардуерът, подходящ за домашна употреба или малък бизнес, беше оскъден. OCZ пуснаха своето устройство Vertex 2 Pro със супер-кондензатор и правилно промиване на запис миналата година. Кондензаторът е „Професионалната“ част и не бъркайте това с обикновения Vertex 2.  Те работят около $650 за 100 GB SSD и са наистина бързи. Но не можете да имате само едно бързо устройство:  те се провалят, както всеки друг компонент в компютъра ви. А 1300 долара за чифт устройства ги оставиха все още извън обхвата на малките магазини и дори едно-единствено надхвърли личния ми бюджет за бърникане на хардуер за дома.

Е, сега има друг избор. Intel най-накрая изчисти своята работа тук. Новите устройства от серия 320 интегрират набор от малки кондензатори и правилна логика за изключване в устройството. Те дори го превърнаха в част от маркетинга сега, когато го правят както трябва, включително изискан брифинг за това как работи. Между другото, ето къде е тази тема:  ако производителят пише кеширане правилно, те ще се похвалят с това. Ако не чуете самохвалство, това означава, че са го прецакали и устройството ще изяде вашата база данни.

Налична е цяла продуктова линия от тези нови устройства на Intel, като се започне от 40GB модел под $100, всички със същата надеждност при запис. По-големите дискове обаче са по-бързи и аз исках нещо по-бързо във всяко отношение от обикновения твърд диск, който заменяше. Този момент не идва до модела от $220 120GB, който има скорост на последователно запис, по-бърза от терабайтните устройства, които използвам през повечето време. Едно от 120GB Intel 320 устройства пристигна в моите развълнувани ръце по-рано тази седмица.

Можете да намерите пълните числа от първоначалния ми преглед на pgsql-performance. Основните параметри на производителността са според очакванията:  253 MB/s четене, 147 MB/s запис и съответните 5000 записвания в секунда, всички съвпадащи спецификации и очаквания. Единственото нещо, за което мога да се оплаквам, са произволните резултати за четене/запис. Въпреки твърденията за много по-високи числа, получавам само около 3500 IOPS, което означава 27MB/s при смесено работно натоварване. Това е приемливо, удрящо всеки обикновен диск, но е на ниска страна при SSD. Не мога да се оплача предвид цената – ако искам по-бързо, винаги мога да похарча 3 пъти повече за OCZ Vertex 2 Pro – но това е нещо, което трябва да знаете. Има куп безсрамни ревюта на Intel, които разбират това погрешно; единственият преглед, който съм виждал досега, който хвана същия проблем и го постави в правилна перспектива, е този от Ананд. Показва серия 300GB 320 устройство (което е дори по-бързо от едно, което имам), осигуряващо скорости от средната до долната част на пакета при произволна работа, което е мястото, където реално се намира. Това не е неприемливо, просто е важно да разберете набора от компромиси, които тези устройства предоставят.

Ако вашите данни се побират в 120GB, това устройство е много убедителна алтернатива на традиционната високопроизводителна настройка на база данни. Получаването на RAID контролер с кеш за запис с батерии и чифт дискове обикновено добавя около $600 и от резултата получавате само справедлива произволна I/O производителност. Купете чифт от тези устройства за около $450, използвайте софтуерен RAID за резервиране и ще бъдете много по-напред през повечето време. Просто се уверете, че следвате добрите практики за SMART мониторинг за тези устройства. Те не траят вечно, като ограничението за запис е известна точка на отказ, дори ако нищо не се счупи преди това. Тук също има много консумативи с по-старите технологии, включително резервни устройства, резервни батерии и понякога се налага да имате допълнителни контролери като резервни части за критични системи. Трябва да има спестяване на разходи със SSD сега, стига вашите данни да се поберат в наличния размер. И производителността ще бъде голяма стъпка нагоре, ако удряте диск в момента. Най-добрият начин за повишаване на производителността е да добавите повече RAM, но тъй като в крайна сметка тези данни трябва да отидат до и от диск, което може да не винаги е достатъчно добро.

Intel, тук получавате официалната ми подкрепа:  най-накрая сте направили правилното нещо и ще се радвам да ви препоръчам като доставчик сега, когато го направите. Все още се опитвам да разбера какво ще правя с моя сега по-бърз от всякога сървър у дома и това е добър проблем.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Управление на висока наличност в PostgreSQL – Част III:Patroni

  2. Как да включите изключените редове в ВРЪЩАНЕ от INSERT ... ПРИ КОНФЛИКТ

  3. Получаване на [archiver] неподдържана версия (1.13) в заглавката на файла при стартиране на pg_restore

  4. PHP масив към postgres масив

  5. Променете колоните на PostgreSQL, използвани в изгледите