## 2 Materials and Methods
### Database Design
#### 2.2.2 Database Usage Type  
DB usage types can be largely divided into DA, OLTP, DW, general web server, and mixed-use [35; 36]. We focused on DA, OLTP, and DW, which are mainly applicable to medical environments. Note that each hospital can use multiple DB types at the same time, but this paper assumes that only one DB type per hospital is used for convenience. The DA type is for a general workstation that is not a dedicated database, and it is adopted by individuals for standalone usage. Memory- and checkpoint-related configurations should be set to a minimum because footprints can be minimized because they are for personal use. The DA type is suitable for combined server design with relatively little data and insufficient computing resources for personal use. The OLTP type is a method in which multiple users on a network process unit task, such as frequently updating or inquiring data in a single database in real-time. This type often has a DB size that is larger than random access memory (RAM) to 1 TB in DB size; hence, only part of it should be loaded in the memory and used. Therefore, it is conventionally a central processing unit (CPU)-or input/output (I/O)-bound because it is influenced by the CPU rate and I/O when processing queries. In addition, this type should have a large memory-related configuration because it is a type that occurs in several small data write queries, some long transactions, and complex reads. This type can be applied to primary and secondary hospitals in a combined server design, where there is a high possibility of using large amounts of data but small computing resources. \begin{table}
\begin{tabular}{l l} \hline \hline \multicolumn{1}{c}{**Parameters**} & \multicolumn{1}{c}{**Description**} \\ \hline Memory & \multicolumn{1}{c}{shared\_buffers} & \multicolumn{1}{c}{Amount of memory the DB server uses for shared memory buffers} \\ effective\_cache\_size & \multicolumn{1}{c}{Effective size of the disk cache available to a single query} \\ work\_mem & \multicolumn{1}{c}{Maximum amount of memory to be used by a query operation} \\ maintenance\_work\_mem & \multicolumn{1}{c}{Maximum amount of memory to be used by maintenance operations} \\ Storage & \multicolumn{1}{c}{random\_page\_cost} & \multicolumn{1}{c}{Planner’s estimate of the cost of a non-sequentially-fetched disk page} \\ effective\_io\_concurrency & \multicolumn{1}{c}{Number of concurrent disk I/O operations executed simultaneously} \\ Query and Connection & \multicolumn{1}{c}{default\_statistics\_target} & \multicolumn{1}{c}{Default statistics target for table columns without a column-specific target set} \\ max\_connections & \multicolumn{1}{c}{Maximum number of concurrent connections to the database server} \\ Write-Ahead Logging (WAL) & \multicolumn{1}{c}{Minimum size to let the WAL grow during automatic checkpoints} \\ min\_wal\_size & \multicolumn{1}{c}{Maximum size to let the WAL grow during automatic checkpoints} \\ checkpoint\_completion\_target & \multicolumn{1}{c}{Target of checkpoint completion} \\ wal\_buffers & \multicolumn{1}{c}{Shared memory amount used for WAL data yet to be written to disk} \\ Worker Processes & \multicolumn{1}{c}{Maximum number of background processes that the system can support} \\ max\_worker\_processes & \multicolumn{1}{c}{Maximum number of workers that can be started by a single Gather} \\ max\_parallel\_workers & \multicolumn{1}{c}{Maximum number of workers that can support for parallel operations} \\ max\_parallel\_maintenance\_workers & \multicolumn{1}{c}{Maximum number of parallel workers started by a single utility command} \\ \hline \hline \end{tabular}
\end{table} 
Table 1: A summarized description of each parameter of PostgreSQL. The DW type is a typical I/O-or RAM-bound owing to a large data load because it mainly has a function that supports decisions using bulk loads of data and sizeable complex reporting queries. Therefore, this type should allocate sufficient computing resources to memory, query, and connection-related parameters.