Home » Posts tagged "ram"

MySQL 8.0 的 innodb_dedicated_server

Percona 介紹了 MySQL 8.0 將會推出的 innodb_dedicated_server 參數:「New MySQL 8.0 innodb_dedicated_server Variable Optimizes InnoDB from the Get-Go」,Oracle 官方的文件在「15.6.13 Enabling Automatic Configuration for a Dedicated MySQL Server」這邊可以翻到。

這是針對整台機器完全給 MySQL 用的情況所設計的參數。在這種情況下,可以透過 RAM 的大小以及一些簡單的公式,得到還算堪用的系統參數...

依照說明,可以看到系統會依照記憶體的大小自動計算出 innodb_buffer_pool_sizeinnodb_log_file_size 這兩個參數,並且把 innodb_flush_method 設為 O_DIRECT_NO_FSYNC (如果所在平台有支援這個值)。

不過看了一下公式,依照經驗可以設的更積極一點... 像是 Percona 文章裡提到的,當記憶體夠大時,其實可以考慮從 80% 開始調整大小 (innodb_buffer_pool_size):

For InnoDB buffer pool size (based on this article), consider allocating 80% of physical RAM for starters. You can increase it to as large as needed and possible, as long as the system doesn’t swap on the production workload.

innodb_log_file_size 則應該要分析寫入的 pattern 而不是直接看 RAM 大小。有些機器雖然很大台但幾乎沒有寫入的量,照著公式的值就偏大很多:

For InnoDB log file size, it should be able to handle one hour of writes to allow InnoDB to optimize writing the redo log to disk. You can calculate an estimate by following the steps here, which samples one minute worth of writes to the redo log. You could also get a better estimate from hourly log file usage with Percona Monitoring and Management (PMM) graphs.

不過基本上 tune 出來的值還算堪用,對於剛入手的人頗有幫助。

DigitalOcean 默默的推出了 3GB RAM 的方案

是在 Twitter 上看到這則 tweet 才發現 DigitalOcean 多了 3GB 的方案:

如果去翻資料,可以看到官網是在 2017/11/082017/11/15 中間增加的...

看規格可以看出來記憶體很多,但 CPU 與 SSD disk 空間都不是很多,有種 Amazon EC2 裡 R 系列機器的感覺,但卻沒放到 High Memory 的列表內 (DigitalOcean 已經有推出 High CPU 與 High Memory 的機種了),應該是入門款的想法?

不過價錢還是比同業貴不少... (相比於 LinodeVultr)

Amazon EC2 推出 4TB 的機器

之前 Amazon EC2 記憶體最大的機器是 x1.32xlarge 的 2TB RAM (更精確是 1952GB),現在推出了 4TB RAM 的 x1e.32xlarge (3904GB):「Now Available – EC2 Instances with 4 TB of Memory」。

現在這個時間點在 us-east-1 的價錢是 USD$26.688/hour (一個月 USD$19215.36),用的到的人應該付得起?

另外值得注意的是,x1e.32xlarge 雖然比 x1.32xlarge 多了一倍的記憶體,但 vCPU 不變 (都是 128),而且 ECU 下降了 (從 349 降到 340)。

這個機器目前在 us-east-1us-west-2eu-west-1ap-northeast-1 四區提供服務:

The x1e.32xlarge instances can be launched in On-Demand and Reserved Instance form via the AWS Management Console, AWS Command Line Interface (CLI), AWS SDKs, and AWS Marketplace in the US East (Northern Virginia), US West (Oregon), EU (Ireland), and Asia Pacific (Tokyo) Regions.

Amazon EC2 要推出 x1e.32xlarge,4TB RAM 的機器

剛剛 Amazon EC2 公佈的消息,要再推出記憶體大怪物機器 x1e.32xlarge:「EC2 In-Memory Processing Update: Instances with 4 to 16 TB of Memory + Scale-Out SAP HANA to 34 TB」。

Later this year we plan to make the x1e.32xlarge instances available in several AWS regions, in both On-Demand and Reserved Instance form. These instances will offer 4 TB of DDR4 memory (twice as much as the x1.32xlarge), 128 vCPUs (four 2.3 GHz Intel® Xeon® E7 8880 v3 processors), high memory bandwidth, and large L3 caches.

雖然都是拿 SAP 來舉例,但這也是當系統碰到瓶頸時搶時間的方法 (也就是當 happy problem 發生時的 workaround)。

不知道這種機器實際買起來多少錢 XDDD

PostgreSQL 上,直接將 SSD 的內容送到 GPU 上,加速讀取速度

PostgreSQL 上針對讀取檔案到 GPU 上的成果:「GpuScan + SSD-to-GPU Direct DMA」(日文版)、「(EN) GpuScan + SSD-to-GPU Direct DMA」(英文版)。

主要的原因在於雖然已經有 PGStorm 讓 PostgreSQL 把運算丟到 GPU 上加速,但從 disk 讀到 GPU 這段還是有改善的空間:

PG-Strom that is an extension of PostgreSQL to off-load multiple SQL workloads on GPU devices, transparently. It has been developed for four years, and now supports simple scan, tables join, aggregation and projection.
Its prime focus is CPU intensive workloads, on the other hands, it didn't touch storage subsystem of PostgreSQL because the earlier version of PG-Strom assumes all the data set shall be pre-loaded onto physical memory. No need to say, we had a problem when we want to process a data-set larger than physical RAM.

這是成果,可以看到速度快了一倍以上:

這對資料量超過 RAM 大小時的處理會非常有幫助 (因為會有大量的 disk i/o 發生)。

Linode 再升級:每個月多 USD$0.05,記憶體加倍...

Linode 最後的大絕招放出來了,將 RAM 加倍:「Linode NextGen: RAM Upgrade」。

這次不是直接升級,而是用「我們想要把收費的金額變為整數」當理由避免直接升級 (最小台的 USD$19.95/month 變成 USD$20/month)。流量與價錢保持比例最大台的機器就變成 Linode 8G,提供 192GB disk 以及 16TB/month 的流量,比起 4GB 又可以多做不少事情...

升級過程會更換主機,而非原地升級,實際轉移時需要把 disk image 從現在跑的機器複製到另外一台,還蠻花時間的... (最小台就用了我 12 分鐘)

不在意 USD$0.05/month 的人可以登入後台去看看,照內文所說明的,目前除了加州機房以外都已經 ready 了 :p

AWS 歷史上第一台 RAM 比儲存空間多的 instance...

看到 AWS 推出新的 EC2 instance:「EC2 for In-Memory Computing - The High Memory Cluster Eight Extra Large Instance」,看完這個 instance 的規格笑了出來 XDDD

120GB SSD 兩顆 (所以是 240GB),加上 244GB RAM,結果記憶體比 SSD 空間大,應用程式一定得分層利用... XDDD

Colin Percival 開了台 FreeBSD 9.1 起來測試,可以順便看到一些硬體資訊。

目前還沒有 Reserved Instances 可以買,所以依照目前的價錢 USD$3.50/hour,一年大約是 90 萬新台幣,而這金額差不多可以直接買一台了... 所以這個 instance 的定位是在非長期的大量運算?不過依照 AWS 的慣例,過陣子應該還是會出 Reserved Instances 讓需要的人買...

不過這也是目前記憶體最多的機器,如果下次看到有文章寫「因為資料超過 244GB,所以資料庫效能炸掉」的訊息,就知道發生什麼事情了 XDDD

Archives