source: twt community
hospital integration platform storage selection? Is it centralized or distributed?
In the new integrated platform, our system proposes to support hot standby high-availability deployment. The configuration and message database between the active and standby machines can be synchronized in real time. When the host fails, the standby machine can be used without manual intervention. The level is automatically started, and the message continues to run in the standby machine. When the host is repaired, the message will be transferred back to the host to continue processing; in product selection, how to choose, whether to choose centralized or distributed? Ask experts for comments. The
question comes from a community member @Yilanzhu, a system architect of a Chinese medicine hospital, a system architect. The following is from the sharing of practical experience from many peers. Welcome to participate in the exchange and express your own opinions.
* The content of the "Disputes" column comes from the first-hand experience and observation shared by peers, and only represents personal views
@刘东soft Group IT technical consultant:
hospital integration platform mainly considers the storage performance, stability and reliability. Choose Centralized or distributed mainly depends on the specific business scenario.
1. Centralized storage is mainly used for systems that are sensitive to data consistency requirements, such as applications such as databases and data warehouses. Take the hospital integration platform as an example. Most of the hospital's integration platform databases are ORACLE databases, and domestic databases and distributed databases are relatively few. For ORACLE database, centralized storage is more appropriate. Moreover, most traditional centralized storage has dual-active and high-availability features. "That is, when the host fails, the standby machine can be automatically started in seconds without manual intervention, and messages continue to run in the standby machine. After the repair, the message will be transferred back to the host for further processing"; the performance, stability and reliability of the storage are also more in line with the data storage requirements of the integrated platform database service.
2. Distributed storage. This type of storage device can be flexibly expanded, and the initial investment cost is relatively low. It can support multiple data storage types such as blocks, objects, and files. For the hospital integration platform, it is most suitable for private cloud storage services. Usually the hospital integration platform is composed of database server + private cloud server. For the business of private cloud service, it is more appropriate to use distributed storage. It has both flexibility and high scalability and can provide flexible data storage services for the integration platform. .
3. If the hospital wants to unify the storage architecture and use a set of storage system, then it needs to consider the differences between different products when selecting storage. For example, centralized storage can be used for both databases and cloud services, but it is necessary to choose a centralized storage device with strong scalability and flexibility when selecting models. If you choose a distributed storage architecture, you must first consider whether distributed storage can support databases such as ORACLE, because not all distributed storage can support database services well.
@jakeyyu System Architect of Third-Class Hospital:
's current application is still mainly concentrated on centralized storage. Distributed storage has its unique advantages, but according to business needs, the current hospital application software based on the SOA service model , Centralized storage can meet its requirements for business performance and database performance. At present, for the promotion of microservices and other technologies, distributed storage also has certain support for microservices technology. If microservices and other technologies or emerging application technologies are applied on a large scale in the hospital system in the future, perhaps distributed storage is also a kind of select.
@wuliangy Engineer of Information Engineering Department of Zhejiang Cancer Hospital:
In the case of high performance (IOPS), centralized storage is not better. This type of storage is easier to increase significantly by stacking disks (SSD/NVME SSD), etc. The overall performance of the storage, both the speed and latency of 4K random read and write can be greatly improved.
The main application scenario of distributed storage in hospitals is still in the case of massive file storage and type gene sequencing of pacs, which is a large single file (3G-5G). It doesn't make much sense to talk about whether the application is centralized or distributed. Distributed architecture often requires the overall support of databases, applications, and middleware to be effective.
@zyp8365 Guangdong Provincial Hospital of Traditional Chinese Medicine Database administrator:
hospital interconnection is the focus of hospital informatization construction in recent years, The importance of the hospital’s integrated platform is at the same level as the hospital’s core business HIS. The integrated platform is a high IOPS OLTP system, which requires storage with high performance and high reliability. In fact, as long as this demand is met, it can be centralized or distributed. But from the architectural point of view, the centralized integration platform is better, because the performance of the centralized single storage is very superior, and the active-active architecture can also meet the high reliability requirements. In contrast, the distributed architecture Although there is certain performance and stability, performance is easily consumed in intermediate data forwarding, arbitration and maintaining data consistency, and problems are prone to occur when high IOPS. The advantages of the
centralized architecture are stability and reliability, and easy maintenance. The disadvantage is that when the storage is expanded to a certain capacity or scale, there will be a controller bottleneck and performance will decrease. The advantage of the distributed architecture is flexible expansion, but the disadvantage is that the stability of the data exchange network as a data exchange network is slightly worse. The performance is mainly consumed in maintaining data consistency and copy, etc. The relationship between expansion scale and actual performance requires strict testing. Whether the
integration platform adopts centralized or distributed, it mainly depends on the following: 1. The size of the hospital. 2. Follow-up development expectations. 3. Technical ability of hospital IT technicians. In view of the current state of information development and sufficient budget, I personally suggest a mixed structure, traditional centralized data types, and distributed applications. Of course, there has never been an all-you-can-eat solution, and the choice of architecture still depends on the actual situation and needs of the hospital.
@nightdxl Huawei architect: How to choose
depends on the scale of the platform itself and subsequent scalability. The biggest feature of the
centralized system architecture is that the deployment structure is very simple, because there is no need to consider how to deploy services on multiple nodes, and there is no need to consider the distributed collaboration between nodes. However, because of the single-machine deployment, all The functions of the server are integrated into the main server, which requires high performance for the server, and the performance is not good. The problems caused by the system are large and complex, difficult to maintain, single point of failure, and poor scalability. A single point of failure may also cause the paralysis of the entire system or the entire network. The advantages are also obvious, easy to maintain, and simple to operate. In the case of a small scale, the deployment is convenient, the structure is relatively simple, and the cost is relatively low. However, if the expansion demand increases in the later period, due to the characteristics of vertical stacking, it is likely to evolve into a tall chimney structure, resulting in high costs .
A distributed system is a system in which hardware or software is distributed on different network computers, and they communicate and coordinate with each other only through message passing. That is, distributed is a group of independent computer sets that provide services to the outside world, but for users of the system In other words, it is like a computer providing services. Distributed means that more ordinary computers (compared to expensive mainframes) can be used to form a distributed cluster to provide external services. The more computers there are, the more CPU, memory, storage resources, etc., and the greater the amount of concurrent access that can be processed, which can be easily expanded horizontally, and the cost advantage will also emerge. Computers are randomly distributed in a distributed space, and there is no distinction between computers. System resources are shared by all computers. Multiple computers coordinate to complete a common task. Any two computers in the system can communicate with each other and exchange information.
@潘延晟 System Engineer:
Two storage types have their own advantages. In terms of current technological development, the directionality of the two technologies is also very clear. Centralized storage is mainly used in high IO environments, such as core data, while distributed storage has advantages in the storage of massive files. The
medical system or other industries are not necessarily limited to a certain architecture at present. It should look at your application requirements. With the expansion of business and the continuous subdivision of system functions, it may be an architecture where multiple platform architectures coexist in the future. If funds are tight, it depends on which part of the current business is most important and which storage is most suitable.
@马威 Shenzhen People's Hospital:
personal opinion. Hospital systems tend to focus on business rather than technology. Although in recent years, the hospital's information construction investment and emphasis have been continuously increasing. However, as a department where the hospital's income is only expenditure, it also has a lot of unspeakable concealment (the topic shifts a bit).
read the answers of several teachers, and felt quite touching. I will talk about some of my own experience. Regarding the storage of the hospital integrated platform, individuals tend to be technical, that is, distributionformula. But this needs to be combined with the reality of the hospital and the construction of historical information in order to be better answered. For example, the informatization construction in a hospital was relatively early, and centralized storage was adopted under existing conditions, but it has been running for many years without major problems. Based on considerations such as maintaining stability, hospitals are reluctant to upgrade their existing information systems. But if it is a new platform, the hospital will more respect the manufacturer's choice. But the stability and security of the system is especially important. The construction of the hospital system is a livelihood issue, and if there is a problem, the problem level may be upgraded at any time.
Regarding centralized or distributed, in addition to the opinions of other teachers. Let me add that in the process of hospital construction, business is the center, risk assessment, and technology upgrades are graded. For example, the outpatient service is particularly important, and its risk level is higher. If something went wrong, it didn't solve it in half an hour, maybe the first scene came over. The level of hospitalization may not be so serious, and it may be no problem to solve it in an hour. Therefore, the classification of risk levels is still necessary.
Secondly, about centralized or distributed. Whether it is technically beneficial or not, everyone probably understands these, so I won't repeat them. I am also a code farmer, and these will dynamically change the strategy when writing code. When a certain functional node of the program is under too much pressure or the risk level is high, a cluster distributed strategy will be adopted to reduce risk and improve efficiency. Within the scope allowed by the hospital, you can play by yourself.
Finally, the hospital attaches great importance to the information department. For example, the quality of the purchased servers, the support of the Information Section, etc.
To sum up, on the basis of safety and stability, hospitals are still willing to try some new technologies and will not excessively restrict the development freedom of third-party developers. The copyright of
graphics and text belongs to the original author. If there is any infringement, please contact Yixinbang to delete it!