查詢速度慢的原因很多,常見如下幾種:
1、沒有索引或者沒有用到索引(這是查詢慢最常見的問題,是程序設計的缺陷)
2、I/O吞吐量小,形成了瓶頸效應。
3、沒有創建計算列導致查詢不優化。
4、內存不足
5、網路速度慢
6、查詢出的數據量過大(可以採用多次查詢,其他的方法降低數據量)
7、鎖或者死鎖(這也是查詢慢最常見的問題,是程序設計的缺陷)
8、sp_lock,sp_who,活動的用戶查看,原因是讀寫競爭資源。
9、返回了不必要的行和列
10、查詢語句不好,沒有優化
可以通過如下方法來優化查詢 :
1、把數據、日誌、索引放到不同的I/O設備上,增加讀取速度,以前可以將Tempdb應放在RAID0上,sql2000不在支持。數據量(尺寸)越大,提高I/O越重要.
2、縱向、橫向分割表,減少表的尺寸(sp_spaceuse)
3、升級硬體
4、根據查詢條件,建立索引,優化索引、優化訪問方式,限制結果集的數據量。注意填充因子要適當(最好是使用默認值0)。索引應該盡量小,使用位元組數小的列建索引好(參照索引的創建),不要對有限的幾個值的欄位建單一索引如性別欄位
5、提高網速;
6、擴大伺服器的內存,Windows 2000和SQL server 2000能支持4-8G的內存。配置虛擬內存:虛擬內存大小應基於計算機上並發運行的服務進行配置。運行 Microsoft SQL Server? 2000 時,可考慮將虛擬內存大小設置為計算機中安裝的物理內存的 1.5 倍。如果另外安裝了全文檢索功能,並打算運行 Microsoft 搜索服務以便執行全文索引和查詢,可考慮:將虛擬內存大小配置為至少是計算機中安裝的物理內存的 3 倍。將 SQL Server max server memory 伺服器配置選項配置為物理內存的 1.5 倍(虛擬內存大小設置的一半)。
7、增加伺服器CPU個數;但是必須明白並行處理串列處理更需要資源例如內存。使用並行還是串列程是MsSQL自動評估選擇的。單個任務分解成多個任務,就可以在處理器上運行。例如耽擱查詢的排序、連接、掃描和GROUP BY字句同時執行,SQL SERVER根據系統的負載情況決定最優的並行等級,復雜的需要消耗大量的CPU的查詢最適合並行處理。但是更新操作UPDATE,INSERT,DELETE還不能並行處理。
8、如果是使用like進行查詢的話,簡單的使用index是不行的,但是全文索引,耗空間。 like 'a%' 使用索引 like '%a' 不使用索引用 like '%a%' 查詢時,查詢耗時和欄位值總長度成正比,所以不能用CHAR類型,而是VARCHAR。對於欄位的值很長的建全文索引。
9、DB Server 和APPLication Server 分離;OLTP和OLAP分離
10、分布式分區視圖可用於實現資料庫伺服器聯合體。聯合體是一組分開管理的伺服器,但它們相互協作分擔系統的處理負荷。這種通過分區數據形成資料庫伺服器聯合體的機制能夠擴大一組伺服器,以支持大型的多層 Web 站點的處理需要。有關更多信息,參見設計聯合資料庫伺服器。(參照SQL幫助文件'分區視圖')
a、在實現分區視圖之前,必須先水平分區表
b、在創建成員表後,在每個成員伺服器上定義一個分布式分區視圖,並且每個視圖具有相同的名稱。這樣,引用分布式分區視圖名的查詢可以在任何一個成員伺服器上運行。系統操作如同每個成員伺服器上都有一個原始表的復本一樣,但其實每個伺服器上只有一個成員表和一個分布式分區視圖。數據的位置對應用程序是透明的。
11、重建索引 DBCC REINDEX ,DBCC INDEXDEFRAG,收縮數據和日誌 DBCC SHRINKDB,DBCC SHRINKFILE. 設置自動收縮日誌.對於大的資料庫不要設置資料庫自動增長,它會降低伺服器的性能。 在T-sql的寫法上有很大的講究,下面列出常見的要點:首先,DBMS處理查詢計劃的過程是這樣的:
1、 查詢語句的詞法、語法檢查
2、 將語句提交給DBMS的查詢優化器
3、 優化器做代數優化和存取路徑的優化
4、 由預編譯模塊生成查詢規劃
5、 然後在合適的時間提交給系統處理執行
6、 最後將執行結果返回給用戶其次,看一下SQL SERVER的數據存放的結構:一個頁面的大小為8K(8060)位元組,8個頁面為一個盤區,按照B樹存放。
12、Commit和rollback的區別 Rollback:回滾所有的事物。 Commit:提交當前的事物. 沒有必要在動態SQL里寫事物,如果要寫請寫在外面如: begin tran exec(@s) commit trans 或者將動態SQL 寫成函數或者存儲過程。
13、在查詢Select語句中用Where字句限制返回的行數,避免表掃描,如果返回不必要的數據,浪費了伺服器的I/O資源,加重了網路的負擔降低性能。如果表很大,在表掃描的期間將表鎖住,禁止其他的聯接訪問表,後果嚴重。
14、SQL的注釋申明對執行沒有任何影響
15、盡可能不使用游標,它佔用大量的資源。如果需要row-by-row地執行,盡量採用非游標技術,如:在客戶端循環,用臨時表,Table變數,用子查詢,用Case語句等等。游標可以按照它所支持的提取選項進行分類: 只進 必須按照從第一行到最後一行的順序提取行。FETCH NEXT 是唯一允許的提取操作,也是默認方式。可滾動性 可以在游標中任何地方隨機提取任意行。游標的技術在SQL2000下變得功能很強大,他的目的是支持循環。有四個並發選項 READ_ONLY:不允許通過游標定位更新(Update),且在組成結果集的行中沒有鎖。 OPTIMISTIC WITH valueS:樂觀並發控制是事務控制理論的一個標准部分。樂觀並發控制用於這樣的情形,即在打開游標及更新行的間隔中,只有很小的機會讓第二個用戶更新某一行。當某個游標以此選項打開時,沒有鎖控制其中的行,這將有助於最大化其處理能力。如果用戶試圖修改某一行,則此行的當前值會與最後一次提取此行時獲取的值進行比較。如果任何值發生改變,則伺服器就會知道其他人已更新了此行,並會返回一個錯誤。如果值是一樣的,伺服器就執行修改。 選擇這個並發選項�OPTIMISTIC WITH ROW VERSIONING:此樂觀並發控制選項基於行版本控制。使用行版本控制,其中的表必須具有某種版本標識符,伺服器可用它來確定該行在讀入游標後是否有所更改。在 SQL Server 中,這個性能由 timestamp 數據類型提供,它是一個二進制數字,表示資料庫中更改的相對順序。每個資料庫都有一個全局當前時間戳值:@@DBTS。每次以任何方式更改帶有 timestamp 列的行時,SQL Server 先在時間戳列中存儲當前的 @@DBTS 值,然後增加 @@DBTS 的值。如果某 個表具有 timestamp 列,則時間戳會被記到行級。伺服器就可以比較某行的當前時間戳值和上次提取時所存儲的時間戳值,從而確定該行是否已更新。伺服器不必比較所有列的值,只需比較 timestamp 列即可。如果應用程序對沒有 timestamp 列的表要求基於行版本控制的樂觀並發,則游標默認為基於數值的樂觀並發控制。 SCROLL LOCKS 這個選項實現悲觀並發控制。在悲觀並發控制中,在把資料庫的行讀入游標結果集時,應用程序將試圖鎖定資料庫行。在使用伺服器游標時,將行讀入游標時會在其上放置一個更新鎖。如果在事務內打開游標,則該事務更新鎖將一直保持到事務被提交或回滾;當提取下一行時,將除去游標鎖。如果在事務外打開游標,則提取下一行時,鎖就被丟棄。因此,每當用戶需要完全的悲觀並發控制時,游標都應在事務內打開。更新鎖將阻止任何其它任務獲取更新鎖或排它鎖,從而阻止其它任務更新該行。然而,更新鎖並不阻止共享鎖,所以它不會阻止其它任務讀取行,除非第二個任務也在要求帶更新鎖的讀取。滾動鎖根據在游標定義的 SELECT 語句中指定的鎖提示,這些游標並發選項可以生成滾動鎖。滾動鎖在提取時在每行上獲取,並保持到下次提取或者游標關閉,以先發生者為准。下次提取時,伺服器為新提取中的行獲取滾動鎖,並釋放上次提取中行的滾動鎖。滾動鎖獨立於事務鎖,並可以保持到一個提交或回滾操作之後。如果提交時關閉游標的選項為關,則 COMMIT 語句並不關閉任何打開的游標,而且滾動鎖被保留到提交之後,以維護對所提取數據的隔離。所獲取滾動鎖的類型取決於游標並發選項和游標 SELECT 語句中的鎖提示。鎖提示 只讀 樂觀數值 樂觀行版本控制 鎖定無提示 未鎖定 未鎖定 未鎖定 更新 NOLOCK 未鎖定 未鎖定 未鎖定 未鎖定 HOLDLOCK 共享 共享 共享 更新 UPDLOCK 錯誤 更新 更新 更新 TABLOCKX 錯誤 未鎖定 未鎖定 更新其它 未鎖定 未鎖定 未鎖定 更新 *指定 NOLOCK 提示將使指定了該提示的表在游標內是只讀的。
16、用Profiler來跟蹤查詢,得到查詢所需的時間,找出SQL的問題所在;用索引優化器優化索引
17、注意UNion和UNion all 的區別。UNION all好
18、注意使用DISTINCT,在沒有必要時不要用,它同UNION一樣會使查詢變慢。重復的記錄在查詢里是沒有問題的
19、查詢時不要返回不需要的行、列
20、用sp_configure 'query governor cost limit'或者SET QUERY_GOVERNOR_COST_LIMIT來限制查詢消耗的資源。當評估查詢消耗的資源超出限制時,伺服器自動取消查詢,在查詢之前就扼殺掉。SET LOCKTIME設置鎖的時間
21、用select top 100 / 10 Percent 來限制用戶返回的行數或者SET ROWCOUNT來限制操作的行
22、在SQL2000以前,一般不要用如下的字句: "IS NULL", "<>", "!=", "!>", "!<", "NOT", "NOT EXISTS", "NOT IN", "NOT LIKE", and "LIKE '%500'",因為他們不走索引全是表掃描。也不要在WHere字句中的列名加函數,如Convert,substring等,如果必須用函數的時候,創建計算列再創建索引來替代.還可以變通寫法:WHERE SUBSTRING(firstname,1,1) = 'm'改為WHERE firstname like 'm%'(索引掃描),一定要將函數和列名分開。並且索引不能建得太多和太大。NOT IN會多次掃描表,使用EXISTS、NOT EXISTS ,IN , LEFT OUTER JOIN 來替代,特別是左連接,而Exists比IN更快,最慢的是NOT操作.如果列的值含有空,以前它的索引不起作用,現在2000的優化器能夠處理了。相同的是IS NULL,"NOT", "NOT EXISTS", "NOT IN"能優化她,而"<>"等還是不能優化,用不到索引。
23、使用Query Analyzer,查看SQL語句的查詢計劃和評估分析是否是優化的SQL。一般的20%的代碼占據了80%的資源,我們優化的重點是這些慢的地方。
24、如果使用了IN或者OR等時發現查詢沒有走索引,使用顯示申明指定索引:
SELECT * FROM PersonMember (INDEX = IX_Title) WHERE processid IN ('男','女')
25、將需要查詢的結果預先計算好放在表中,查詢的時候再SELECT。這在SQL7.0以前是最重要的手段。例如醫院的住院費計算。
26、MIN() 和 MAX()能使用到合適的索引。
27、資料庫有一個原則是代碼離數據越近越好,所以優先選擇Default,依次為Rules,Triggers, Constraint(約束如外健主健CheckUNIQUE……,數據類型的最大長度等等都是約束),Procere.這樣不僅維護工作小,編寫程序質量高,並且執行的速度快。
28、如果要插入大的二進制值到Image列,使用存儲過程,千萬不要用內嵌INsert來插入(不知JAVA是否)。因為這樣應用程序首先將二進制值轉換成字元串(尺寸是它的兩倍),伺服器受到字元後又將他轉換成二進制值.存儲過程就沒有這些動作: 方法:
Create procere p_insert as insert into table(Fimage) values (@image)
在前台調用這個存儲過程傳入二進制參數,這樣處理速度明顯改善。
29、Between在某些時候比IN速度更快,Between能夠更快地根據索引找到范圍。用查詢優化器可見到差別。
select * from chineseresume where title in ('男','女')
Select * from chineseresume where title between '男' and '女'
是一樣的。由於in會在比較多次,所以有時會慢些。
30、在必要是對全局或者局部臨時表創建索引,有時能夠提高速度,但不是一定會這樣,因為索引也耗費大量的資源。他的創建同是實際表一樣。
31、不要建沒有作用的事物例如產生報表時,浪費資源。只有在必要使用事物時使用它。
32、用OR的字句可以分解成多個查詢,並且通過UNION 連接多個查詢。他們的速度只同是否使用索引有關,如果查詢需要用到聯合索引,用UNION all執行的效率更高.多個OR的字句沒有用到索引,改寫成UNION的形式再試圖與索引匹配。一個關鍵的問題是否用到索引。
33、盡量少用視圖,它的效率低。對視圖操作比直接對表操作慢,可以用stored procere來代替她。特別的是不要用視圖嵌套,嵌套視圖增加了尋找原始資料的難度。我們看視圖的本質:它是存放在伺服器上的被優化好了的已經產生了查詢規劃的SQL。對單個表檢索數據時,不要使用指向多個表的視圖,直接從表檢索或者僅僅包含這個表的視圖上讀,否則增加了不必要的開銷,查詢受到干擾.為了加快視圖的查詢,MsSQL增加了視圖索引的功能。
34、沒有必要時不要用DISTINCT和ORDER BY,這些動作可以改在客戶端執行。它們增加了額外的開銷。這同UNION 和UNION ALL一樣的道理。
select top 20 ad.companyname,comid,position,ad.referenceid,worklocation,
convert(varchar(10),ad.postDate,120) as postDate1,workyear,degreedescription FROM
jobcn_query.dbo.COMPANYAD_query ad where referenceID in('JCNAD00329667','JCNAD132168','JCNAD00337748','JCNAD00338345',
'JCNAD00333138','JCNAD00303570','JCNAD00303569',
'JCNAD00303568','JCNAD00306698','JCNAD00231935','JCNAD00231933',
'JCNAD00254567','JCNAD00254585','JCNAD00254608',
'JCNAD00254607','JCNAD00258524','JCNAD00332133','JCNAD00268618',
'JCNAD00279196','JCNAD00268613') order by postdate desc
35、在IN後面值的列表中,將出現最頻繁的值放在最前面,出現得最少的放在最後面,減少判斷的次數。
36、當用SELECT INTO時,它會鎖住系統表(sysobjects,sysindexes等等),阻塞其他的連接的存取。創建臨時表時用顯示申明語句,而不是
select INTO. drop table t_lxh begin tran select * into t_lxh from chineseresume
where name = 'XYZ' --commit
在另一個連接中SELECT * from sysobjects可以看到 SELECT INTO 會鎖住系統表,Create table 也會鎖系統表(不管是臨時表還是系統表)。所以千萬不要在事物內使用它!!!這樣的話如果是經常要用的臨時表請使用實表,或者臨時表變數。
37、一般在GROUP BY 個HAVING字句之前就能剔除多餘的行,所以盡量不要用它們來做剔除行的工作。他們的執行順序應該如下最優:select 的Where字句選擇所有合適的行,Group By用來分組個統計行,Having字句用來剔除多餘的分組。這樣Group By 個Having的開銷小,查詢快.對於大的數據行進行分組和Having十分消耗資源。如果Group BY的目的不包括計算,只是分組,那麼用Distinct更快
38、一次更新多條記錄比分多次更新每次一條快,就是說批處理好
39、少用臨時表,盡量用結果集和Table類性的變數來代替它,Table 類型的變數比臨時表好
40、在SQL2000下,計算欄位是可以索引的,需要滿足的條件如下:
a、計算欄位的表達是確定的
b、不能用在TEXT,Ntext,Image數據類型
c、必須配製如下選項 ANSI_NULLS = ON, ANSI_PADDINGS = ON, …….
41、盡量將數據的處理工作放在伺服器上,減少網路的開銷,如使用存儲過程。存儲過程是編譯好、優化過、並且被組織到一個執行規劃里、且存儲在資料庫中的SQL語句,是控制流語言的集合,速度當然快。反復執行的動態SQL,可以使用臨時存儲過程,該過程(臨時表)被放在Tempdb中。以前由於SQL SERVER對復雜的數學計算不支持,所以不得不將這個工作放在其他的層上而增加網路的開銷。SQL2000支持UDFs,現在支持復雜的數學計算,函數的返回值不要太大,這樣的開銷很大。用戶自定義函數象游標一樣執行的消耗大量的資源,如果返回大的結果採用存儲過程
42、不要在一句話里再三的使用相同的函數,浪費資源,將結果放在變數里再調用更快
43、SELECT COUNT(*)的效率教低,盡量變通他的寫法,而EXISTS快.同時請注意區別: select count(Field of null) from Table 和 select count(Field of NOT null) from Table 的返回值是不同的!!!
44、當伺服器的內存夠多時,配製線程數量 = 最大連接數+5,這樣能發揮最大的效率;否則使用 配製線程數量<最大連接數啟用SQL SERVER的線程池來解決,如果還是數量 = 最大連接數+5,嚴重的損害伺服器的性能。
45、按照一定的次序來訪問你的表。如果你先鎖住表A,再鎖住表B,那麼在所有的存儲過程中都要按照這個順序來鎖定它們。如果你(不經意的)某個存儲過程中先鎖定表B,再鎖定表A,這可能就會導致一個死鎖。如果鎖定順序沒有被預先詳細的設計好,死鎖很難被發現
46、通過SQL Server Performance Monitor監視相應硬體的負載 Memory: Page Faults / sec計數器如果該值偶爾走高,表明當時有線程競爭內存。如果持續很高,則內存可能是瓶頸。
Process:
1、% DPC Time 指在範例間隔期間處理器用在緩延程序調用(DPC)接收和提供服務的百分比。(DPC 正在運行的為比標准間隔優先權低的間隔)。 由於 DPC 是以特權模式執行的,DPC 時間的百分比為特權時間 百分比的一部分。這些時間單獨計算並且不屬於間隔計算總數的一部 分。這個總數顯示了作為實例時間百分比的平均忙時。
2、%Processor Time計數器 如果該參數值持續超過95%,表明瓶頸是CPU。可以考慮增加一個處理器或換一個更快的處理器。
3、% Privileged Time 指非閑置處理器時間用於特權模式的百分比。(特權模式是為操作系統組件和操縱硬體驅動程序而設計的一種處理模式。它允許直接訪問硬體和所有內存。另一種模式為用戶模式,它是一種為應用程序、環境分系統和整數分系統設計的一種有限處理模式。操作系統將應用程序線程轉換成特權模式以訪問操作系統服務)。 特權時間的 % 包括為間斷和 DPC 提供服務的時間。特權時間比率高可能是由於失敗設備產生的大數量的間隔而引起的。這個計數器將平均忙時作為樣本時間的一部分顯示。
4、% User Time表示耗費CPU的資料庫操作,如排序,執行aggregate functions等。如果該值很高,可考慮增加索引,盡量使用簡單的表聯接,水平分割大表格等方法來降低該值。 Physical Disk: Curretn Disk Queue Length計數器該值應不超過磁碟數的1.5~2倍。要提高性能,可增加磁碟。 SQLServer:Cache Hit Ratio計數器該值越高越好。如果持續低於80%,應考慮增加內存。 注意該參數值是從SQL Server啟動後,就一直累加記數,所以運行經過一段時間後,該值將不能反映系統當前值。
47、分析select emp_name form employee where salary > 3000 在此語句中若salary是Float類型的,則優化器對其進行優化為Convert(float,3000),因為3000是個整數,我們應在編程時使用3000.0而不要等運行時讓DBMS進行轉化。同樣字元和整型數據的轉換。
48、查詢的關聯同寫的順序
select a.personMemberID, * from chineseresume a,personmember b where personMemberID
= b.referenceid and a.personMemberID = 'JCNPRH39681' (A = B ,B = '號碼')
select a.personMemberID, * from chineseresume a,personmember b where a.personMemberID
= b.referenceid and a.personMemberID = 'JCNPRH39681' and b.referenceid = 'JCNPRH39681' (A = B ,B = '號碼', A = '號碼')
select a.personMemberID, * from chineseresume a,personmember b where b.referenceid
= 'JCNPRH39681' and a.personMemberID = 'JCNPRH39681' (B = '號碼', A = '號碼')
49、
(1)IF 沒有輸入負責人代碼 THEN code1=0 code2=9999 ELSE code1=code2=負責人代碼 END IF 執行SQL語句為: SELECT 負責人名 FROM P2000 WHERE 負責人代碼>=:code1 AND負責人代碼 <=:code2
(2)IF 沒有輸入負責人代碼 THEN SELECT 負責人名 FROM P2000 ELSE code= 負責人代碼 SELECT 負責人代碼 FROM P2000 WHERE 負責人代碼=:code END IF 第一種方法只用了一條SQL語句,第二種方法用了兩條SQL語句。在沒有輸入負責人代碼時,第二種方法顯然比第一種方法執行效率高,因為它沒有限制條件;在輸入了負責人代碼時,第二種方法仍然比第一種方法效率高,不僅是少了一個限制條件,還因相等運算是最快的查詢運算。我們寫程序不要怕麻煩
50、關於JOBCN現在查詢分頁的新方法(如下),用性能優化器分析性能的瓶頸,如果在I/O或者網路的速度上,如下的方法優化切實有效,如果在CPU或者內存上,用現在的方法更好。請區分如下的方法,說明索引越小越好。
begin
DECLARE @local_variable table (FID int identity(1,1),ReferenceID varchar(20))
insert into @local_variable (ReferenceID)
select top 100000 ReferenceID from chineseresume order by ReferenceID
select * from @local_variable where Fid > 40 and fid <= 60
end
和
begin
DECLARE @local_variable table (FID int identity(1,1),ReferenceID varchar(20))
insert into @local_variable (ReferenceID)
select top 100000 ReferenceID from chineseresume order by updatedate
select * from @local_variable where Fid > 40 and fid <= 60
end
的不同
begin
create table #temp (FID int identity(1,1),ReferenceID varchar(20))
insert into #temp (ReferenceID)
select top 100000 ReferenceID from chineseresume order by updatedate
select * from #temp where Fid > 40 and fid <= 60 drop table #temp
end
㈡ 自己在家能做傳奇私服嗎怎麼做
您好,現在好玩的游戲好難找的現在,最受歡迎的還是傳奇和仙俠手游,當然每個時期流行的游戲都不一樣。畢竟手游很快紅起來,又很快沒人玩了,每個人的口味都不一樣,選起來也方便,地址【點擊官方鏈接領福利】 比較實用的還是網路旗下推薦給你這樣一個手游排行榜,裡麵包含大榜單,新游期待榜熱門手游榜,親可以依據具體情況去選擇,這里每天都更新,現在最多人玩的游戲一看就知道了,還有一個對應的,直接拿禮包,親可以看看。 下班無聊玩玩還可以,可不要上癮哦。友情提示:抵制不良游戲,拒絕盜版游戲。 注意自我保護,謹防受騙上當。 適度游戲益腦,沉迷游戲傷身。 合理安排時間,享受健康生活。適齡提示:適合18歲以上使用。
㈢ mssql大數據檢索問題
我是來混分的
我的意見是
創建索引, 移除歷史數據到備份表中
下面的內容來自別人總結的, 呵呵
1、1、調整數據結構的設計。這一部分在開發信息系統之前完成,程序員需要考慮是否使用ORACLE資料庫的分區功能,對於經常訪問的資料庫表是否需要建立索引等。
2、2、調整應用程序結構設計。這一部分也是在開發信息系統之前完成,程序員在這一步需要考慮應用程序使用什麼樣的體系結構,是使用傳統的Client/Server兩層體系結構,還是使用Browser/Web/Database的三層體系結構。不同的應用程序體系結構要求的資料庫資源是不同的。
3、3、調整資料庫SQL語句。應用程序的執行最終將歸結為資料庫中的SQL語句執行,因此SQL語句的執行效率最終決定了ORACLE資料庫的性能。ORACLE公司推薦使用ORACLE語句優化器(Oracle Optimizer)和行鎖管理器(row-level manager)來調整優化SQL語句。
4、4、調整伺服器內存分配。內存分配是在信息系統運行過程中優化配置的,資料庫管理員可以根據資料庫運行狀況調整資料庫系統全局區(SGA區)的數據緩沖區、日誌緩沖區和共享池的大小;還可以調整程序全局區(PGA區)的大小。需要注意的是,SGA區不是越大越好,SGA區過大會佔用操作系統使用的內存而引起虛擬內存的頁面交換,這樣反而會降低系統。
5、5、調整硬碟I/O,這一步是在信息系統開發之前完成的。資料庫管理員可以將組成同一個表空間的數據文件放在不同的硬碟上,做到硬碟之間I/O負載均衡。
6、6、調整操作系統參數,例如:運行在UNIX操作系統上的ORACLE資料庫,可以調整UNIX數據緩沖池的大小,每個進程所能使用的內存大小等參數。
實際上,上述資料庫優化措施之間是相互聯系的。ORACLE資料庫性能惡化表現基本上都是用戶響應時間比較長,需要用戶長時間的等待。但性能惡化的原因卻是多種多樣的,有時是多個因素共同造成了性能惡化的結果,這就需要資料庫管理員有比較全面的計算機知識,能夠敏感地察覺到影響資料庫性能的主要原因所在。另外,良好的資料庫管理工具對於優化資料庫性能也是很重要的。
ORACLE資料庫性能優化工具
常用的資料庫性能優化工具有:
1、1、ORACLE資料庫在線數據字典,ORACLE在線數據字典能夠反映出ORACLE動態運行情況,對於調整資料庫性能是很有幫助的。
2、2、操作系統工具,例如UNIX操作系統的vmstat,iostat等命令可以查看到系統系統級內存和硬碟I/O的使用情況,這些工具對於管理員弄清出系統瓶頸出現在什麼地方有時候很有用。
3、3、SQL語言跟蹤工具(SQL TRACE FACILITY),SQL語言跟蹤工具可以記錄SQL語句的執行情況,管理員可以使用虛擬表來調整實例,使用SQL語句跟蹤文件調整應用程序性能。SQL語言跟蹤工具將結果輸出成一個操作系統的文件,管理員可以使用TKPROF工具查看這些文件。
4、4、ORACLE Enterprise Manager(OEM),這是一個圖形的用戶管理界面,用戶可以使用它方便地進行資料庫管理而不必記住復雜的ORACLE資料庫管理的命令。
5、5、EXPLAIN PLAN——SQL語言優化命令,使用這個命令可以幫助程序員寫出高效的SQL語言。
ORACLE資料庫的系統性能評估
信息系統的類型不同,需要關注的資料庫參數也是不同的。資料庫管理員需要根據自己的信息系統的類型著重考慮不同的資料庫參數。
1、1、在線事務處理信息系統(OLTP),這種類型的信息系統一般需要有大量的Insert、Update操作,典型的系統包括民航機票發售系統、銀行儲蓄系統等。OLTP系統需要保證資料庫的並發性、可靠性和最終用戶的速度,這類系統使用的ORACLE資料庫需要主要考慮下述參數:
l l 資料庫回滾段是否足夠?
l l 是否需要建立ORACLE資料庫索引、聚集、散列?
l l 系統全局區(SGA)大小是否足夠?
l l SQL語句是否高效?
2、2、數據倉庫系統(Data Warehousing),這種信息系統的主要任務是從ORACLE的海量數據中進行查詢,得到數據之間的某些規律。資料庫管理員需要為這種類型的ORACLE資料庫著重考慮下述參數:
l l 是否採用B*-索引或者bitmap索引?
l l 是否採用並行SQL查詢以提高查詢效率?
l l 是否採用PL/SQL函數編寫存儲過程?
l l 有必要的話,需要建立並行資料庫提高資料庫的查詢效率
SQL語句的調整原則
SQL語言是一種靈活的語言,相同的功能可以使用不同的語句來實現,但是語句的執行效率是很不相同的。程序員可以使用EXPLAIN PLAN語句來比較各種實現方案,並選出最優的實現方案。總得來講,程序員寫SQL語句需要滿足考慮如下規則:
1、1、盡量使用索引。試比較下面兩條SQL語句:
語句A:SELECT dname, deptno FROM dept WHERE deptno NOT IN
(SELECT deptno FROM emp);
語句B:SELECT dname, deptno FROM dept WHERE NOT EXISTS
(SELECT deptno FROM emp WHERE dept.deptno = emp.deptno);
這兩條查詢語句實現的結果是相同的,但是執行語句A的時候,ORACLE會對整個emp表進行掃描,沒有使用建立在emp表上的deptno索引,執行語句B的時候,由於在子查詢中使用了聯合查詢,ORACLE只是對emp表進行的部分數據掃描,並利用了deptno列的索引,所以語句B的效率要比語句A的效率高一些。
2、2、選擇聯合查詢的聯合次序。考慮下面的例子:
SELECT stuff FROM taba a, tabb b, tabc c
WHERE a.acol between :alow and :ahigh
AND b.bcol between :blow and :bhigh
AND c.ccol between :clow and :chigh
AND a.key1 = b.key1
AMD a.key2 = c.key2;
這個SQL例子中,程序員首先需要選擇要查詢的主表,因為主表要進行整個表數據的掃描,所以主表應該數據量最小,所以例子中表A的acol列的范圍應該比表B和表C相應列的范圍小。
3、3、在子查詢中慎重使用IN或者NOT IN語句,使用where (NOT) exists的效果要好的多。
4、4、慎重使用視圖的聯合查詢,尤其是比較復雜的視圖之間的聯合查詢。一般對視圖的查詢最好都分解為對數據表的直接查詢效果要好一些。
5、5、可以在參數文件中設置SHARED_POOL_RESERVED_SIZE參數,這個參數在SGA共享池中保留一個連續的內存空間,連續的內存空間有益於存放大的SQL程序包。
6、6、ORACLE公司提供的DBMS_SHARED_POOL程序可以幫助程序員將某些經常使用的存儲過程「釘」在SQL區中而不被換出內存,程序員對於經常使用並且佔用內存很多的存儲過程「釘」到內存中有利於提高最終用戶的響應時間。
CPU參數的調整
CPU是伺服器的一項重要資源,伺服器良好的工作狀態是在工作高峰時CPU的使用率在90%以上。如果空閑時間CPU使用率就在90%以上,說明伺服器缺乏CPU資源,如果工作高峰時CPU使用率仍然很低,說明伺服器CPU資源還比較富餘。
使用操作相同命令可以看到CPU的使用情況,一般UNIX操作系統的伺服器,可以使用sar –u命令查看CPU的使用率,NT操作系統的伺服器,可以使用NT的性能管理器來查看CPU的使用率。
資料庫管理員可以通過查看v$sysstat數據字典中「CPU used by this session」統計項得知ORACLE資料庫使用的CPU時間,查看「OS User level CPU time」統計項得知操作系統用戶態下的CPU時間,查看「OS System call CPU time」統計項得知操作系統系統態下的CPU時間,操作系統總的CPU時間就是用戶態和系統態時間之和,如果ORACLE資料庫使用的CPU時間占操作系統總的CPU時間90%以上,說明伺服器CPU基本上被ORACLE資料庫使用著,這是合理,反之,說明伺服器CPU被其它程序佔用過多,ORACLE資料庫無法得到更多的CPU時間。
資料庫管理員還可以通過查看v$sesstat數據字典來獲得當前連接ORACLE資料庫各個會話佔用的CPU時間,從而得知什麼會話耗用伺服器CPU比較多。
出現CPU資源不足的情況是很多的:SQL語句的重解析、低效率的SQL語句、鎖沖突都會引起CPU資源不足。
1、資料庫管理員可以執行下述語句來查看SQL語句的解析情況:
SELECT * FROM V$SYSSTAT
WHERE NAME IN
('parse time cpu', 'parse time elapsed', 'parse count (hard)');
這里parse time cpu是系統服務時間,parse time elapsed是響應時間,用戶等待時間
waite time = parse time elapsed – parse time cpu
由此可以得到用戶SQL語句平均解析等待時間=waite time / parse count。這個平均等待時間應該接近於0,如果平均解析等待時間過長,資料庫管理員可以通過下述語句
SELECT SQL_TEXT, PARSE_CALLS, EXECUTIONS FROM V$SQLAREA
ORDER BY PARSE_CALLS;
來發現是什麼SQL語句解析效率比較低。程序員可以優化這些語句,或者增加ORACLE參數SESSION_CACHED_CURSORS的值。
2、資料庫管理員還可以通過下述語句:
SELECT BUFFER_GETS, EXECUTIONS, SQL_TEXT FROM V$SQLAREA;
查看低效率的SQL語句,優化這些語句也有助於提高CPU的利用率。
3、3、資料庫管理員可以通過v$system_event數據字典中的「latch free」統計項查看ORACLE資料庫的沖突情況,如果沒有沖突的話,latch free查詢出來沒有結果。如果沖突太大的話,資料庫管理員可以降低spin_count參數值,來消除高的CPU使用率。
內存參數的調整
內存參數的調整主要是指ORACLE資料庫的系統全局區(SGA)的調整。SGA主要由三部分構成:共享池、數據緩沖區、日誌緩沖區。
1、 1、 共享池由兩部分構成:共享SQL區和數據字典緩沖區,共享SQL區是存放用戶SQL命令的區域,數據字典緩沖區存放資料庫運行的動態信息。資料庫管理員通過執行下述語句:
select (sum(pins - reloads)) / sum(pins) "Lib Cache" from v$librarycache;
來查看共享SQL區的使用率。這個使用率應該在90%以上,否則需要增加共享池的大小。資料庫管理員還可以執行下述語句:
select (sum(gets - getmisses - usage - fixed)) / sum(gets) "Row Cache" from v$rowcache;
查看數據字典緩沖區的使用率,這個使用率也應該在90%以上,否則需要增加共享池的大小。
2、 2、 數據緩沖區。資料庫管理員可以通過下述語句:
SELECT name, value FROM v$sysstat WHERE name IN ('db block gets', 'consistent gets','physical reads');
來查看資料庫數據緩沖區的使用情況。查詢出來的結果可以計算出來數據緩沖區的使用命中率=1 - ( physical reads / (db block gets + consistent gets) )。
這個命中率應該在90%以上,否則需要增加數據緩沖區的大小。
3、 3、 日誌緩沖區。資料庫管理員可以通過執行下述語句:
select name,value from v$sysstat where name in ('redo entries','redo log space requests');查看日誌緩沖區的使用情況。查詢出的結果可以計算出日誌緩沖區的申請失敗率:
申請失敗率=requests/entries,申請失敗率應該接近於0,否則說明日誌緩沖區開設太小,需要增加ORACLE資料庫的日誌緩沖區。
㈣ 英國地調局地質調查資料數據服務概況
趙小平
(中國地質調查局發展研究中心,北京100037)
摘要 本文從服務產品、服務方式、價格機制及版權政策等方面概要介紹了英國地調局的地質資料數據服務現狀。
關鍵詞 地質資料;服務產品;服務方式;版權政策
英國地調局(BGS)成立於1835年,是世界上成立最早的國家級地質調查機構,也是英國最主要的地學信息中心。作為一個公共服務部門,英國地調局的主要職責是向英國各級政府部門提供全方位的地學建議,並向企業、學術團體和公眾提供公正的地學建議。近年來,由於社會環境的巨大變化,英國地調局的目標使命也發生了相應的變化,越來越重視地學信息的社會化服務和地學信息技術的開發利用,並在服務范圍和服務方式上進行了較大的調整,將自己定位為一個知識型科學服務提供者和一個著眼於用戶的戰略性地學組織。本文將從服務產品、服務方式、價格機制及版權政策等多個方面對英國地調局的地質調查資料服務進行全方位的介紹。
1 服務產品豐富多樣,種類繁多
作為世界上歷史最悠久的調查局,英國地調局的地質調查工作區域不僅涵蓋英國本土,還包括英聯邦各成員國以及其他國家,工作成果相當豐富,提供的地學產品種類繁多。根據產品的性質,主要劃分為:①地質圖。包括各種比例尺的地質圖,這些地學圖件大部分以列印形式提供,小部分為影印版,可以按需生產。部分地學圖件提供了索引地圖,用戶可根據索引地圖搜索和提取相關信息。②地質書籍和地質指南。包括地質研究報告、特殊區域地質指南、特殊地區圖冊等。③地球化學、地球物理和水文地質數據產品。主要包括各類地球化學圖冊、地球物理圖冊、地下水脆弱性圖冊、水文地質圖以及水文地質報告。④礦產方面的出版物。即大量與英國礦產資源相關的出版物,內容涉及礦產評估報告、礦產勘查報告、重要礦產評估報告、地方和區域資源評價報告、礦產品開采統計數據等。⑤教育和休閑產品。即一些科普讀物,主要受眾是那些業餘地質愛好者和學生。
特別值得關注的是英國地調局地學數據中心擁有大量的數字數據產品,這些產品主要分為數字地學圖件和數字數據。數字地學圖件:英國地調局利用地理信息系統(GIS)生成了大量標準的數字地學圖件,其中數字地學圖件有陸地地質圖、近海地質圖、地球化學圖、地球物理圖和1:25萬海洋測深圖,礦產資源圖和水文地質圖即將以數字形式提供利用。數字地學圖件分為光柵圖像和矢量數據,並具有多種格式和結構,如 ArcView和Mapinfo或其他格式,具體視主題而定,其價格根據圖層區域、不同專題和不同比例尺而變化。數字地學數據:英國地調局擁有大量數字地學數據,數據涵蓋地球化學、地球物理、地質災害、水文地質、填圖、礦產資源等多個領域。這些數據均可通過英國地調局的地學數據索引系統GDI(Geoscience Data Index)進行查詢,但所有數據均須簽訂版權協議之後才能使用。英國地調局還擁有龐大的元數據查詢庫,通過該資料庫,用戶可以查詢以下類別的元數據:鑽孔、工程地質、坑探工程、常用地質術語、地球化學、地質年代學、地質圖、地質論文集、地質過程模擬、地質分區、地球物理、水文地質、陸地調查、岩相學、海洋地質、礦產、古生物、石油地質、岩石學、區域地質、遙感、采樣、沉積地質、地震地質、基岩地質、標本採集、地層學和構造地質等。
2 地質資料數據的網路服務先進、完善
英國的地質調查成果信息化程度較高,已經建立了數十個相關地學資料庫,並大力開發基於網路環境的數據服務平台。從世界范圍來看,英國地調局的地質調查資料數據在線服務開展得相對較早,並且在世界上率先採用了地質資料數據一站式服務模式,即用戶只需登錄英國地調局的網上商店,便可檢索並訂購英國地調局提供的各項數據服務,獲得自己所需的地質資料數據。這種服務模式使得用戶在指定地點同時完成以往需要在多個地點多次完成的任務,使用戶的操作更加方便快捷,大大提高了資料數據的服務效率。
英國網上商店的功能全面,用戶可以瀏覽了解英國地調局所有的分類成果信息與相應價格,通過網上填寫訂單與直接填寫信用卡兩種方式進行購買。例如,用戶選定一個區域,希望了解該地區基礎地質情況,或者放射性岩石分布情況,在網上提交需求並付費,英國地調局的在線服務系統就會自動搜索網上的資料庫,按照標准報告格式,自動抽取相應文字資料、數據、圖件,形成一個電子報告,並發送給用戶。網上商店主頁設置的功能模塊主要有產品目錄、檢索、簡訊、購物筐、立即購買和聯系方式等。產品目錄模塊主要羅列了教育和休閑產品、地質圖、地質類書籍和指南、地球化學地球物理及水文地質學、礦產類出版物、國外地學出版物和技術類出版物、圖件索引7個產品類別,點擊這些產品類別用戶可以獲得相關產品的簡要介紹和產品目錄。在檢索功能模塊中,用戶可以在檢索欄中輸入檢索信息直接進行檢索,也可以點擊「按類別檢索」、「按產品檢索」和「按圖形檢索」3個輔助功能鍵進行檢索。簡訊模塊主要用於發布最新的產品信息,幫助用戶了解英國地調局新近有哪些產品開始提供利用服務。相關鏈接欄目則用於網上商店的相關信息鏈接,如「目錄下載」、「如何使用網上商店」、「產品使用條件和條款」等。
3 服務方式靈活,產品價格明確
3.1 服務方式靈活
作為一個以市場經濟為主的發達國家,英國地調局的數據資料產品服務方式多樣,手段靈活。英國地調局在諾丁漢、愛丁堡、倫敦等地設置了多個產品直銷點,主要產品有地質圖、地球物理圖、地球化學及環境災害方面的圖件、地學科普讀物、岩石礦物標本以及二次加工的人文裝飾用品、數字產品光碟;還出售英國軍測局出版的不同比例尺的地形圖等。這些直銷點同時接受郵件訂購服務和數據產品加工服務。英國地調局的地學數據資料除該局的直銷點之外,也可由許多從事專門服務的機構網站,如房地產商(涉及開發地段的地質、環境、地下水等與地質有關的信息)進行分銷,英國地調局向分銷商返回一定比例的銷售收入(如對房地產商為20%左右)。
隨著網路的興起和繁榮,英國地調局在地學數據資料網路服務方面也投入了大量的精力和資金,並緊跟電子商務潮的流行,與英國電子商務委員會合作設立了專門的網上商店,增加了電子商務專欄。用戶可以直接通過網路查看並了解英國地調局所有的分類成果信息與相應價格,並通過網路購買所需地學資料。
3.2 產品價格明確
英國地調局地學數據資料的網上價格(含稅、工本費、運費),主要由數據信息中心與客戶服務部聯合根據市場客戶需求制定(政府不幹預,但需要依法納稅),並根據時間與地區的不同,對產品價格進行不斷的調整。所有產品都明碼標價,用戶可以在網上免費下載產品目錄和相應的價格信息。英國地調局產品的國內郵費隨產品定價的多少而不同,少於4.99英鎊的免費,5~9.99英鎊、10~19.99英鎊、20~29.99英鎊、30~49.99英鎊、50~99.99英鎊以及高於100英鎊的產品郵費分別為:1.25英鎊、1.95英鎊、2.95英鎊、3.95英鎊、5.50英鎊和7.50英鎊。對於國外用戶來說,郵費可能更高。英國地調局的部分產品還需另交增值稅,這在產品目錄中有說明,但出口產品不交增值稅。
英國地調局的地學數據產品價格相當明確,但並非一成不變,會根據具體使用條件(如使用年限和許可人數)而進行相應的調整。下面就以數字地學圖件為例進行說明。
英國地調局數字地學圖件針對用戶收取的費用稱為許可費。許可費中包括數據製作費(Data Prep-aration Charge,DPC)、數據使用費(Data Usage Charge,DUC)和許可證管理費(Licence Administra-tion Charge,LAC)。第一年的許可費包括數據製作費、數據使用費和許可證管理費。繼續使用費用則包括數據使用費和許可證管理費。需要注意的是,許可費中包括的數據製作費是指標準的數據製作費。如果客戶對GIS數據的結構、設計和數量有特殊要求,則需另行交納數據製作費,此數據製作費不同於作為數字許可費組成部分的那部分數據製作費。
表1 英國地調局數字地學圖件不同使用年限許可費表
表2 英國地調局的多用戶許可協議費階梯許可費表
英國地調局現行的產品許可費制度鼓勵用戶一次性購買較長使用年限的產品,也就是說,所購買產品的使用年限越長,就越節約成本(表1)。例如,要一次性獲取為期5年的許可,所需支付的費用為:5×DUC+DPC+LAC。如果打算按年度續約,則5年期許可所需支付的費用公式如下:第一年至第五年的費用分別為DUC+DPC+LAC,DUC+LAC,DUC+LAC,DUC+LAC,DUC+LAC,這樣,產品的5年使用許可費=5×DUC+DPC+5×LAC。按年度續約要比一次性簽約多交4倍的許可證管理費。
另外,該許可費制度還鼓勵用戶購買多用戶數據許可協議,即許可用戶數越多,價格越優惠。表2是英國地調局的多用戶許可協議費階梯許可費表。
4 版權、版稅及保密問題
4.1 版權
英國地調局作品版權的依據是1988年《版權設計和專利法》和《數字數據供給條件(2003~2004年)》的規定。英國地調局作品的版權屬於自然環境研究委員會(NERC),英國地調局知識產權管理處被授權代表自然環境研究委員會頒發這種許可證。為了不使版權受到侵犯,凡與作品版權有關事宜須經版權所有者的許可。在一般情況下,須持有特定的版權許可證,而且須交納適當的年費才可復制英國調查局的作品。持年(許可)證的受證人有權按規定摘錄英國地調局的圖件和其他文件轉給第三者,但這種許可證的受證人無權將英國地調局的作品當成受證人自己的作品,也無權以這種假象發表作品。
英國地調局的版權許可證不包括任何數字作品的復制和使用權,為此須得到專門許可。它也不包括英國地調局作品的其他推廣使用權,任何推廣使用都須得到單獨同意。使用英國地調局的攝影作品也要得到單獨許可。英國地調局頒發的數字作品一律須憑單獨的英國地調局頒發的數字作品許可證才能引用。每個許可證只能根據為受證人指定的幾項用途(或只根據許可證為受證人所在的單位、承包人或轉包人指定的幾項用途)使用數據集。對於已按預定的用途只使用了部分數字數據,後來未使用其餘部分的數字數據的許可證,不退許可證費。
4.2 版稅
如果所使用的數據經過處理或得到增值,從而提供了供咨詢合同用的產品或可公開出售的商品(不論以模擬形式還是數字形式),要向BGS交納版稅。版稅根據產品(商品)性質和發行的拷貝數量交納。如果將BGS的作品合到商業計算機信息系統,也要交納版稅。版稅數額和交納頻率要根據約定的條款和合同條例確定。BGS知識產權管理處應提前規定版稅的性質和版稅的數額,保證預期的產品(服務)不影響BGS自己使用作品。BGS保留免費徵收公開銷售的增值產品的拷貝交給地質資料館的權利。
4.3 保密制度
以英國地調局的圖件為例,其版權所有者既包括英國地調局,也包括軍械部。英國地調局的大多數地質圖使用軍械部的地形數據,後者屬「頂級版權」(Crown Copyright),英國地調局承認其地質圖和其他出版物的「頂級版權」(及其他版權所有人)。軍械部的作品只能經軍械部頒發給許多用戶的許可證才可復制。因沒有軍械部許可證而無法復制其地形數據的用戶,必須與軍械部進行交涉。僅憑軍械部許可證無權復制英國地調局的圖件;同樣,僅憑英國地調局許可證也無權復制受「頂級版權」保護的作品。
㈤ win10藍屏attempted_switch_form_dpc
「ATTEMPTED_SWITCH_FROM_DPC」也被稱為「STOP 0x100000B8」或指南未遂開關從死亡錯誤DPC藍屏 。Windows的一些用戶報告這個藍屏錯誤,這通常是系統的初始化過程中出現在屏幕上:
ATTEMPTED切換自DPC
在許多情況下,這種藍屏錯誤可能是由設備驅動程序,硬體或一個相關的軟體引起的,並自動執行電腦突然關機,以防止數據丟失。最近添加的硬體或更新的設備驅動程序,如視頻驅動程序,此錯誤的通常原因。這個藍屏錯誤的其他可能的原因是內存存在故障和防病毒/反間諜軟體。
為了解決這個「試圖把從DPC」藍屏錯誤,必須檢查計算機是否最近安裝的硬體,設備驅動程序,或其他相關軟體。通過下載和安裝設備驅動程序和更新分別從Windows Update替換損壞或過時的設備驅動程序。要進行手動更新,打開IE瀏覽器,點擊安全,然後選擇Windows Update並按照提示和說明。
也可以使用系統還原功能來解決這個藍屏錯誤。要執行此操作,請單擊開始按鈕,在對話框中鍵入系統還原,然後按Enter鍵。點擊系統,當它出現在搜索結果中恢復,並按照說明來安裝推薦的還原點。如果您希望將系統恢復到一個明確的日期和時間,選擇可供選擇的恢復實用程序窗口不同的還原點的選項,單擊下一步,然後按照提供的說明操作。
㈥ 什麼是DPC
所有測試可以幫助醫生正確地診斷和管理甲狀腺紊亂、糖尿病、心肌功能障礙、貧血、過敏、性激素功能紊亂、心臟病、傳染病、濫用葯物及腫瘤。
DPC的研究機構在諾貝爾獎得主Dr. James Watson的領導下,不斷開發和研製出大量世界一流品質的診斷產品,特別是1993年面世的全自動化學發光免疫分析系統(IMMULITE),以其卓越的性能和繁多的試劑盒種類風靡世界,而1998年面世的2000型全自動化學發光免疫分析儀系統(IMMULITE2000)更代表了全球非同位素免疫分析的最高水平回答:2005-08-05 11:28
㈦ 如何處理藍屏出錯 DPC WATCHDOG VIOLATION
處理方法:
1.清理灰塵,檢查內存條、硬碟等是否插牢;或者把內存互換插槽;
2.如果Windows 2000/XP可以啟動,請檢查「事件查看器」中的信息,以確定導致故障的設備或驅動程序。啟動「事件查看器」的方法是:「開始」\「設置」\「控制面板」\「管理工具」\「事件查看器」\「系統日誌」。
3.如果不能啟動計算機,試著用「安全模式」或「最後一次正確的配置」啟動計算機,然後刪除或禁用新安裝的附加程序或驅動程序。如果用「安全模式」啟動不了計算機,可使用修復控制台。修復控制台可以禁用一些服務、重新命名設備驅動程序、檢修引導扇區或主引導記錄。
4.拆下新安裝的硬體設備(RAM、適配卡、硬碟、等等)。
5.確保已經更新了硬體設備的驅動程序,以及系統有最新的BIOS。
6.運行由計算機製造商提供的系統診斷工具,尤其是內存檢查。
7.檢查Microsoft兼容硬體列表(HCL),確保所有的硬體和驅動程序都與Windows2000/XP兼容。Hcl.txt在Windows 2000/XP CD-ROM的\Support文件夾中。
8.在BIOS中禁用內存緩存功能。
9.重新啟動計算機,在啟動屏幕處,按F8進入「高級啟動選項」,然後選擇「最後一次正確的配置」。(注:使用「最後一次正確的配置」的方式啟動計算機,計算機的所有設置被重置為最後一次成功啟動時的配置。)
10.電腦中毒,使用如騰訊電腦管家等專業殺毒軟體進行全盤殺毒,並把隔離區的文件刪除,重啟電腦。
㈧ 蘋果手機foobar2000使用方法
本人電腦win10系統,foobar版本為1.4.1
實話說在前,win10的卡頓不算太多,但我有強迫症。。。
還有,我有聽歌時用電腦做其他事的習慣,此種做法會導致出現一定的卡頓,才研究的這些方法,就由此貼分享給大家,此貼僅供參考,希望在你foobar2000卡頓時能夠參照此貼找到一個改善思路,請大家閱讀此貼子時注意我對應的說明,都是我自己在實際使用過程當中總結出來的,由於本人水平有限,可能解釋的不是特別准確到位。
第一類方法:調節foobar2000自身的設置
1.緩沖長度選項
在foobar的 參數選項-播放-輸出 界面上有個緩沖長度的選項
界面如圖所示,單位為毫秒ms,當foobar卡頓時,可以通過適當拉高緩沖長度來提升流暢度,此項的作用是寫入內存的緩沖時長,故拉高可在一定程度上解決卡頓,個人推薦500——1000ms。
但請注意:
這個緩沖長度會影響聽感,短緩沖下,聲音解析度較高,但比較乾燥,齒音較多,極端情況下,超出了音效卡的能力范圍,甚至會出現爆音和短暫的停頓;高緩沖下,聲音j較潤,細節減少,但耐聽.極端情況下,超出音效卡緩存,會報錯。
2.全文件緩沖選項
在foobar的 參數選項-高級-播放 界面上有一個全文件緩沖的選項
界面如圖所示,這個選項的作用是設置播放時把源文件全部讀入內存的最大文件大小。我設置的是1048600kb,也就是略大於1G(即為1048576kb)
請注意:在測試過程中發現foobar最大支持1G的全文件緩沖,在設置上寫16G都沒用,它最大還是緩存1G文件(一般的無損文件很少超過1G),還試了試給foobar申請大內存,然並卵,最大就緩存1G。
個人認為:全文件緩沖解決問題的概率較高,內存的讀寫速度遠高於硬碟,哪怕是SSD,CPU直接從內存中讀取文件,而不再是從硬碟一點點提取到內存,再由CPU讀取,減少了中間過程,卡頓產生的幾率也就更小。如果你的電腦配置夠好,推薦使用第二種方法,例如我電腦是16G內存,分1G聽歌用總不過分吧(還不一定用滿),配置實在不行就用第一個方法,但影響聽感。
第二類方法:提升foobar的優先順序,並使其CPU親和力避開CPU0
實際使用中,如果你打開任務管理器會發現:CPU0的佔用率明顯高於CPU1234567......
也就是傳說中的「一核有難,n核圍觀」
究其原因,CPU0作為第一邏輯核心,什麼任務都會優先找上他,windows系統自帶的DPC(延遲過程調用),DPC會導致高優先順序進程打斷低優先順序進程,一旦來了優先順序更高的任務,那麼foobar的任務就被擱置了,也就卡了一下。
解決此問題的方法就是使用軟體 process lasso 調整
第一,調高優先順序
第二,調整CPU親和力(註:一定要避開CPU0)
第三,調整I/O優先順序
第四,調整內存優先順序
註:一定要在總是里更改
解釋一下我們這么做的目的
foobar本來也不太吃資源,還總被打斷,我們提升它這幾個方面:
1.優先順序:即進程優先順序,設為高,防止被打斷
2.CPU親和力:選擇使用率較低的CPU核心上運行foobar的進程
3.I/O優先順序:即該進程的調用硬碟資源的優先順序,設為高
4.內存優先順序:進程調用內存的優先順序
用個通俗的解釋就是:讓工人優先干foobar的小活,找比較閑的工人去干,倉庫的鑰匙給工人們,流水線也允許優先使用,這樣達到了從系統層面上優化foobar。
而DPC是底層系統的運行機制,相當於憲法,很難很難很難更改!!!
㈨ 阿里雲的主要產品
阿里雲的產品致力於提升運維效率,降低IT成本,令使用者更專注於核心業務發展。
雲伺服器ECS
一種簡單高效,處理能力可彈性伸縮的計算服務。助您快速構建更穩定、安全的應用。提升運維效率,降低IT成本,使您更專注於核心業務創新。
雲引擎ACE
一種彈性、分布式的應用託管環境,支持Java、PHP、Python、Node.js等多種語言環境。幫助開發者快速開發和部署服務端應用程序,並簡化系統維護工作。搭載了豐富的分布式擴展服務,為應用程序提供強大助力。
彈性伸縮
根據用戶的業務需求和策略,自動調整其彈性計算資源的管理服務。其能夠在業務增長時自動增加ECS實例,並在業務下降時自動減少ECS實例。
一種即開即用、穩定可靠、可彈性伸縮的在線資料庫服務。基於飛天分布式系統和高性能存儲,RDS支持MySQL、SQL Server、PostgreSQL和PPAS(高度兼容Oracle)引擎,並且提供了容災、備份、恢復、監控、遷移等方面的全套解決方案。
開放結構化數據服務OTS
構建在阿里雲飛天分布式系統之上的 NoSQL資料庫服務,提供海量結構化數據的存儲和實時訪問。OTS 以實例和表的形式組織數據,通過數據分片和負載均衡技術,實現規模上的無縫擴展。應用通過調用 OTS API / SDK 或者操作管理控制台來使用 OTS 服務。
開放緩存服務OCS
在線緩存服務,為熱點數據的訪問提供高速響應。
鍵值存儲KVStore for Redis
兼容開源Redis協議的Key-Value類型在線存儲服務。KVStore支持字元串、鏈表、集合、有序集合、哈希表等多種數據類型,及事務(Transactions)、消息訂閱與發布(Pub/Sub)等高級功能。通過內存+硬碟的存儲方式,KVStore在提供高速數據讀寫能力的同時滿足數據持久化需求。
數據傳輸
支持以資料庫為核心的結構化存儲產品之間的數據傳輸。 它是一種集數據遷移、數據訂閱及數據實時同步於一體的數據傳輸服務。 數據傳輸的底層數據流基礎設施為阿里雙11異地雙活基礎架構, 為數千下游應用提供實時數據流,已在線上穩定運行3年之久。
對象存儲OSS
阿里雲對外提供的海量、安全和高可靠的雲存儲服務。RESTFul API的平台無關性,容量和處理能力的彈性擴展,按實際容量付費真正使您專注於核心業務。
歸檔存儲
作為阿里雲數據存儲產品體系的重要組成部分,致力於提供低成本、高可靠的數據歸檔服務,適合於海量數據的長期歸檔、備份。
消息服務
一種高效、可靠、安全、便捷、可彈性擴展的分布式消息與通知服務。消息服務能夠幫助應用開發者在他們應用的分布式組件上自由的傳遞數據,構建松耦合系統。
CDN
內容分發網路將源站內容分發至全國所有的節點,縮短用戶查看對象的延遲,提高用戶訪問網站的響應速度與網站的可用性,解決網路帶寬小、用戶訪問量大、網點分布不均等問題。 負載均衡
對多台雲伺服器進行流量分發的負載均衡服務。負載均衡可以通過流量分發擴展應用系統對外的服務能力,通過消除單點故障提升應用系統的可用性。
專有網路VPC
幫助基於阿里雲構建出一個隔離的網路環境。可以完全掌控自己的虛擬網路,包括選擇自有 IP 地址范圍、劃分網段、配置路由表和網關等。也可以通過專線/VPN等連接方式將VPC與傳統數據中心組成一個按需定製的網路環境,實現應用的平滑遷移上雲。
開放數據處理服務ODPS
由阿里雲自主研發,提供針對TB/PB級數據、實時性要求不高的分布式處理能力,應用於數據分析、挖掘、商業智能等領域。阿里巴巴的離線數據業務都運行在ODPS上。
采雲間DPC
基於開放數據處理服務(ODPS)的DW/BI的工具解決方案。DPC提供全鏈路的易於上手的數據處理工具,包括ODPS IDE、任務調度、數據分析、報表製作和元數據管理等,可以大大降低用戶在數據倉庫和商業智能上的實施成本,加快實施進度。天弘基金、高德地圖的數據團隊基於DPC完成他們的大數據處理需求。
批量計算
一種適用於大規模並行批處理作業的分布式雲服務。批量計算可支持海量作業並發規模,系統自動完成資源管理,作業調度和數據載入,並按實際使用量計費。批量計算廣泛應用於電影動畫渲染,生物數據分析,多媒體轉碼,金融保險分析等領域。
數據集成
阿里集團對外提供的穩定高效、彈性伸縮的數據同步平台,為阿里雲大數據計算引擎(包括ODPS、分析型資料庫、OSPS)提供離線(批量)、實時(流式)的數據進出通道。
DDoS防護服務
針對阿里雲伺服器在遭受大流量的DDoS攻擊後導致服務不可用的情況下,推出的付費增值服務,用戶可以通過配置高防IP,將攻擊流量引流到高防IP,確保源站的穩定可靠。免費為阿里雲上客戶提供最高5G的DDoS防護能力。
安騎士
阿里雲推出的一款免費雲伺服器安全管理軟體,主要提供木馬文件查殺、防密碼暴力破解、高危漏洞修復等安全防護功能。
阿里綠網
基於深度學習技術及阿里巴巴多年的海量數據支撐, 提供多樣化的內容識別服務,能有效幫助用戶降低違規風險。
安全網路
一款集安全、加速和個性化負載均衡為一體的網路接入產品。用戶通過接入安全網路,可以緩解業務被各種網路攻擊造成的影響,提供就近訪問的動態加速功能。
DDoS高防IP
針對互聯網伺服器(包括非阿里雲主機)在遭受大流量的DDoS攻擊後導致服務不可用的情況下,推出的付費增值服務,用戶可以通過配置高防IP,將攻擊流量引流到高防IP,確保源站的穩定可靠。
網路安全專家服務
在雲盾DDoS高防IP服務的基礎上,推出的安全代維託管服務。該服務由阿里雲雲盾的DDoS專家團隊,為企業客戶提供私家定製的DDoS防護策略優化、重大活動保障、人工值守等服務,讓企業客戶在日益嚴重的DDoS攻擊下高枕無憂。
伺服器安全託管
為雲伺服器提供定製化的安全防護策略、木馬文件檢測和高危漏洞檢測與修復工作。當發生安全事件時,阿里雲安全團隊提供安全事件分析、響應,並進行系統防護策略的優化。
滲透測試服務
針對用戶的網站或業務系統,通過模擬黑客攻擊的方式,進行專業性的入侵嘗試,評估出重大安全漏洞或隱患的增值服務。
態勢感知
專為企業安全運維團隊打造,結合雲主機和全網的威脅情報,利用機器學習,進行安全大數據分析的威脅檢測平台。可讓客戶全面、快速、准確地感知過去、現在、未來的安全威脅。
雲監控
一個開放性的監控平台,可實時監控您的站點和伺服器,並提供多種告警方式(簡訊,旺旺,郵件)以保證及時預警,為您的站點和伺服器的正常運行保駕護航。
訪問控制
一個穩定可靠的集中式訪問控制服務。您可以通過訪問控制將阿里雲資源的訪問及管理許可權分配給您的企業成員或合作夥伴。 日誌服務
針對日誌收集、存儲、查詢和分析的服務。日誌服務可收集雲服務和應用程序生成的日誌數據並編制索引,提供實時查詢海量日誌的能力。
開放搜索
解決用戶結構化數據搜索需求的託管服務,支持數據結構、搜索排序、數據處理自由定製。 開放搜索為您的網站或應用程序提供簡單、低成本、穩定、高效的搜索解決方案。
媒體轉碼
為多媒體數據提供的轉碼計算服務。它以經濟、彈性和高可擴展的音視頻轉換方法,將多媒體數據轉碼成適合在PC、TV以及移動終端上播放的格式。
性能測試
全球領先的SaaS性能測試平台,具有強大的分布式壓測能力,可模擬海量用戶真實的業務場景,讓應用性能問題無所遁形。性能測試包含兩個版本,Lite版適合於業務場景簡單的系統,免費使用;企業版適合於承受大規模壓力的系統,同時每月提供免費額度,可以滿足大部分企業客戶。
移動數據分析
一款移動App數據統計分析產品,提供通用的多維度用戶行為分析,支持日誌自主分析,助力移動開發者實現基於大數據技術的精細化運營、提升產品質量和體驗、增強用戶黏性。 阿里雲旗下萬網域名,連續19年蟬聯域名市場NO.1,近1000萬個域名在萬網注冊!除域名外,提供雲伺服器、雲虛擬主機、企業郵箱、建站市場、雲解析等服務。2015年7月,阿里雲官網與萬網網站合二為一,萬網旗下的域名、雲虛擬主機、企業郵箱和建站市場等業務深度整合到阿里雲官網,用戶可以網站上完成網路創業的第一步。