In addition to Weibo, there is also WeChat
Please pay attention
WeChat public account
Shulou
2025-01-18 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Internet Technology >
Share
Shulou(Shulou.com)06/02 Report--
What is the storage system that most enterprises dream of? When pictures, articles and even videos need to be stored, you want to provide high-speed reading and writing without losing it; when the disk is broken, your data is still there; and when user traffic is growing exponentially, the ability to read and write remains at high speed. When the promotion comes, the user experience is still the same. All this is the driving force behind the design of JD.com 's distributed Kmuri V storage. JD.com Mall-Infrastructure Department Ding Jun shared the design and challenges of JD.com 's distributed Kmuri V storage at the SACC conference "Database Architecture Design and practice".
JD.com 's two major distributed storage products are non-persistent storage JIMDB and persistent storage FBASE. Among them, JIMDB is compatible with REDIS protocol, online flexible and scalable, and all data is stored in memory; FBASE supports multi-protocol, persistent Kmuri V storage system that supports range search. For some scenarios that require high read and write performance, performance naturally takes precedence over data reliability, and JIMDB is an appropriate choice; for scenarios with high data reliability, large amount of data, and obvious cold and hot distribution of data, FBASE is wise.
Ding Jun said that the whole design process faces many challenges, such as fault detection and recovery, online capacity expansion, high availability and upgrade. JIMDB fault detection and recovery is prone to problems such as large base, large number of faults, slow manual response and misjudgment, which may be caused by some network failures or slow response caused by busy service programs. The main solution is to deploy the fault detection program independently and distribute it on different racks; vote to veto the survival status; deploy multiple groups in a computer room, each group is responsible for part of the instances; host agent-assisted detection confirmation.
With the hot promotion of JD.com 618 and double 11 in the past two years, the business growth has far exceeded expectations, and the shortage of resources has become a norm. In this case, we need to consider the problem of online expansion. Ding Jun said that the expansion is triggered by the amount of memory occupied and the inbound and outflow traffic (CPU utilization) of a single shard, while the size of a single shard mainly considers the duration of the expansion process and the utilization of CPU and memory.
Before capacity expansion, it is best to send the topology information to be changed to the client in advance. When the client catches a specific exception, the client uses a temporary topology, and after the expansion is completed, the temporary topology is changed to a formal topology. These three steps can ensure smooth expansion. However, it should be noted that the minimum unit of data migration is slot, and the size of a single shard needs to be controlled to avoid migrating data for a long time.
For multi-replica asynchronous replication, replica deployment requires cross-physical machines, cross-server rooms, inter-city cross-server rooms, and remote data centers. As for JIMDB remote disaster recovery, you can deploy slave and memory buffer directly; after synclog module, remote data center is only a remote copy; there is replication relationship between clusters.
If you need to upgrade, Ding Jun said that the data in memory needs to be migrated. According to shard rolling upgrade, the new version of the container is created on the same host. After the migration is completed, the client catches the exception that the data has been migrated and will use the new topology.
As for the global ordered arrangement of persistent storage Fbase,KEY, support multiple replication modes, support schema, support template columns, automatically add columns when inserting, storage layer LSM-Tree (Log-Structured Merge Tree). Applicable scenarios are accessing by key, or scanning within the scope of a single partition. The disadvantage is that it cannot be scanned globally and must be read with partition key.
Table that is compatible with redis protocol, partition second index and other features. One partition corresponds to one dataserver. There is a capacity limit and needs to be planned in advance. There are two ways of caching: block caching and KEY caching. If you partition according to hash rules, you need to enable KEY-level caching.
A new round of e-commerce carnival is coming. Can JD.com 's distributed Kmurv storage system be ready? Ding Jun said that the future Kmuri V storage will be optimized mainly from three aspects: redis data structure, supporting secondary index and supporting transaction.
Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.
Views: 0
*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.
Continue with the installation of the previous hadoop.First, install zookooper1. Decompress zookoope
"Every 5-10 years, there's a rare product, a really special, very unusual product that's the most un
© 2024 shulou.com SLNews company. All rights reserved.