程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> DB2數據庫 >> DB2教程 >> DB2 9 XML性能特征,優勢和評測,性能優化策略

DB2 9 XML性能特征,優勢和評測,性能優化策略

編輯:DB2教程

簡介

既然 DB2 9 發布了,現在是時候對它的最新特性之一 —— pureXML® 進行測試驅動了。為此,建立了一個模擬的經紀業務環境。這個環境具有以下特征:

  • 高事務量和並發性
  • 小的事務大小
  • 大量小型 XML 文檔
  • 可變的 XML 文檔結構 —— 測試包含符合 FIXML 的數據,FIXML 是 Financial Information eXchange(FIX)標准的金融業 XML 實現。

請記住,XML 應用程序大致分成以下兩類:

  • 面向數據的(高數據量,小文檔,這個測試就是針對這種情況)
  • 面向文檔的(可變數據量,大文檔)

另外,涉及 XML 的數據庫應用程序也是各種各樣的,包括以下情況:

  • 以 XML 形式發布關系數據
  • 用 XML 全文本搜索進行內容和文檔管理
  • 合並不同的數據源
  • 表單處理
  • 對 Web 服務和面向服務體系結構(SOA)的後端支持
  • 基於消息的事務處理和基於 XML 的在線事務處理(OLTP),尤其是在金融業中

本文在一個基於 XML 的事務處理場景中進行性能度量,這個場景模擬一個面向數據的金融應用程序。測試設備包括最新的 POWER5 服務器(p5 560Q)以及 AIX 5.3 和 TotalStorage DS8100 磁盤系統。

DB2 9 和 XML

DB2 9 中新的 XML 支持包括純 XML 存儲、XML 索引、XQuery、SQL/XML 和高級的 XML 模式處理。“純” 意味著以標注上類型的樹的形式存儲和處理 XML 文檔,這與商業關系數據庫中以前的任何技術都不同。尤其是,pureXML 與將 XML 存儲為大對象(BLOB 或 CLOB)或者將 XML 分解到關系表中的技術有顯著差異。更多的信息請參考以前的文章 “What's new in DB2 Viper” (developerWorks,2006 年 2 月)和 “Native XML Support in DB2 Universal Database”。

 

測試場景:在線經紀業務

這個測試場景對在線經紀業務進行建模。我們曾經幫助金融公司采用 XML。這些經歷幫助我們理解了他們的數據和處理特征。這個場景有意地進行了簡化,但是在文檔、事務和 XML 模式方面仍然具有代表性。

這個場景中主要的邏輯數據實體如下(見圖 1):

  • Customer: 一個客戶可以有一個或多個帳號(account)
  • Account: 每個帳號包含一個或多個持有物(holding)
  • Holding: 某一證券 的數量。
  • Security: 某一持有物的標識符(例如,股票名稱)。
  • Order: 為一個帳號 買賣一種證券 的訂單。
圖 1. 數據實體和 XML 模式

數據實體和 XML 模式

文檔處理和大小因文檔類型而異:

  • 對於每個客戶,有一個 CustAcc 文檔,其中包含這個客戶的所有客戶信息、帳號信息和持有物信息。CustAcc 文檔的大小在 4KB 和 20KB 之間。
  • 使用 FIXML 4.4 表示訂單。FIXML 是用於交易相關消息(比如買賣訂單)的行業標准 XML 模式(www.fixprotocol.org)。訂單文檔的大小是 1KB 到 2KB。訂單文檔有許多屬性,而且數據節點的比例很高。
  • 證券文檔(20833 個)使用實際的證券符號和名稱,表示在美國交易的大多數股票和共同基金。它們的大小在 3KB 和 10KB 之間。

使用 Toxgene 數據生成器為這三個模式生成實例文檔。關於 Toxgene 數據生成器的更多信息,請參考 ToXgene - the ToX XML Data Generator。

 

測試設備和配置

測試在以下設備上運行:

  • 處理器: IBM System p5 560Q,使用 8 個處理器的邏輯分區(LPAR),這是一個中等的 IBM System p5 560Q。8 個處理器以 1.5GHz 的頻率運行。
  • 內存: 32GB
  • 操作系統: AIX 5L v5.3 TL04(系統類型:9116-561,兩個 4 芯片模塊)
    • 並發多線程提供 16 個並發執行線程或邏輯處理器。
    • 安裝了一個多路徑子系統設備驅動程序(SDD)。這個特性可以改進存儲服務器訪問,比如改進數據可用性和存儲服務器上跨光纖通道適配器的動態 I/O 負載平衡。
  • 存儲: IBM TotalStorage DS8100,通過 4 個光纖通道適配器連接到 LPAR。

AIX 配置

在安裝 DB2 期間,會自動執行所有必需的操作系統參數調整。設置了以下的虛擬內存管理參數,從而更好地控制文件系統緩存使用的內存量:

vmo -o minperm%=5
vmo -o maxclient%=15
vmo -o maxperm%=15

另外,為了防止在數據裝載期間試圖緩存輸入文件,在掛裝命令中使用 -o cio 選項,用 JFS2 文件系統的並發 I/O 特性掛裝包含原始 XML 輸入文件的文件系統。

存儲配置

使用 TotalStorage DS8100 的標准默認配置。DS8100 在內部基本上是一個 POWER5 eServer p5 570。與之前的 ESS 使用 SSA 循環不同,DS8100 磁盤互連是一個 Switched Fiber Channel Arbitrated Loop(FC-AL),可以提供更快的數據訪問和高可用性。DS8100 配置了 128 個磁盤,在這些磁盤上創建了 16 個卷。在其中,8 個卷(64 個磁盤)分配給這個 LPAR。4 個卷使用 6+Parity+Spare 設置為 388GB。另外 4 個卷使用 7+Parity 設置為 452GB。創建了一個跨越所有 8 個卷的卷組(VG)。在這個卷組上定義了 DB2 數據庫的所有存儲組件,包括表空間、日志和備份。表 1 總結了配置。

表 1. 存儲配置
方面 配置 處理器 兩個處理器,每個附帶 pSeries POWER5 1.9 GHz 兩路 CEC 內存(緩存) 32GB 磁盤互連 Switched FC-AL 磁盤數量 128 個(只有 64 個由主機 LPAR 使用) 磁盤大小/速度 73 GB,15000 RPM

DB2 配置

DB2 9 包含許多新特性,包括新的自治自調整功能。在這個測試中,利用了其中幾種自治功能,包括:

  • 自動存儲管理
  • 自調整內存管理

因為啟動了 DB2 的自調整內存管理器(STMM),它會連續調整一系列 DB2 配置參數的設置。在測試運行期間 STMM 管理和調整的一些關鍵的 DB2 配置參數見表 2。要意識到的重要情況是,STMM 會根據正在運行的工作負載類型(比如純插入、純查詢或混合型工作負載)自主地修改這些值。

表 2. 數據庫配置,自調整
DB 配置參數名 初始設置 SELF_TUNING_MEM ON(默認值) DATABASE_MEMORY AUTOMATIC(默認值) SORTHEAP 156 SHEAPTHRES_SHR 10000 LOCKLIST 53000 MAXLOCKS 80 PCKCACHESZ 27000 緩沖池名 初始設置 IBMDEFAULTBP 1100000 CATBP 4000 TEMPBP 1000

DBA 只需要執行很少的數據庫配置任務,見表 3。

表 3. 數據庫配置,手工
方面 配置/設置 數據庫 Unicode。所有表空間采用自動存儲。DB2 日志在單獨的條帶上 內存 為所有測試啟用 STMM 頁面大小 16K(表空間和緩沖池) 表和索引 3 個表:CustAcc、order、security。24 個 XML 索引:10 個在 CustAcc 上,5 個在 order 上,9 個在 security 上 表空間 一共 6 個表空間:3 個表各有一個表空間,每個表的索引各有一個表空間。對所有表空間禁用文件系統緩存 緩沖池 一共 3 個緩沖池:默認緩沖池、用於編目表空間的緩沖池和用於臨時表空間的緩沖池

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved