Postgresql 8.3.23 Tài liệu | ||||
---|---|---|---|---|
prev | Backward nhanh | Phụ lục F. kèo bóng đá hom nay mô -đun được cung cấp bổ sung | Chuyển tiếp nhanh | Tiếp theo |
PGBenchlà kèo bóng đá hom nay chương trình đơn giản Để chạy các bài kiểm tra điểm chuẩn trênPostgreSQL. Nó chạy cùng kèo bóng đá hom nay chuỗi SQL các lệnh lặp đi lặp lại, có thể trong nhiều cơ sở dữ liệu đồng thời các phiên, và sau đó tính toán tỷ lệ giao dịch trung bình (Giao dịch mỗi giây). Theo mặc định,PGBenchKiểm tra kèo bóng đá hom nay kịch bản kèo bóng đá hom nay cách lỏng lẻo Dựa trên TPC-B, liên quan đến nămChọn, Cập nhậtvàChènlệnh cho mỗi giao dịch. Tuy nhiên, nó là Dễ dàng kiểm tra kèo bóng đá hom nay trường hợp khác bằng cách viết tập lệnh giao dịch của riêng bạn Tệp.
Đầu ra điển hình từ PGBench trông giống như:
9973_10254
10265_10687
Kiểm tra giao dịch TPC-B mặc định yêu cầu cụ thể kèo bóng đá hom nay bảng được thiết lập trước.PGBenchnên được gọi bằng-i(Khởi tạo) Tùy chọn để tạo và Dăn các bảng này. (Khi bạn đang kiểm tra kèo bóng đá hom nay tập lệnh tùy chỉnh, Bạn không cần bước này, nhưng thay vào đó sẽ cần phải làm bất cứ điều gì thiết lập nhu cầu kiểm tra của bạn.) Khởi tạo có vẻ như:
pgbench -i [ tùy chọn khác ]dbname
WHEREdbnamelà tên của Cơ sở dữ liệu đã được tạo để kiểm tra. (Bạn cũng có thể cần-H, -P, và/hoặc-UTùy chọn để chỉ định cách Kết nối với máy chủ cơ sở dữ liệu.)
THẬN TRỌNG |
pgbench -iTạo bốn BảngTài khoản, nhánh, Lịch sửvàTellers, Phá hủy mọi hiện tại Bảng của những cái tên này. Rất cẩn thận để sử dụng kèo bóng đá hom nay cơ sở dữ liệu nếu bạn có các bảng có tên này! |
tại mặc định"Yếu tố tỷ lệ"của 1, kèo bóng đá hom nay bảng ban đầu chứa nhiều hàng này:
Bảng # hàng ----------------------------- nhánh 1 Người kèo bóng đá hom nay 10 Tài khoản 100000 Lịch sử 0
Bạn có thể (và, cho hầu hết kèo bóng đá hom nay mục đích, có lẽ nên) tăng số lượng hàng bằng cách sử dụng-S(Hệ số tỷ lệ) tùy chọn. The-f(fillfactor) cũng có thể được sử dụng tại thời điểm này.
kèo bóng đá hom nay khi bạn đã thực hiện thiết lập cần thiết, bạn có thể chạy điểm chuẩn với lệnh không bao gồm-I, đó là
13140_13152 Tùy chọn ]dbname
Trong hầu hết các trường hợp, bạn sẽ cần kèo bóng đá hom nay số tùy chọn để tạo Kiểm tra hữu ích. Các tùy chọn quan trọng nhất là-C(số lượng khách hàng),-T(số lượng kèo bóng đá hom nay) và-f(Chỉ định tệp tập lệnh tùy chỉnh). Xem bên dưới cho kèo bóng đá hom nay danh sách đầy đủ.
Bảng F-1413670_13747Bảng F-15Hiển thị kèo bóng đá hom nay tùy chọn được sử dụng trong khi chạy điểm chuẩn vàBảng F-16Hiển thị kèo bóng đá hom nay tùy chọn hữu ích trong cả hai trường hợp.
14097_14111PGBenchTùy chọn khởi tạo
Tùy chọn | Mô tả |
---|---|
-i | Yêu cầu gọi chế độ khởi tạo. |
-S scale_factor | Nhân số lượng hàng được tạo bởi thang đo nhân tố. Ví dụ,-S 100sẽ ngụ ý 10.000.000 hàng trongTài khoảnBảng. Mặc định là 1. |
-f fillfactor | TạoTài khoản, TellersvàcànhBảng với kèo bóng đá hom nay bảng đã cho chất làm đầy. Mặc định là 100. |
Bảng F-15.PGBenchTùy chọn điểm chuẩn
Tùy chọn | Mô tả |
---|---|
-C khách hàng | Số lượng khách hàng mô phỏng, nghĩa là số lượng Phiên cơ sở dữ liệu đồng thời. Mặc định là 1. |
-T kèo bóng đá hom nay | Số lượng kèo bóng đá hom nay mỗi khách hàng chạy. Mặc định là 10. |
-N | Không cập nhậtTellersvàcành16444_16571 |
-S | Thực hiện kèo bóng đá hom nay giao dịch chỉ chọn thay vì TPC-B-giống như kiểm tra. |
-f FileName | Đọc tập lệnh kèo bóng đá hom nay từFileName. Xem bên dưới để biết chi tiết.-N, -Svà-flà loại trừ lẫn nhau. |
-N | Không thực hiện hút bụi trước khi chạy thử nghiệm. Tùy chọn này làcần thiếtNếu bạn là Chạy kèo bóng đá hom nay kịch bản kiểm tra tùy chỉnh không bao gồm các bảng tiêu chuẩnTài khoản, cành, Lịch sửvàTellers. |
-V | hút bụi cả bốn bảng tiêu chuẩn trước khi chạy Bài kiểm tra. Không có-NNor-V, PGBench sẽ hút bụiTellersvàChi nhánhBảng và sẽ xóa tất cả kèo bóng đá hom nay mục trongLịch sử. |
-D varname=giá trị | Xác định kèo bóng đá hom nay biến để sử dụng bởi tập lệnh tùy chỉnh (xem dưới). Nhiều-DTùy chọn được phép. |
-C | Thiết lập kết nối mới cho mỗi giao dịch, Thay vì làm nó chỉ kèo bóng đá hom nay lần cho mỗi chủ đề khách hàng. Cái này rất hữu ích để đo chi phí kết nối. |
-L | Viết thời gian được thực hiện bởi mỗi kèo bóng đá hom nay cho a logfile. Xem bên dưới để biết chi tiết. |
-S scale_factor | Báo cáo hệ số tỷ lệ được chỉ định trongPGBenchđầu ra. Với kèo bóng đá hom nay bài kiểm tra tích hợp, điều này là không cần thiết; đúng Hệ số tỷ lệ sẽ được phát hiện bằng cách đếm số lượng hàng trongcànhBảng. Tuy nhiên, khi kiểm tra điểm chuẩn tùy chỉnh (-ftùy chọn), yếu tố tỷ lệ sẽ là được báo cáo là 1 trừ khi tùy chọn này được sử dụng. |
-D | Đầu ra gỡ lỗi in. |
Tập lệnh kèo bóng đá hom nay mặc định phát hành bảy lệnh mỗi kèo bóng đá hom nay:
bắt đầu;
Cập nhật tài khoản đặt Abalance = Abalance +: Delta WHERE viện trợ =: viện trợ;
Chọn Abalance từ kèo bóng đá hom nay tài khoản trong đó viện trợ =: viện trợ;
Cập nhật kèo bóng đá hom nay giao dịch viên đặt tbalance = TBalance +: Delta trong đó tid =: tid;
Cập nhật chi nhánh đặt BBalance = Bbalance +: Delta trong đó giá thầu =: giá thầu;
21838_21959
kết thúc;
Nếu bạn chỉ định-N, Bước 4 và 5 không bao gồm trong kèo bóng đá hom nay. Nếu bạn chỉ định-S, chỉChọnIS đã phát hành.
PGBenchcó hỗ trợ cho Chạy kịch bản điểm chuẩn tùy chỉnh bằng cách thay thế mặc định tập lệnh giao dịch (được mô tả ở trên) với tập lệnh giao dịch đọc từ kèo bóng đá hom nay tệp (-fTùy chọn). Trong này trường hợp a"kèo bóng đá hom nay"được tính là kèo bóng đá hom nay thực hiện kèo bóng đá hom nay tập tin tập lệnh. Bạn thậm chí có thể chỉ định nhiều tập lệnh (nhiều-fTùy chọn), trong Trường hợp nào ngẫu nhiên kèo bóng đá hom nay trong các tập lệnh được chọn mỗi lần Phiên khách bắt đầu kèo bóng đá hom nay giao dịch mới.
Định dạng của tệp tập lệnh là kèo bóng đá hom nay lệnh sql trên mỗi dòng; Các lệnh SQL đa dòng không được hỗ trợ. Dòng trống và Các dòng bắt đầu bằng--bị bỏ qua. kèo bóng đá hom nay dòng tệp script cũng có thể là"Meta lệnh ", được giải thích bởiPGBenchChính nó, như được mô tả bên dưới.
Có kèo bóng đá hom nay cơ sở thay đổi biến đổi đơn giản cho tập lệnh Tệp. Các biến có thể được đặt bởi dòng lệnh-DTùy chọn, được giải thích ở trên hoặc bởi meta kèo bóng đá hom nay lệnh được giải thích dưới đây. Ngoài bất kỳ biến nào được đặt trước qua-DTùy chọn dòng lệnh, The biếntỷ lệđược đặt trước vào Yếu tố quy mô hiện tại. Sau khi được đặt, giá trị của kèo bóng đá hom nay biến có thể là được chèn vào lệnh SQL bằng cách viết:variablename. Khi chạy nhiều hơn kèo bóng đá hom nay phiên khách, mỗi phiên có tập hợp các biến riêng.
kèo bóng đá hom nay lệnh meta tập tin tập lệnh bắt đầu bằng dấu gạch chéo ngược (\). Đối số với lệnh meta được phân tách bằng không gian trắng. kèo bóng đá hom nay lệnh meta này được hỗ trợ:
Đặt biến24560_24569với giá trị số nguyên được tính toán. MỗiToán tửlà kèo bóng đá hom nay số nguyên không đổi hoặc kèo bóng đá hom nay:variablenametham chiếu đến a Biến có giá trị số nguyên. TheNhà điều hànhcó thể+, -, *hoặc/.
Ví dụ:
\ SET NTELLERS 10 *: tỷ lệ
Đặt biếnvarnamevới giá trị số nguyên ngẫu nhiên giữa kèo bóng đá hom nay giới hạnminvàMax. Mỗi giới hạn có thể là kèo bóng đá hom nay hằng số nguyên hoặc a:variablenameTham chiếu đến kèo bóng đá hom nay biến có giá trị số nguyên.
Ví dụ:
\ SetRandom Aid 1: Naccounts
khiến việc thực thi tập lệnh ngủ cho người được chỉ định thời lượng tính bằng micro giây (US), mili giây (MS) hoặc giây (S). Nếu đơn vị bị bỏ qua thì giây là mặc định.SốCó thể là kèo bóng đá hom nay số nguyên không đổi hoặc kèo bóng đá hom nay:variablenametham chiếu đến a Biến có giá trị số nguyên.
Ví dụ:
\ ngủ 10 ms
Ví dụ, định nghĩa đầy đủ về tích hợp kèo bóng đá hom nay TPC-B-like là:
26860_27421
Tập lệnh này cho phép mỗi lần lặp lại giao dịch Tham khảo kèo bóng đá hom nay hàng khác nhau, chọn ngẫu nhiên. (Ví dụ này cũng cho thấy lý do tại sao điều quan trọng đối với mỗi phiên khách hàng có kèo bóng đá hom nay biến riêng - nếu không chúng sẽ không chạm vào độc lập kèo bóng đá hom nay hàng khác nhau.)
với-LTùy chọn,PGBenchViết thời gian của mỗi giao dịch cho kèo bóng đá hom nay logfile. Logfile sẽ được đặt tênpgbench_log.nnn, trong đónnnlà PID của quy trình PGBench. Định dạng của nhật ký là:
client_id Giao dịch_no Thời gian file_no time_epoch time_us
WHEREThời gianlà bị mất Thời gian kèo bóng đá hom nay tính bằng micro giây,file_noXác định tệp tập lệnh nào được sử dụng (hữu ích khi nhiều tập lệnh được chỉ định với-f) vàtime_epoch/time_usvà bù trong micro giây (phù hợp để tạo ISO 8601 Dấu thời gian với những giây phân số) hiển thị khi kèo bóng đá hom nay hoàn thành.
Đây là đầu ra ví dụ:
0 199 2241 0 1175850568 995598 0 200 2465 0 1175850568 998079 0 201 2513 0 1175850569 608 0 202 2038 0 1175850569 2663
Nó rất dễ sử dụngPGBenchĐể tạo ra hoàn toàn vô nghĩa số. Dưới đây là kèo bóng đá hom nay số hướng dẫn để giúp bạn hữu ích kết quả.
Ở nơi đầu tiên,không bao giờTin bất kỳ bài kiểm tra nào chạy Chỉ trong vài giây. Tăng-TCài đặt đủ để thực hiện lần chạy ít nhất kèo bóng đá hom nay vài phút, để trung bình phát ra tiếng ồn. Trong kèo bóng đá hom nay số trường hợp bạn Có thể cần giờ để có được những con số có thể tái tạo. Đó là a ý tưởng tốt để thử kiểm tra chạy kèo bóng đá hom nay vài lần, để tìm hiểu xem bạn có Số có thể tái tạo hay không.
Đối với kịch bản kiểm tra TPC-B mặc định, việc khởi tạo Yếu tố tỷ lệ (-S) Ít nhất nên lớn như số lượng khách hàng lớn nhất mà bạn dự định kiểm tra (-C); nếu không bạn sẽ chủ yếu là đo lường Cập nhật tranh chấp. Chỉ có-Shàng trongcànhBảng, và Mọi giao dịch đều muốn cập nhật kèo bóng đá hom nay trong số họ, vì vậy-CGiá trị vượt quá-Schắc chắn sẽ dẫn đến rất nhiều kèo bóng đá hom nay giao dịch bị chặn chờ kèo bóng đá hom nay giao dịch khác.
Kịch bản kiểm tra mặc định cũng khá nhạy cảm với cách Long nó đã được kể từ khi kèo bóng đá hom nay bảng được khởi tạo: tích lũy của kèo bóng đá hom nay hàng chết và không gian chết trong kèo bóng đá hom nay bảng thay đổi kết quả. Để hiểu kết quả, bạn phải theo dõi tổng số Số lượng cập nhật và khi hút bụi xảy ra. Nếu Autovacuum là kích hoạt nó có thể dẫn đến những thay đổi không thể đoán trước được đo lường hiệu suất.
Giới hạn củaPGBenchIS rằng nó có thể trở thành nút cổ chai khi cố gắng kiểm tra kèo bóng đá hom nay Số lượng lớn các phiên khách hàng. Điều này có thể được giảm bớt bởi đang chạyPGBenchVề kèo bóng đá hom nay sự khác biệt máy từ máy chủ cơ sở dữ liệu, mặc dù độ trễ mạng thấp sẽ là điều cần thiết. Nó thậm chí có thể hữu ích khi chạy kèo bóng đá hom nay sốPGBenchCác trường hợp đồng thời, trên kèo bóng đá hom nay số máy khách, chống lại cùng kèo bóng đá hom nay Máy chủ cơ sở dữ liệu.