I made a program to calculate ‘A * B mod N’, where A, B and N are 64 bit integers.
Main problem is to avoid overflow when calculate ‘A * B’.
I searched a while and finally decided to use the interleaved modular multiplication method, which is used in the feild of electric circuit design.
I found some bugs when I tested corner cases, so I have to fix them [2018.9.2].
I think I’ve fixed them [2018.9.3].
improved it! [2018.9.5]
The program is shown below:
In the standard setup of Citus, it has one coordinator, so it is the single point of failure and the bottle neck of the system.
To solve these disadvantages, I built a multi-coordinator using Streaming Replication, which is the built-in replication feature of PostgreSQL.
There is unfortunately no best practice when you should execute “VACUUM FULL”. The extension pg_freespacemap however gives you suggestion.
At the end of 2014, I was shocked at the progress of blind deblurring algorithm, so I studied the recent researches in this field.
I read many papers and made a system based on this paper: “Blind deconvolution using alternating maximum a posteriori estimation with heavy-tailed priors”.
I always use my customized statistics views shown below because the original ones provide only minimum information.
I show my tools in this post.
Many people around the world admire the Uber’s article “Why Uber Engineering Switched from Postgres to MySQL”, but I think this article contains many mistakes. So, I’m going to provide correct information regarding to PostgreSQL and MySQL.
In this post, I explain the replication of both databases.
In this week end, I tested PostgresPro’s pg_arman with ptrack. Speaking from the conclusion, it works well.