本文主要介紹分布式數據庫sql(分布式數據庫sqlserver),下面一起看看分布式數據庫sql(分布式數據庫sqlserver)相關資訊。
盡管nosql運動沒有給分布式數據處理帶來根本性的技術變革,但它也導致了對各種協議和算法的鋪天蓋地的研究和實踐。在本文中,我將對nosql數據庫的分布式特征進行系統的描述。系統的可擴展性是推動nosql運動發展的主要原因,包括分布式系統的協調、故障轉移、資源管理等諸多特性。這讓nosql聽起來像一個大籃子,一切都可以留在nosql運動。雖然分布式數據處理并沒有帶來根本性的技術變革,但它仍然會導致對各種協議和算法的絕大多數研究和實踐。正是通過這些努力,逐漸總結出了一些行之有效的數據庫建設方法。在本文中,我將對nosql數據庫的分布式特征進行系統的描述。接下來,我們將研究一些分布式策略,如故障檢測中的復制。這些策略用粗體字標出,分為三段:1。數據一致性. nosql需要分布式系統的一致性、容錯性和性能、低延遲和高可用性的平衡。一般來說,數據一致性是一個必要的選項,所以這一節主要是關于數據復制和數據恢復。2。數據放置。數據庫產品應該能夠應對不同的數據分布、集群拓撲和硬件配置。在本節中,我們將討論如何分配和調整數據的分布,為及時解決問題提供持續的保證,有效的查詢和保證集群中資源的均衡使用,如內存和硬盤空間。3.對等系統。很多數據庫產品都采用了leader election等技術來實現強容錯和數據一致性。然而,即使分布式數據庫(沒有中心)應該遵循它們的全局狀態,并檢測故障和拓撲變化,本節也將介紹幾種技術來保持系統的一致性。數據一致性眾所周知,分布式系統經常會遇到網絡隔離或延遲。在這種情況下,隔離部分不可用。因此,在不犧牲一致性的情況下保持高可用性是不可能的。這一事實通常被稱為上限理論。但是,一致性在分布式系統中是一件非常昂貴的事情,所以我們經常需要做出一些讓步,不僅是為了可用性,也是為了各種權衡,為了研究這些權衡,我們注意到分布式系統的一致性問題是由數據隔離和復制引起的,所以我們將從復制的特性入手。可用性u3002in在網絡隔離的情況下,其余的仍然可以響應讀寫請求。讀寫延遲,讀寫請求可以短時間處理。閱讀和寫作的可塑性。讀寫壓力可以通過多個節點來平衡。容錯。讀寫請求的處理不依賴于任何特定的節點。數據持久性:特定條件下的節點故障不會導致數據丟失。統一u3002c協調的作用比以前復雜得多,所以我們需要詳細討論一些不同的觀點。但是我們贏了。;不涵蓋許多一致性和并發模型,因為這超出了本文的范圍。我只能用一些簡單的功能組成一個精簡的系統。從讀寫的角度來看,數據庫的基本目標是使副本的收斂時間盡可能短,即向所有副本交付更新以保證最終一致性的時間。除了這種弱保證,還有一個更強的一致性特性:寫后寫一致性。在數據項x上寫的效果,在后續對x的讀操作中總能看到,讀后讀一致性。在讀取數據項x之后,x的后續讀取操作應該返回與第一個返回值相同或更新的值。寫一致性。分區數據庫中經常發生寫。數據庫應該能夠處理這種,并確保不同的分區不會處理多個寫請求:原子被寫入。如果數據庫提供api,寫操作只能是單個原子賦值。避免的方法是找出每個數據的最新版本,這使得所有節點在更新結束時獲得相同的版本,但與更新后的順序無關。由網絡故障和延遲引起的節點的不同順序更新。數據的版本可以由用戶指定的代表通過時間戳或值來表示。這是卡桑德拉使用它的。原子化讀寫應用的變化。有時需要讀-修改-寫順序操作,而不是單個原子寫操作。如果兩個客戶端讀取相同版本的數據,并且修改后的數據被修改并寫回其中,則根據原子寫入模式,更新時間將覆蓋前一時間。在某些情況下,這種行為是不正確的(例如,兩個客戶端使用相同的新值添加一個列表值)。該數據庫至少提供了兩種解決辦法:預防。讀-修改-寫可以認為是一個特例,所以分布式鎖,或者與paxos一致的協議可以解決這個問題。這項技術支持原子讀取重寫語義和任意隔離級別的事務。另一種方法是避免分布式并發寫操作,寫一個特定數據項的節點(可以是全局主節點,也可以是分區主節點)。為了避免,數據庫必須犧牲網絡隔離的可用性。這種方法常用于許多系統中,以提供強一致性保證(例如,大多數關系數據庫、hbase、mondb)。檢測、數據庫跟蹤、并發更新和回滾的一個或兩個版本由客戶保留。并發更新通常與向量時鐘跟蹤(這是一種樂觀鎖定)或完整版本的版本歷史保持相關聯。采用這種方法的危險,伏地魔couchdb。現在讓我們 讓我們仔細看看常用的復制技術和分類,并根據它們的特點來描述它們。第一張圖描述了不同的技術以及不同技術之間的權衡。協調系統的一致性、可擴展性、可用性和延遲之間的邏輯關系。附圖詳細描述了每項技術。復合因子為4,讀/寫協調。服務器可以是外部客戶端或內部代理節點。根據各方共識,我們將采用由弱到強的技術:在策略上,(a,反熵)一致性最弱,寫的時候會選擇任意一個節點更新。讀取時,如果新數據沒有傳輸到節點并通過后臺反熵協議讀取,那么仍然讀取舊數據(反熵協議將在下一節詳細介紹):過大的傳播延遲使得使用的數據很難同步,所以典型的用法是檢測和維護的計劃輔助功能。cassandra使用一種反熵算法來調用數據庫的拓撲結構和各個節點之間的一些其他元數據信息。一致性保證弱:即使沒有失敗,也會出現寫和讀寫差異。網絡隔離下的高可用性和健壯性,異步批處理逐一替代,性能優異。持久性很弱,因為新數據起初只是一個副本。(b)上述模式的一個改進是異步向所有可用節點發送更新,同時任意節點接收到一個更新數據請求,也視為方向反熵。與簡單的反熵相比,該方法大大提高了一致性,只犧牲了一點點性能,但形式一致性和持久性保持不變。如果由于網絡故障或節點故障而無法獲得某些節點,更新將最終通過反熵傳播過程傳遞到該節點。(c)在以前的模式中,使用快速轉移技術可以更好地處理一個節點的操作失敗,無效節點的更新被記錄在一個附加的代理節點中,表明一旦更新被傳遞到該節點,該特征節點是可用的。這提高了一致性并減少了復制時間。(d),讀寫一次,因為在更新之前,提示切換的節點也可能失效。在這種情況下,必須通過所謂的讀取修復來確保一致性,每個讀取操作都將啟動一個異步過程,并向存儲數據的所有節點請求數據摘要(如簽名或哈希)。如果發現各個節點返回的摘要不一致,那么各個節點的數據版本就會統一。我們稱之為一次性讀寫結合a、b、c、d的技術。它們不提供嚴格的一致性保證,但作為一種自帶的方法,已經應用到實踐中。上述策略(例如,讀取和寫入)是一種啟發式增強,用于減少復制的收斂時間。為了保證更大的一致性,需要犧牲可用性來保證閱讀和寫作有一定的重疊。通常的做法是同時寫w份而不是一份,讀r份。首先,您可以配置寫入副本的數量w 1。其次,由于r w是綁定節點之間的重疊讀寫,在數據的多個副本中至少會有一個新數據被讀取(w = 2,r = 3,n = 4)。這樣,在執行讀寫請求時,它們可以保證一致性(讀寫用戶的一致性),但不能保證全局一致性。根據下圖的例子,r = 2,w = 2,n。= 3,因為兩個寫賦值的更新是非事務。當更新未完成時,您可以讀取兩個舊值或一個新值。對于某些讀取延遲,設置不同的r和w值可以調整寫入延遲和寫入持續時間,反之亦然。如果wn/2可以確保原子讀重寫在檢測到時處于反轉模式。嚴格來說,這種模型可以容忍單個節點失效,但是網絡隔離的容錯性不好。在實踐中,這種近似的方法經常被用來犧牲一些一致性來提高某些場景的可用性。讀取數據時,讀取所有副本(讀取數據或檢查匯總)可以緩解讀取一致性問題。這確保了只要至少一個節點上的數據被更新,讀者就可以看到新數據。但在網絡隔離的情況下,這種保障就不起作用了。(g,主從)這種技術通常用于提供讀寫的連續重寫作為原子寫或檢測級別,以達到預防的級別,需要使用集中管理模式或鎖。最簡單的策略是將一個主從式的特定數據項的路徑復制到一個中心節點,然后順序執行。在這種情況下,主節點將成為瓶頸,所以我們必須將數據劃分到獨立的部門(不同的塊,不同的主),以提供可擴展性。(h)更新多個副本的方法可以使用事務控制技術來避免寫。著名的方法是使用兩階段提交協議。但是,兩階段提交并不完全可靠,因為人為故障可能會導致資源阻塞paxos的提交。協議是更可靠的選擇,但會損失一些性能。在此基礎上,下一個小步驟是在一個事務中讀取所有副本并更新副本。它提供了很強的容錯能力,但是會損失一些性能和可用性。以上分析中的一些取舍需要再次強調。一致性和可用性,cap理論給出了嚴格的權衡,在網絡隔離的情況下,數據庫既可以設置數據,又可以接受數據丟失的風險。一致性和可伸縮性,可以看出即使是一致的讀寫保證也會降低副本集的可伸縮性。只有在原子寫模式下,才能以相對可擴展的處理寫。原子讀重寫模型避免了,增加了臨時全局鎖的數據量。這表明,數據或操作之間的依賴,即使在小范圍或短時間內,也會損害的可擴展性。因此,設計良好的數據模型和單獨存儲的數據的可伸縮性非常重要。一致性和延遲,如上所述,當數據庫需要提供強一致性或持久性時,應該偏向于讀寫所有的復制技術,但明顯與請求延遲一致,與副本數量成反比,所以使用這種技術會是一種更客觀的衡量標準。故障轉移和一致性/可擴展性/延遲。有趣的是,容錯和一致,和拖延都不是暴力。通過合理地放棄一些性能和一致性性,集群可以容忍盡可能多的節點故障。這種折衷和paxos協議的區別是顯而易見的。在另一個例子中,這種折衷是添加特定的一致性保證,例如使用嚴格的會話進程讀寫,但這增加了故障轉移的復雜性。反熵協議和謠言傳播算法let s從以下幾點入手:有多個節點,每個節點有一個副本,每個節點可以單獨處理更新請求,每個節點定期與其他節點同步。在此期間,所有副本將保持一致。如何完成同步過程,何時開始同步,如何選擇同步對象,如何交換數據。我們假設兩個節點總是用新版本的數據覆蓋舊數據,或者保留兩個版本用于應用層處理。這個問題常見于數據一致性維護和集群狀態同步,比如集群成員信息分發。雖然該負責人介紹,監控數據庫和同步方案可以解決這個問題,但分散數據庫可以提供更好的容錯能力。集中的主要方法是使用設計良好的傳染協議,該協議相對簡單,但它提供了良好的收斂時間,并且可以容忍任何節點故障和網絡隔離。雖然有許多感染類型的算法,但我們只關注反熵協議,因為nosql數據庫使用它。反熵協議假設同步將根據固定的時間表來執行。每個節點定期選擇另一個節點交換數據以消除差異。根據一定的規則,有三種反熵協議:推、拉和組合。推送協議的原理是簡單地選擇一個隨機的節點來發送數據。這顯然是愚蠢的,把所有的數據放在實際應用中,所以節點一般以如下所示的工作。作為同步發起者的節點準備數據的摘要,該摘要被包括在a的數據指紋中。在接收到摘要之后,節點b將數據與本地數據和作為摘要返回的數據進行比較,返回最終的摘要,向b發送一個,向b更新一個,然后更新數據。拉模式和混合方法之間的協議是相似的,如上圖所示。反熵協議提供了良好的收斂時間和可擴展性。下圖顯示了在100個節點的集群中傳播更新的結果。在每次迭代中,每個節點只與一個隨機選擇的節點相關聯。可見拉模式收斂比的推方法理論上是可以證明的,還有一個問題,收斂到底。經過多次迭代,雖然幾乎所有的節點都過去了,但仍有一些不受影響的混合方法。它比簡單的推挽方法更有效,所以在實際應用中,反熵是可擴展的,平均轉換時間的增加是簇大小的對數函數形式。雖然這些技術看起來很簡單,但仍然有許多研究專注于不同約束下的反熵協議的性能,其中使用了更有效的網絡拓撲而不是隨機選擇。使用有限的傳輸速率調整網絡帶寬,或者使用高級規則選擇數據同步。匯總計算也面臨挑戰,數據庫將保持更新。用于匯總計算的新日志。在上一節中,我們假設兩個節點總是合并它們的數據版本,但是解決更新并不容易,所有副本最終都能達到語義正確的值也就不足為奇了。讓 假設一個例子來說明這個問題:數據庫維護一個邏輯全局計數器,每個節點可以增加或減少這個數字。雖然每個節點都可以保持它的局部值,但是這些地方不能通過簡單的加減運算來合并。假設有三個節點a、b和c,每個節點執行額外的操作。如果你取b的值加到本地副本,那么c得到b的值,然后c得到值,然后c的最終值是4,這是不對的。解決這個問題的方法是使用類似于向量時鐘的數據結構來保持每個節點對計數器。class inverse { int plus } int minus international node _ id increment{ node _ id plus { } } minus{ node _ id minus { } } get{ return and(sum)-and(負號)} merge(counter other){我在1。max_id {plus {i max = max (plus {},其他。加{})減去最大值(減{,},再減} } } cassandra也是類似的設計。一個更復雜和最終一致的數據結構也可以用一個狀態或基于復制理論來設計。比如提到了一系列這樣的數據結構,包括:counter(加減)set(加減運算)graph(加一條邊)。這一部分重點介紹分布式數據庫中控制數據放置的算法,這些算法負責將數據項映射到適當的物理節點,在節點之間遷移數據以及全局分配資源(如內存)。平衡數據我們通過簡單的協議提供集群節點之間的無縫數據遷移。當集群擴展時(例如添加新節點(節點故障轉移)和一些停機時間)或平衡數據時(節點間不均勻的數據分布),通常會出現這種情況。場景描述圖1如下——三個節點和三個節點的數據是隨機分布的(假設數據是核心值)。如果數據庫不支持數據的內部平衡,則數據庫實例會在每個節點中發布,如圖b所示。這需要對停止遷移的數據庫實例進行手動集群擴展,這會移動到新節點并在新節點開始,如圖所示。雖然數據庫監控每一條記錄,但是包括mondb、oracle coherence、redis clust——,將鍵(通常是哈希)映射到物理節點,鍵的哈希值空間是一個有序的定長二進制字符串。很明顯,這個范圍內的每個鍵都會映射到圖a的一個三節點副本,值空間會封閉成一個環,沿著環順時針方向,直到所有副本都映射到對應的節點,如圖b所示,換句話說,你會位于節點b,因為在b的范圍內,第一個副本要放在c,第二個副本放在一,以此類推。這種結構的優點是增加或刪除一個節點,因為它只保持相鄰區域的數據平衡。如圖c所示,添加節點d只會影響數據項x和y是否受影響。同樣的,節點b的移除(或者b只失效)會影響y和x的副本,不會影響x本身。但這種有利有弊,即經濟負擔由鄰居節點承擔,會移動大量數據。每個節點映射到一個范圍而不是一個范圍,這不是問題。可以在一定程度上降低影響,如圖d所示,這是一種權衡。重新平衡數據時避免過載。但是,與基于模塊的映射相比,它適當地減少了總體平衡的數量。維護一個完全一致的大型哈希環集群并不容易。這對于相對較小的數據庫集群來說沒有問題,研究如何在對等網絡中將數據放置與路由網絡結合起來是很有趣的。比較好的例子是chord算法,它使得環的完整性認可單個節點的搜索效率。chord算法也采用了環映射關鍵節點的思想,在這方面類似于一致性哈希。不同的是,一個特定的節點維護一個鏈表,鏈表中節點和環的邏輯位置是相乘的(如下圖所示),這就使得用兩點搜索定位鍵w只需要很少的網絡跳數。這張圖片是一個由16個節點組成的集群,描述了節點a如何尋找放置在節點d上的密鑰..(a)描述了路由,(b)描述了節點a、b和c的環的部分圖像。在參考文獻中,有關于分布式系統中的數據復制的更多信息。根據多個屬性進行數據分片當使用哈希訪問數據時,一致的數據放置策略是有效的,但會更加復雜。當查詢多個屬性時,一個簡單的方法(使用mondb)是使用主鍵分配的數據,而不考慮其他屬性。結果是基于主鍵的查詢可以路由到合適的節點,但是查詢效率的不平衡會導致以下問題:有一個數據集,其中每個數據都有很多屬性和對應的值。是否存在一種數據分布策略,允許盡可能少地執行具有任意數量屬性的查詢,這提供了一種解決方案。其基本思想是將每個屬性視為多維空間中的一個軸和映射區域在空間中的一個物理節點,查詢將匹配到幾個相鄰區域空間中的一個超平面,因此只有這些區域中的查詢是相關的。讓 讓我們看一下參考示例。每個數據是一個用戶 的信息,它有三個屬性,名、姓和號碼。這些屬性被視為三維空間中可行數據分布策略圖的每個象限中的一個物理節點,查詢name = john對應一個貫穿四個象限的平面。是的,只有四個節點參與查詢處理。對應于具有兩個屬性約束的查詢的直線穿過兩個象限。如最后一幅圖所示,只有兩個節點將參與處理。這種方法的問題是空間象限增加了屬性數量的指數函數。所以只有幾個屬性的查詢會被投影到很多空間區域,也就是很多服務器上,更多的屬性數據項會被分成幾個屬性相對較少的子項,每個子項會被映射到多維空間中的一個獨立空間,而不是整個數據,可以在一定程度上緩解這個問題。這種映射可以為節點提供更好的查詢,但是增加了集群的協調性。因為這種情況下的數據會分散在幾個獨立的子空間中,每個子空間對應幾個物理節點,所以數據更新必須考慮問題。鈍化副本有些應用對隨機讀取有很強的需求,要求所有數據都存儲在內存中。在這種情況下,通常是從節點從每個段復制數據兩次以上,因為每個數據都在主節點和從節點的一部分來代替主節點,從節點的內存大小應該和主節點的一樣。如果系統可以容忍短期中斷或性能下降,那么當節點出現故障時,它也可以是不可分的。下圖描述了4個節點上的16個數據段,每個節點在內存中都有一個部分,在硬盤上也有一個副本。灰色箭頭突出顯示了節點2上的分段副本。其他節點上的切片也會被復制。紅色箭頭描述了將副本加載到內存中時節點2的故障。集群中的副本是均勻分布的,這可以將活動副本的故障存儲在幾個保留內存的節點中。在上圖中,集群只保留1/3的內存,可以承受單節點故障。特別指出的是,復制激活(從硬盤加載到內存)需要一定的時間,這會導致性能下降或短時間內部分數據服務中斷和恢復。系統協調在本節中,我們將討論這兩種技術都與系統協調有關。分布式協調是一個比較大的領域,很多人研究了幾十年。在本文中,只涉及兩種實用技術。分布式鎖、內容一致性協議和其他基本技術可以在許多書籍或網絡資源中找到。故障檢測和容錯分布式系統的基本功能。其實所有基于心跳故障檢測協議的通信機制原理都很簡單。組件定期發送心跳監視信息,如果在一段時間內沒有接收到心跳信息,則監視過程(或由監視組件監視的輪詢過程)被視為失敗。此外,真正的分布式系統還有其他一些功能需求。自適應故障檢測應該能夠處理臨時網絡故障和延遲,以及改變負載和帶寬的集群拓撲。但是,這是非常困難的,因為沒有辦法知道長期無響應的過程是否是真正的失敗。因此,在故障檢測和故障識別中需要權衡的時間(確定一個真正的故障需要多長時間,也就是經過一個無響應過程后多長時間才會被認為是故障)和誤報率的權重是權衡因素。乍一看,故障檢測只需要輸出一個指示監控進程是否工作的布爾值,但在實際應用中不受e的影響。讓 讓我們看看mapreduce的參考示例。有一個分布式應用程序,它有一個主節點和多個工作節點。主節點維護一個工作列表并分配工作列表中的工作節點,主節點可以區分不同程度的故障。如果主節點懷疑工作節點被掛起,他不會再把工作分配給該節點。其次,隨著時間的推移,如果沒有收到節點的心跳信息,主節點會將工作重新分配給其他節點。最后,主節點確認該節點出現故障,并且所有相關資源都被釋放。可擴展性和健壯性。故障檢測作為一個系統的功能,應該能夠隨著系統而擴展。它應該是強大的、一致的,即即使通信失敗,系統中的所有節點也應該有一致的看法(即所有節點都應該知道哪些節點不可用,哪些節點可用,不,認知節點不能出現在節點a不可用的一部分節點,而節點的其他部分不知道情況)。所謂累積故障檢測器可以解決第一個問題。cassandra做了一些修改,并應用到產品的基本工作過程中,具體如下:對于每個監測資源,計算探測器記錄的心跳信息的到達時間,統計預測范圍內到達時間的均值和方差。假設到達時間的分布已知(下圖包含一個正態分布的公式),我們可以計算心跳延遲的概率(當前時間t_now的最后到達時間tc之差),用這個概率來判斷是否存在故障。對數函數可以調整以提高可用性。在這種情況下,輸出1意味著誤判(節點故障)的概率是10%,2是1%,以此類推。根據重要程度的不同,要按級別組織監控區域。這個區域是謠言通信協議或中央容錯庫的同步,可以滿足可擴展性的要求,防止心跳信息在網絡中泛濫。如下圖所示,6個故障檢測器組成了兩個區域,這兩個區域通過謠言傳播協議或者像城市動物園這樣強大的庫連接在一起。協調運動協調活動是強一致性數據庫的一項重要技術。一種是利用主從結構組織系統中主要節點的故障恢復,另一種是在網絡隔離的情況下斷開少數節點,避免。欺負算法是一種相對簡單的協調移動算法,mondb使用這種算法來確定一個主副本集。欺負算法的主要思想是,集群中的每個成員都可以聲明自己被協調并通知其他節點,其他節點可以選擇接受這個聲明或者拒絕進入協調者的競爭。節點的其他節點都可以協調,節點判斷誰該贏。根據某些屬性,這個屬性可以是一個靜態id,也可以是一個像上次事務id一樣的可測更新(最新的節點會贏)。下面的例子演示了欺負算法的執行。使用靜態id作為度量,id較大的節點將勝出:在初始集群中,有5個節點,節點5是公認的協調器。假設節點5和節點2掛機,三個節點同時被發現。兩個節點開始發送的消息的id。選擇節點4、節點2、節點3,并排除節點2和節點3。此時,節點1的節點5發送選舉失敗。具有較大id的所有節點的感知信息。節點2、3和4,節點1和節點4都被消除。發送選舉信息的節點5沒有響應,因此節點4宣布它當選為宣布此消息的另一個節點。協調活動中涉及的節點數量,確保集群中至少有一半的節點參與選舉。這樣就保證了網絡協調器選擇的網絡中只有一部分節點可以被隔離(假設網絡被劃分為不同的區域,這些區域互不相連,選舉結果的協調器會導致節點數,課程協調器會有一個比較大的區域,前提是可用節點的面積是集群中原來節點數的一半。如果集群被分成幾個塊,則不能選擇具有更大節點總數的節點協調器。當然,預計在這種情況下,集群可以繼續提供服務。
了解更多分布式數據庫sql(分布式數據庫sqlserver)相關內容請關注本站點。
蘋果手機屏幕不耐摔(平板電腦耐摔嗎)
ice的服務器(ice服務器現狀)
什么型號是國行的(本機是國行嗎)
windows10家庭中文版評估副本(win11 insider preview評估副本)
關閉系統睡眠命令(win8 關閉睡眠)
分布式數據庫 sql(分布式數據庫sqlserver)
c盤windows文件夾能刪嗎(c盤中的windows文件夾可以刪除嗎)
怎么進去安全模式電腦(怎樣進去安全模式電腦)
word文件變成了只讀怎么回事(word怎么變成只讀了)
蘋果發布m1處理器(蘋果m1處理器發布時間)
裝完系統之后怎么裝驅動(系統裝好后怎樣裝驅動程序)
硬盤最穩定的牌子,機械硬盤哪個牌子穩定
惠普筆記本的型號在哪里標注的呀,HP筆記本的型號是不是在屏幕右上角寫著
i512600kf(i512600)
固態硬盤如何選擇大小,筆記本如何選擇固態硬盤
電腦主板a55屬于什么版型(主板a55和a58的區別)
筆記本閃屏怎么修(筆記本閃屏是怎么樣子的)
6000預算電腦配置,6000預算筆記本配置
玩機技巧是什么軟件(玩機技巧是干什么用的)
win10系統如何更新無線網卡的驅動版本(win10系統如何更新無線網卡的驅動器)