56599
案件対応をしながらインフラを勉強中のものです。

要件として、「DBはPostgreSQL、インメモリで構築」というものがあります。  
インメモリについては調べて、データをディスクの代わりにメモリ上に配置することで、DBアクセスを高速化する仕組みと理解しました。

ですが、その実装方法についてイメージが湧きません。

専用のキャッシュサーバーを立てて何らかのソフトを導入するものなのか、部品があってそれをDBサーバー自体に増設するようなイメージなのか。

わかりやすく教えていただけると助かります。  
また、PostgreSQL環境で多い実装方法などがありましたら教えて下さい。

よろしくお願い致します。
CC BY-SA 4.0
2019-07-09T07:48:32.593
56514
2019-07-12T14:04:00.940
2019-07-12T09:34:47.620
35036
35036
question
windows postgresql
インメモリの一般的な導入方法について
Postgresql はディスク上に構築しないといけませんので、インメモリでは構築できないですね。

一応ググってみましたが、インメモリでPostgresqlを動かす製品を富士通が販売してるようですので 検討してみると良いかもですね。  
<https://www.fujitsu.com/jp/products/software/middleware/database/enterprisepostgres/>

ただ、頼んだ方も詳しいわけではないのでしたら、これを望んでいるというのも考えにくいで、NOSQLのインメモリデーターベースとしてRedisを提案してみたら良いんじゃないですかね。

ただNOSQLなので、RDBMSが必要なら PostgreSQLとRedisを組み合わせれば良いと思います。  
これらの ユースケースはまずググってみて、わからないことがあったらまた質問をしてみると良いと思います。
CC BY-SA 4.0
2019-07-12T11:52:26.263
56598
2019-07-12T11:52:26.263
5008
56514
answer
インメモリDBというのは、通常はディスク上に作られる領域をメモリ上に保存するDBのことです。必然的に、製品自体が「メモリ上にDBを構築する」機能を持っている必要があります。PostgreSQLには現時点でその機能はありません。

OS側でRAMディスクを使り、その上にDB領域を作るということも考えられなくはありません。データの永続化などは一切できないなど、まともな環境とは言いがたいですが、一応インメモリといえないこともないかな、とは思いますが、

> 「DBはPostgreSQL、インメモリで構築」

という要件がそれを満たすかは謎です。

一般的な要件ではありませんので、その要件を出した人に、想定している構成を提示してもらってください。
CC BY-SA 4.0
2019-07-12T14:04:00.940
56599
2019-07-12T14:04:00.940
5793
56514
answer