![GFS分布式文件系統(tǒng)_第1頁](http://file4.renrendoc.com/view/585f4f21e0cf2de48ab43ece563e9370/585f4f21e0cf2de48ab43ece563e93701.gif)
![GFS分布式文件系統(tǒng)_第2頁](http://file4.renrendoc.com/view/585f4f21e0cf2de48ab43ece563e9370/585f4f21e0cf2de48ab43ece563e93702.gif)
![GFS分布式文件系統(tǒng)_第3頁](http://file4.renrendoc.com/view/585f4f21e0cf2de48ab43ece563e9370/585f4f21e0cf2de48ab43ece563e93703.gif)
![GFS分布式文件系統(tǒng)_第4頁](http://file4.renrendoc.com/view/585f4f21e0cf2de48ab43ece563e9370/585f4f21e0cf2de48ab43ece563e93704.gif)
![GFS分布式文件系統(tǒng)_第5頁](http://file4.renrendoc.com/view/585f4f21e0cf2de48ab43ece563e9370/585f4f21e0cf2de48ab43ece563e93705.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
一、GlusterFS概述;二、GlusterFS存儲(chǔ)架構(gòu);三、GlusterFS工作原理;四、GlusterFS卷的類型;五、案例:搭建Gluster分布式文件系統(tǒng);
一、GlusterFS概述;概述:GlusterFS(Google
FileSystem)是一個(gè)開源的分布式文件系統(tǒng),Gluster借助TCP/IP網(wǎng)絡(luò)將存儲(chǔ)資源分散存儲(chǔ)在網(wǎng)絡(luò)的不同節(jié)點(diǎn),在通過匯聚為客戶端提供統(tǒng)一的資源訪問,在存儲(chǔ)方面具有很強(qiáng)大的橫向擴(kuò)展能力,通過擴(kuò)展不同的節(jié)點(diǎn)可以支持PB級(jí)別的存儲(chǔ)容量;Bit、Byte、KB、MB、GB、TB、PB、EB、ZB、YB、DB、NB
特點(diǎn):擴(kuò)展性與高性能:通過Scale-out架構(gòu)可以增加存儲(chǔ)節(jié)點(diǎn)的方式來提高容量和性能(磁盤、計(jì)算、I/O資源都可以獨(dú)立增加),Gluster彈性哈希(ElasticHash)解決了Gluster服務(wù)對(duì)元數(shù)據(jù)服務(wù)器的依賴,Gluster采用彈性哈希算法來確定數(shù)據(jù)在chunk節(jié)點(diǎn)中的分布情況,無須元數(shù)據(jù)服務(wù)器,實(shí)現(xiàn)了存儲(chǔ)的橫向擴(kuò)展,改善了元數(shù)據(jù)服務(wù)器節(jié)點(diǎn)的壓力以及單點(diǎn)故障;高可用性:GlusterFS通過配置不同類型的卷,可以對(duì)數(shù)據(jù)進(jìn)行自動(dòng)復(fù)制(類似于RAID1),即使某節(jié)點(diǎn)故障,也不影響數(shù)據(jù)的訪問;通用性:GlusterFS沒有設(shè)置獨(dú)立的私有數(shù)據(jù)文件系統(tǒng),而是采用以往的ext4、ext3等,數(shù)據(jù)可以通過傳統(tǒng)的磁盤訪問方式被客戶端所訪問;彈性卷管理:GlusterFS通過將數(shù)據(jù)存儲(chǔ)在邏輯卷上,邏輯卷從邏輯存儲(chǔ)池進(jìn)行獨(dú)立邏輯劃分,邏輯存儲(chǔ)池可以在線進(jìn)行增加和刪除,不會(huì)導(dǎo)致業(yè)務(wù)中斷,邏輯卷的數(shù)量可以根據(jù)實(shí)際需求進(jìn)行自行增加和縮減;
二、GlusterFS存儲(chǔ)架構(gòu);專業(yè)術(shù)語:Brick(存儲(chǔ)塊):存儲(chǔ)池中節(jié)點(diǎn)對(duì)外提供存儲(chǔ)服務(wù)的目錄;Volume(邏輯卷):一個(gè)邏輯卷時(shí)一組Brick的集合,卷是數(shù)據(jù)存儲(chǔ)的邏輯設(shè)備,類似LVM中的邏輯卷,大部分GlusterFS管理操作都是在邏輯卷上進(jìn)行的;FUSE(用戶空間文件系統(tǒng)):是一個(gè)內(nèi)核模塊,用戶自行創(chuàng)建掛載的的文件系統(tǒng);VFS(接口):內(nèi)核空間對(duì)用戶空間提供的訪問磁盤的接口;Glusterd(后臺(tái)管理進(jìn)程):在存儲(chǔ)集群中的每個(gè)節(jié)點(diǎn)上都要運(yùn)行;
三、GlusterFS工作原理;數(shù)據(jù)訪問流程:1.首先是在客戶端,用戶通過glusterfs的mountpoint來讀寫數(shù)據(jù),對(duì)于用戶來說,集群系統(tǒng)的存在對(duì)用戶是完全透明的,用戶感覺不到是操作本地系統(tǒng)還是遠(yuǎn)端的集群系統(tǒng)。
2.用戶的這個(gè)操作被遞交給本地linux系統(tǒng)的VFS來處理。
3.VFS將數(shù)據(jù)遞交給FUSE內(nèi)核文件系統(tǒng):在啟動(dòng)glusterfs客戶端以前,需要想系統(tǒng)注冊一個(gè)實(shí)際的文件系統(tǒng)FUSE,如上圖所示,該文件系統(tǒng)與ext3在同一個(gè)層次上面,ext3是對(duì)實(shí)際的磁盤進(jìn)行處理,而fuse文件系統(tǒng)則是將數(shù)據(jù)通過/dev/fuse這個(gè)設(shè)備文件遞交給了glusterfsclient端。所以我們可以將fuse文件系統(tǒng)理解為一個(gè)代理。
4.數(shù)據(jù)被fuse遞交給Glusterfsclient后,client對(duì)數(shù)據(jù)進(jìn)行一些指定的處理(所謂的指定,是按照client配置文件據(jù)來進(jìn)行的一系列處理,
我們在啟動(dòng)glusterfs
client
時(shí)需要指定這個(gè)文件,其默認(rèn)位置:/etc/glusterfs/client.vol)。
5.在glusterfsclient的處理末端,通過網(wǎng)絡(luò)將數(shù)據(jù)遞交給GlusterfsServer,并且將數(shù)據(jù)寫入到服務(wù)器所控制的存儲(chǔ)設(shè)備上。
四、GlusterFS卷的類型;分布式卷、條帶卷、復(fù)制卷、分布式條帶卷、分布式復(fù)制卷、條帶復(fù)制卷、分布式條帶復(fù)制卷;1.分布式卷分布式卷是GlusterFS的默認(rèn)卷,在創(chuàng)建卷時(shí),默認(rèn)選項(xiàng)是創(chuàng)建分布式卷。在該模式下,并沒有對(duì)文件進(jìn)行分塊處理,文件直接存儲(chǔ)在某個(gè)Server節(jié)點(diǎn)上。由于使用本地文件系統(tǒng),所以存取效率并沒有提高,反而會(huì)因?yàn)榫W(wǎng)絡(luò)通信的原因而有所降低,另外支持超大型文件也會(huì)有一定的難度,因?yàn)榉植际骄聿粫?huì)對(duì)文件進(jìn)行分塊處理,一個(gè)文件要么在Server1上,要么在Serve2上,不能分塊同時(shí)存放在Sever1和Server2上;特點(diǎn):
文件分布在不同的服務(wù)器,不具備冗余性;
更容易且廉價(jià)地?cái)U(kuò)展卷的大?。?/p>
單點(diǎn)故障會(huì)造成數(shù)據(jù)丟失;
依賴底層的數(shù)據(jù)保護(hù);創(chuàng)建方法:[root@gfs
~]#
glustervolumecreatedis-volumeserver1:/dir1server2:/dir2Creationofdis-volumehasbeensuccessfulPleasestartthevolumetoaccessdata
2.條帶卷Stripe模式相當(dāng)于RAIDO,在該模式下,根據(jù)偏移量將文件分成N塊,輪詢地存儲(chǔ)在每個(gè)BrickServer節(jié)點(diǎn)。節(jié)點(diǎn)把每個(gè)數(shù)據(jù)塊都作為普通文件存入本地文件系統(tǒng)中,通過擴(kuò)展屬性記錄總塊數(shù)(Stripe-count)和每塊的序號(hào)(Stripe-index),在配置時(shí)指定的條帶數(shù)必須等于卷中Brick所包含的存儲(chǔ)服務(wù)器數(shù),在存儲(chǔ)大文件時(shí),性能尤為突出,但是不具備冗余性;特點(diǎn):
數(shù)據(jù)被分割成更小塊分布到塊服務(wù)器群中的不同;
分布減少了負(fù)載且更小的文件提高了存取速度;
沒有數(shù)據(jù)冗余;創(chuàng)建方法:[root@gfs
~]#
glustervolumecreatestripe-volumestripe2transporttcpserver1:/dir1
server2:/dir2create
of
Stripe-volumehasbeensuccessfulpleasestartthe
volumetoaccessdata
3.復(fù)制卷也稱為AFR(AutGilePepliatio)相當(dāng)于RAD1,即同一文件保存一份或多份副本。每個(gè)節(jié)點(diǎn)上保存相同的內(nèi)容和目錄結(jié)構(gòu)。復(fù)制模式因?yàn)橐4娓北?,所以磁盤利用率較低,復(fù)制卷時(shí),復(fù)制數(shù)必須等于卷中Brick所包含的存儲(chǔ)服務(wù)器數(shù),復(fù)制卷具備冗余性,即使一個(gè)節(jié)點(diǎn)損壞,也不影響數(shù)據(jù)的正常使用;特點(diǎn):
卷中所有的服務(wù)器均保存一個(gè)完整的副本;
卷的副本數(shù)量可由客戶創(chuàng)建的時(shí)候決定;
最少保證兩個(gè)塊服務(wù)器或更多服務(wù)器;
具備冗余效果;創(chuàng)建方法:[root@gfs
~]#
glustervolumecreaterep-volumereplica2transporttcpserver1:/dir1
server2:/dir2create
ofrep
-volumehasbeensuccessfulpleasestartthe
volumetoaccessdata
4.分布式條帶卷
分布式條帶卷兼顧分布式卷和條帶卷的功能,可以理解成為大型的條帶卷,主要用于大文件訪問處理,創(chuàng)建一個(gè)分布式條帶,卷最少需要4臺(tái)服務(wù)器;創(chuàng)建方法:[root@gfs
~]#
glustervolumecreatedis-stripestripe2transporttcpserver1:/dir1
server2:/dir2
server3:/dir3
server4:/dir4create
ofdis-stripe
hasbeensuccessfulpleasestartthe
volumetoaccessdata上述命令創(chuàng)建了一個(gè)名為dis-stripe的分布式條帶卷,配置分布式條帶卷時(shí),卷中Brick所包含的存儲(chǔ)服務(wù)器必須是條帶數(shù)的倍數(shù)(大于等于2倍),如上述命令,Brick的數(shù)量為4,條帶數(shù)為2;
5.分布式復(fù)制卷分布式復(fù)制卷兼顧分布式卷和復(fù)制卷的功能,可以理解成為大型的復(fù)制卷,主要用于冗余的場景下,創(chuàng)建一個(gè)分布式復(fù)制卷,最少需要4塊brick;創(chuàng)建方法:[root@gfs
~]#
glustervolumecreatedis-repreplica2transporttcpserver1:/dir1
server2:/dir2
server3:/dir3
server4:/dir4create
ofdis-rep
hasbeensuccessfulpleasestartthe
volumetoaccessdata
6.條帶復(fù)制卷?xiàng)l帶復(fù)制卷兼顧了條帶卷和復(fù)制卷兩者的優(yōu)點(diǎn),相當(dāng)于RADI10,用于存儲(chǔ)效率高,備份冗余的場景下,創(chuàng)建條帶復(fù)制卷,最少需要四個(gè)brick;創(chuàng)建方法:[root@gfs
~]#glustervolumecreatetest-volumestripe2replica2transporttcp
server1:/dir1
server2:/dir2
server3:/dir3
server4:/dir4create
of
test-volumehasbeensuccessfulpleasestartthe
volumetoaccessdata
7.分布式條帶復(fù)制卷分布式條帶復(fù)制卷將分布條帶數(shù)據(jù)在復(fù)制卷集群。為了獲得最佳效果,可以選擇使用分布在高并發(fā)的條帶復(fù)制卷環(huán)境下并行訪問非常大的文件和性能是至關(guān)重要的;
五、案例:搭建Gluster分布式文件系統(tǒng);案例環(huán)境:系統(tǒng)類型IP地址主機(jī)名所需軟件Centos7.4170864glusterfsglusterfs-serverglusterfs-fuseglusterfs-rdmaCentos7.4170864glusterfsglusterfs-serverglusterfs-fuseglusterfs-rdmaCentos7.4170864glusterfsglusterfs-serverglusterfs-fuseglusterfs-rdmaCentos7.4170864glusterfsglusterfs-fuse案例步驟:?配置主機(jī)之間的解析(在此所有主機(jī)配置相同,在此只列舉data1節(jié)點(diǎn)的配置);?在所有data節(jié)點(diǎn)上安裝GlusterFS(在此所有主機(jī)配置相同,在此只列舉data1節(jié)點(diǎn)的配置);?在data1節(jié)點(diǎn)上進(jìn)行創(chuàng)建集群,其他節(jié)點(diǎn)會(huì)同步配置;?在多個(gè)data節(jié)點(diǎn)創(chuàng)建數(shù)據(jù)存儲(chǔ)的位置;?在data1節(jié)點(diǎn)創(chuàng)建數(shù)據(jù)存儲(chǔ)的卷(復(fù)制卷),其他節(jié)點(diǎn)會(huì)同步配置;?在client客戶端節(jié)點(diǎn)上安裝gluster客戶端工具并測試掛載;?client客戶端節(jié)點(diǎn)測試存放文件;?擴(kuò)展:Gluster的管理命令;
?配置主機(jī)之間的解析(在此所有主機(jī)配置相同,在此只列舉data1節(jié)點(diǎn)的配置);[root@data1~]#cat<>/etc/hosts01020304END[root@data1~]#ping-c2
##ping命令進(jìn)行測試PING(01)56(84)bytesofdata.64bytesfrom(01):icmp_seq=1ttl=64time=0.062ms64bytesfrom(01):icmp_seq=2ttl=64time=0.040ms
?在所有data節(jié)點(diǎn)上安裝GlusterFS(在此所有主機(jī)配置相同,在此只列舉data1節(jié)點(diǎn)的配置);[root@data1~]#wget-O/etc/yum.repos.d/CentOS-Base.repo/repo/Centos-7.repo[root@data1~]#yum-yinstallcentos-release-gluster
##安裝gluster包的yum源[root@data1~]#yum-y
installglusterfsglusterfs-serverglusterfs-fuseglusterfs-rdma[root@data1~]#systemctlstartglusterd[root@data1~]#systemctlenableglusterdCreatedsymlinkfrom/etc/systemd/system/multi-user.target.wants/glusterd.serviceto/usr/lib/systemd/system/glusterd.service.[root@data1~]#netstat-utpln|grepglutcp
0
0:24007
:*
LISTEN
1313/glusterd
[root@data1~]#netstat-utpln|greprpctcp
0
0:111
:*
LISTEN
1311/rpcbind
udp
0
0:111
:*
1311/rpcbind
udp
0
0:634
:*
1311/rpcbind
?在data1節(jié)點(diǎn)上進(jìn)行創(chuàng)建集群,其他節(jié)點(diǎn)會(huì)同步;[root@data1~]#glusterpeerprobe
##添加本機(jī)節(jié)點(diǎn)peerprobe:success.Probeonlocalhostnotneeded[root@data1~]#glusterpeerprobe
##添加data2節(jié)點(diǎn)peerprobe:success.[root@data1~]#glusterpeerprobe
##添加data3節(jié)點(diǎn)peerprobe:success.[root@data1~]#glusterpeerstatus
##查看gluster集群狀態(tài)NumberofPeers:2
Hostname:Uuid:a452f7f4-7604-4d44-8b6a-f5178a41e308State:PeerinCluster(Connected)
Hostname:Uuid:b08f1b68-3f2c-4076-8121-1ab17d1517e1State:PeerinCluster(Connected)
?在多個(gè)data節(jié)點(diǎn)創(chuàng)建數(shù)據(jù)存儲(chǔ)的位置;[root@data1~]#mkdir/data[root@data1~]#glustervolumeinfoNovolumespresent
?在data1節(jié)點(diǎn)創(chuàng)建數(shù)據(jù)存儲(chǔ)的卷(復(fù)制卷),其他節(jié)點(diǎn)會(huì)同步配置;[root@data1~]#glustervolumecreate
rep-volume
replica3transporttcp:/data:/data:/dataforce
##創(chuàng)建復(fù)制卷,名稱如上volumecreate:rep-volume:success:pleasestartthevolumetoaccessdata[root@data1~]#glustervolumeinfoVolumeName:rep-volumeType:ReplicateVolumeID:ac59612b-e6ce-46ce-85a7-74262fb722b2Status:CreatedSnapshotCount:0NumberofBricks:
1x3=3Transport-type:tcpBricks:Brick1::/dataBrick2::/dataBrick3::/dataOptionsReconfigured:transport.address-family:inetnfs.disable:onperformance.client-io-threads:off[root@data1~]#glustervolumestart
rep-volume
##啟動(dòng)該卷volumestart:rep-volume:success
?在client客戶端節(jié)點(diǎn)上安裝gluster客戶端工具并測試掛載;[root@client~]#yuminstall-yglusterfs
glusterfs-fuse[root@client~]#mount-tglusterfs:rep-volume
/mnt/[root@client~]#ls/mnt/[root@client~]#df-hT|tail-1:rep-volumefuse.glusterfs
19G
2.0G
17G
11%/mnt
?client客戶端節(jié)點(diǎn)測試存放文件;[root@client~]#touch/mnt/{1..10}.file[root@client~]#ddif=/dev/zeroof=/mnt/1.txtbs=1Gcount=1[root@client~]#ls/mnt/10.file
1.file
1.txt
2.file
3.file
4.file
5.file
6.file
7.file
8.file
9.file[root@client~]#du-sh/mnt/1.txt1.0G
/mnt/1.txt
?擴(kuò)展:Gluster的管理命令;Gluster
peer
status
##查看所有的節(jié)點(diǎn)信息Gluster
peer
probe
name
##添加節(jié)點(diǎn)Gluster
peer
detach
name
##刪除節(jié)點(diǎn)Gluster
volume
create
xxx
##創(chuàng)建卷Gluster
volume
info
##查看卷信息
系統(tǒng)配額:1、開啟/關(guān)閉系統(tǒng)配額glustervolumequotaVOLNAMEenable/disable2、設(shè)置(重置)目錄配額glustervolumequotaVOLNAMElimit-usage/imglimit-valueglustervolumequotaimglimit-usage/quota10GB設(shè)置img卷下的quota子目錄的限額為10GB。這個(gè)目錄是以系統(tǒng)掛載目錄為根目錄”/”,所以/quota即客戶端掛載目錄下的子目錄quota3、配額查看glustervolumequotaVOLNAMElistglustervolumequotaVOLNAMElist可以使用如上兩個(gè)命令進(jìn)行系統(tǒng)卷的配額查看,第一個(gè)命令查看目的卷的所有配額設(shè)置,第二個(gè)命令則是執(zhí)行目錄進(jìn)行查看。可以顯示配額大小及當(dāng)前使用容量,若無使用容量(最小0KB)則說明設(shè)置的目錄可能是錯(cuò)誤的(不存在)。
地域復(fù)制:glustervolumegeo-replicationMASTERSLAVEstart/status/stop
//地域復(fù)制是系統(tǒng)提供的災(zāi)備功能,能夠?qū)⑾到y(tǒng)的全部數(shù)據(jù)進(jìn)行異步的增量備份到另外的磁盤中。glustervolumegeo-replicationimg:/data1/brick1start如上,開始執(zhí)行將img卷的所有內(nèi)容備份到10.8下的/data1/brick1中的task,需要注意的是,這個(gè)備份目標(biāo)不能是系統(tǒng)中的Brick。
平衡卷:平衡布局是很有必要的,因?yàn)椴季纸Y(jié)構(gòu)是靜態(tài)的,當(dāng)新的bricks加入現(xiàn)有卷,新創(chuàng)建的文件會(huì)分布到舊的bricks中,所以需要平衡布局結(jié)構(gòu),使新加入的bricks生效。布局平衡只是使新布局生效,并不會(huì)在新的布局移動(dòng)老的數(shù)據(jù),如果你想在新布局生效后,重新平衡卷中的數(shù)據(jù),還需要對(duì)卷中的數(shù)據(jù)進(jìn)行平衡。當(dāng)你擴(kuò)展或者縮小卷之后,需要重新在服務(wù)器直接重新平衡一下數(shù)據(jù),重新平衡的操作被分為兩個(gè)步驟:1、FixLayout修改擴(kuò)展或者縮小后的布局,以確保文件可以存儲(chǔ)到新增加的節(jié)點(diǎn)中。2、MigrateData重新平衡數(shù)據(jù)在新加入bricks節(jié)點(diǎn)之后。*FixLayoutandMigrateData先重新修改布局然后移動(dòng)現(xiàn)有的數(shù)據(jù)(重新平衡)#glustervolumerebalanceVOLNAMEfix-layoutstart#glustervolumerebalanceVOLNAMEmigrate-datastart也可以兩步合一步同時(shí)操作#glustervolumerebalanceVOLNAMEstart#glustervolumerebalanceVOLNAMEstatus//你可以在在平衡過程中查看平衡信息#
glustervolumerebalanceVOLNAMEstop//你也可以暫停平衡,再次啟動(dòng)平衡的時(shí)候會(huì)從上次暫停的地方
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度辦公室翻新與餐飲店改造設(shè)計(jì)施工合同
- 二零二五年度城市公共安全報(bào)警系統(tǒng)電路升級(jí)改造合同
- 提取公積金借款合同
- 銷售抵押合同
- 電商零售平臺(tái)開發(fā)合同
- 個(gè)人理財(cái)指南
- 農(nóng)產(chǎn)品公共檢測與溯源體系建設(shè)作業(yè)指導(dǎo)書
- 質(zhì)量管理工具與方法應(yīng)用作業(yè)指導(dǎo)書
- 平面設(shè)計(jì)聘用合同
- 2025年廣西貨運(yùn)考試題目
- 長江委水文局2025年校園招聘17人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025年湖南韶山干部學(xué)院公開招聘15人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 廣東省廣州市番禺區(qū)2023-2024學(xué)年七年級(jí)上學(xué)期期末數(shù)學(xué)試題
- 不可切除肺癌放療聯(lián)合免疫治療專家共識(shí)(2024年版)j解讀
- DB23/T 3657-2023醫(yī)養(yǎng)結(jié)合機(jī)構(gòu)服務(wù)質(zhì)量評(píng)價(jià)規(guī)范
- 教科版科學(xué)六年級(jí)下冊14《設(shè)計(jì)塔臺(tái)模型》課件
- 智研咨詢發(fā)布:2024年中國MVR蒸汽機(jī)械行業(yè)市場全景調(diào)查及投資前景預(yù)測報(bào)告
- 法規(guī)解讀丨2024新版《突發(fā)事件應(yīng)對(duì)法》及其應(yīng)用案例
- IF鋼物理冶金原理與關(guān)鍵工藝技術(shù)1
- JGJ46-2024 建筑與市政工程施工現(xiàn)場臨時(shí)用電安全技術(shù)標(biāo)準(zhǔn)
- 煙花爆竹重大危險(xiǎn)源辨識(shí)AQ 4131-2023知識(shí)培訓(xùn)
評(píng)論
0/150
提交評(píng)論