sstableloader
將 <dir_path> 目錄中找到的 sstable 大量載入至已設定的叢集。<dir_path> 的父目錄用作目標鍵空間/表格名稱。例如,若要將名為 ma-1-big-Data.db 的 sstable 載入 keyspace1/standard1,您需要在 /path/to/keyspace1/standard1/ 目錄中擁有 ma-1-big-Data.db 和 ma-1-big-Index.db 檔案。此工具將建立新的 sstable,且不會清除您複製的檔案。
下列列出的幾個選項並未完全按照預期運作,在這些情況下,會針對特定使用案例提及解決方法。
若要避免在讀取 sstable 檔案時將其壓縮,請將檔案放置在與資料目錄不同的鍵空間/表格路徑中。
在執行此工具之前,必須先停止 Cassandra,否則會發生意外結果。注意:此指令碼不會驗證 Cassandra 是否已停止。
用法
sstableloader <選項> <dir_path>
-d, --nodes <初始主機> |
必要。嘗試最初連線至這些主機(以逗號分隔)以取得環狀資訊 |
-u, --username <使用者名稱> |
Cassandra 驗證的使用者名稱 |
-pw, --password <密碼> |
Cassandra 驗證的密碼 |
-p, --port <原生傳輸埠> |
用於原生連線的埠(預設為 9042) |
-sp, --storage-port <儲存埠> |
用於節點間通訊的埠(預設為 7000) |
-ssp, --ssl-storage-port <SSL 儲存埠> |
用於 TLS 節點間通訊的埠(預設為 7001) |
--no-progress |
不顯示進度 |
-t, --throttle <節流> |
(已棄用)以 Mbits 為單位的節流速度(預設為 0,表示不限速)改用 --throttle-mib |
--throttle-mib <節流-mib> |
以 MiB/s 為單位的節流速度(預設為 0,表示不限速) |
-idct, --inter-dc-throttle <資料中心間節流> |
(已棄用)以 Mbits 為單位的資料中心間節流速度(預設為 0,表示不限速)改用 --inter-dc-throttle-mib |
--inter-dc-throttle-mib <資料中心間節流-mib> |
以 MiB/s 為單位的資料中心間節流速度(預設為 0,表示不限速) |
--entire-sstable-throttle-mib <節流-mib> |
整個 SSTable 的節流速度,以 MiB/s 為單位(預設為 0,表示不限速) |
--entire-sstable-inter-dc-throttle-mib <資料中心間節流-mib> |
整個 SSTable 的資料中心間節流速度,以 MiB/s 為單位(預設為 0,表示不限速) |
-cph, --connections-per-host <每個主機的連線數> |
每個主機的並行連線數 |
-i, --ignore <節點> |
不要串流至這個節點(以逗號分隔)清單 |
-alg, --ssl-alg <演算法> |
用戶端 SSL:演算法(預設:SunX509) |
-ciphers, --ssl-ciphers <加密組> |
用戶端 SSL:要使用的加密組清單(以逗號分隔) |
-ks, --keystore <金鑰庫> |
用戶端 SSL:金鑰庫的完整路徑 |
-kspw, --keystore-password <金鑰庫密碼> |
用戶端 SSL:金鑰庫的密碼 |
-st, --store-type <儲存類型> |
用戶端 SSL:儲存類型 |
-ts, --truststore <信任儲存> |
用戶端 SSL:信任儲存的完整路徑 |
-tspw, --truststore-password <信任儲存密碼> |
用戶端 SSL:信任儲存的密碼 |
-prtcl, --ssl-protocol <通訊協定> |
用戶端 SSL:要使用的連線通訊協定(預設:TLS) |
-ap, --auth-provider <驗證提供者> |
自訂 AuthProvider 類別名稱,用於 cassandra 驗證 |
-f, --conf-path <路徑至設定檔> |
cassandra.yaml 檔案路徑,用於串流傳輸量和用戶端/伺服器 SSL |
-v, --verbose |
詳細輸出 |
-h, --help |
顯示此說明訊息 |
您可以提供 cassandra.yaml 檔案,搭配 -f 命令列選項,設定串流傳輸量,以及用戶端和伺服器加密選項。只有 stream_throughput_outbound、server_encryption_options 和 client_encryption_options 會從 yaml 讀取。您可以使用對應的命令列選項,覆寫從 cassandra.yaml 讀取的選項。
從 Snapshot 載入 sstable
將 snapshot sstable 複製到可存取的目錄,並使用 sstableloader 還原它們。
範例
cp snapshots/1535397029191/* /path/to/keyspace1/standard1/ sstableloader --nodes 172.17.0.2 /var/lib/cassandra/loadme/keyspace1/standard1-f8a4fa30aa2a11e8af27091830ac5256/ Established connection to initial hosts Opening sstables and calculating sections to stream Streaming relevant part of /var/lib/cassandra/loadme/keyspace1/standard1-f8a4fa30aa2a11e8af27091830ac5256/ma-3-big-Data.db to [/172.17.0.2] progress: [/172.17.0.2]0:1/1 100% total: 100% 0 MB/s(avg: 1 MB/s) Summary statistics: Connections per host: : 1 Total files transferred: : 1 Total bytes transferred: : 4700000 Total duration (ms): : 4390 Average transfer rate (MB/s): : 1 Peak transfer rate (MB/s): : 1
需要 -d 或 --nodes 選項,否則腳本不會執行。
範例
sstableloader /var/lib/cassandra/loadme/keyspace1/standard1-f8a4fa30aa2a11e8af27091830ac5256/ Initial hosts must be specified (-d)
對 SSL 群集使用設定檔
如果群集中啟用 SSL 加密,請將 --conf-path 選項與 sstableloader 搭配使用,將工具指向具有相關 server_encryption_options(例如,信任儲存體位置、演算法)的 cassandra.yaml。這比在命令列上將上面顯示的個別 ssl 選項傳遞給 sstableloader 更有效。
範例
sstableloader --nodes 172.17.0.2 --conf-path /etc/cassandra/cassandra.yaml /var/lib/cassandra/loadme/keyspace1/standard1-0974e5a0aa5811e8a0a06d2c86545d91/snapshots/ Established connection to initial hosts Opening sstables and calculating sections to stream Streaming relevant part of /var/lib/cassandra/loadme/keyspace1/standard1-0974e5a0aa5811e8a0a06d2c86545d91/mc-1-big-Data.db to [/172.17.0.2] progress: [/172.17.0.2]0:0/1 1 % total: 1% 9.165KiB/s (avg: 9.165KiB/s) progress: [/172.17.0.2]0:0/1 2 % total: 2% 5.147MiB/s (avg: 18.299KiB/s) progress: [/172.17.0.2]0:0/1 4 % total: 4% 9.751MiB/s (avg: 27.423KiB/s) progress: [/172.17.0.2]0:0/1 5 % total: 5% 8.203MiB/s (avg: 36.524KiB/s) ... progress: [/172.17.0.2]0:1/1 100% total: 100% 0.000KiB/s (avg: 480.513KiB/s) Summary statistics: Connections per host : 1 Total files transferred : 1 Total bytes transferred : 4.387MiB Total duration : 9356 ms Average transfer rate : 480.105KiB/s Peak transfer rate : 586.410KiB/s
隱藏進度輸出
若要隱藏進度和摘要統計資料的輸出(例如,如果您想在腳本中使用此工具),請使用 --no-progress 選項。
範例
sstableloader --nodes 172.17.0.2 --no-progress /var/lib/cassandra/loadme/keyspace1/standard1-f8a4fa30aa2a11e8af27091830ac5256/ Established connection to initial hosts Opening sstables and calculating sections to stream Streaming relevant part of /var/lib/cassandra/loadme/keyspace1/standard1-f8a4fa30aa2a11e8af27091830ac5256/ma-4-big-Data.db to [/172.17.0.2]
取得更多詳細資訊
使用 --verbose 選項將提供更多進度輸出。
範例
sstableloader --nodes 172.17.0.2 --verbose /var/lib/cassandra/loadme/keyspace1/standard1-0974e5a0aa5811e8a0a06d2c86545d91/ Established connection to initial hosts Opening sstables and calculating sections to stream Streaming relevant part of /var/lib/cassandra/loadme/keyspace1/standard1-0974e5a0aa5811e8a0a06d2c86545d91/mc-1-big-Data.db to [/172.17.0.2] progress: [/172.17.0.2]0:0/1 1 % total: 1% 12.056KiB/s (avg: 12.056KiB/s) progress: [/172.17.0.2]0:0/1 2 % total: 2% 9.092MiB/s (avg: 24.081KiB/s) progress: [/172.17.0.2]0:0/1 4 % total: 4% 18.832MiB/s (avg: 36.099KiB/s) progress: [/172.17.0.2]0:0/1 5 % total: 5% 2.253MiB/s (avg: 47.882KiB/s) progress: [/172.17.0.2]0:0/1 7 % total: 7% 6.388MiB/s (avg: 59.743KiB/s) progress: [/172.17.0.2]0:0/1 8 % total: 8% 14.606MiB/s (avg: 71.635KiB/s) progress: [/172.17.0.2]0:0/1 9 % total: 9% 8.880MiB/s (avg: 83.465KiB/s) progress: [/172.17.0.2]0:0/1 11 % total: 11% 5.217MiB/s (avg: 95.176KiB/s) progress: [/172.17.0.2]0:0/1 12 % total: 12% 12.563MiB/s (avg: 106.975KiB/s) progress: [/172.17.0.2]0:0/1 14 % total: 14% 2.550MiB/s (avg: 118.322KiB/s) progress: [/172.17.0.2]0:0/1 15 % total: 15% 16.638MiB/s (avg: 130.063KiB/s) progress: [/172.17.0.2]0:0/1 17 % total: 17% 17.270MiB/s (avg: 141.793KiB/s) progress: [/172.17.0.2]0:0/1 18 % total: 18% 11.280MiB/s (avg: 153.452KiB/s) progress: [/172.17.0.2]0:0/1 19 % total: 19% 2.903MiB/s (avg: 164.603KiB/s) progress: [/172.17.0.2]0:0/1 21 % total: 21% 6.744MiB/s (avg: 176.061KiB/s) progress: [/172.17.0.2]0:0/1 22 % total: 22% 6.011MiB/s (avg: 187.440KiB/s) progress: [/172.17.0.2]0:0/1 24 % total: 24% 9.690MiB/s (avg: 198.920KiB/s) progress: [/172.17.0.2]0:0/1 25 % total: 25% 11.481MiB/s (avg: 210.412KiB/s) progress: [/172.17.0.2]0:0/1 27 % total: 27% 9.957MiB/s (avg: 221.848KiB/s) progress: [/172.17.0.2]0:0/1 28 % total: 28% 10.270MiB/s (avg: 233.265KiB/s) progress: [/172.17.0.2]0:0/1 29 % total: 29% 7.812MiB/s (avg: 244.571KiB/s) progress: [/172.17.0.2]0:0/1 31 % total: 31% 14.843MiB/s (avg: 256.021KiB/s) progress: [/172.17.0.2]0:0/1 32 % total: 32% 11.457MiB/s (avg: 267.394KiB/s) progress: [/172.17.0.2]0:0/1 34 % total: 34% 6.550MiB/s (avg: 278.536KiB/s) progress: [/172.17.0.2]0:0/1 35 % total: 35% 9.115MiB/s (avg: 289.782KiB/s) progress: [/172.17.0.2]0:0/1 37 % total: 37% 11.054MiB/s (avg: 301.064KiB/s) progress: [/172.17.0.2]0:0/1 38 % total: 38% 10.449MiB/s (avg: 312.307KiB/s) progress: [/172.17.0.2]0:0/1 39 % total: 39% 1.646MiB/s (avg: 321.665KiB/s) progress: [/172.17.0.2]0:0/1 41 % total: 41% 13.300MiB/s (avg: 332.872KiB/s) progress: [/172.17.0.2]0:0/1 42 % total: 42% 14.370MiB/s (avg: 344.082KiB/s) progress: [/172.17.0.2]0:0/1 44 % total: 44% 16.734MiB/s (avg: 355.314KiB/s) progress: [/172.17.0.2]0:0/1 45 % total: 45% 22.245MiB/s (avg: 366.592KiB/s) progress: [/172.17.0.2]0:0/1 47 % total: 47% 25.561MiB/s (avg: 377.882KiB/s) progress: [/172.17.0.2]0:0/1 48 % total: 48% 24.543MiB/s (avg: 389.155KiB/s) progress: [/172.17.0.2]0:0/1 49 % total: 49% 4.894MiB/s (avg: 399.688KiB/s) progress: [/172.17.0.2]0:0/1 51 % total: 51% 8.331MiB/s (avg: 410.559KiB/s) progress: [/172.17.0.2]0:0/1 52 % total: 52% 5.771MiB/s (avg: 421.150KiB/s) progress: [/172.17.0.2]0:0/1 54 % total: 54% 8.738MiB/s (avg: 431.983KiB/s) progress: [/172.17.0.2]0:0/1 55 % total: 55% 3.406MiB/s (avg: 441.911KiB/s) progress: [/172.17.0.2]0:0/1 56 % total: 56% 9.791MiB/s (avg: 452.730KiB/s) progress: [/172.17.0.2]0:0/1 58 % total: 58% 3.401MiB/s (avg: 462.545KiB/s) progress: [/172.17.0.2]0:0/1 59 % total: 59% 5.280MiB/s (avg: 472.840KiB/s) progress: [/172.17.0.2]0:0/1 61 % total: 61% 12.232MiB/s (avg: 483.663KiB/s) progress: [/172.17.0.2]0:0/1 62 % total: 62% 9.258MiB/s (avg: 494.325KiB/s) progress: [/172.17.0.2]0:0/1 64 % total: 64% 2.877MiB/s (avg: 503.640KiB/s) progress: [/172.17.0.2]0:0/1 65 % total: 65% 7.461MiB/s (avg: 514.078KiB/s) progress: [/172.17.0.2]0:0/1 66 % total: 66% 24.247MiB/s (avg: 525.018KiB/s) progress: [/172.17.0.2]0:0/1 68 % total: 68% 9.348MiB/s (avg: 535.563KiB/s) progress: [/172.17.0.2]0:0/1 69 % total: 69% 5.130MiB/s (avg: 545.563KiB/s) progress: [/172.17.0.2]0:0/1 71 % total: 71% 19.861MiB/s (avg: 556.392KiB/s) progress: [/172.17.0.2]0:0/1 72 % total: 72% 15.501MiB/s (avg: 567.122KiB/s) progress: [/172.17.0.2]0:0/1 74 % total: 74% 5.031MiB/s (avg: 576.996KiB/s) progress: [/172.17.0.2]0:0/1 75 % total: 75% 22.771MiB/s (avg: 587.813KiB/s) progress: [/172.17.0.2]0:0/1 76 % total: 76% 22.780MiB/s (avg: 598.619KiB/s) progress: [/172.17.0.2]0:0/1 78 % total: 78% 20.684MiB/s (avg: 609.386KiB/s) progress: [/172.17.0.2]0:0/1 79 % total: 79% 22.920MiB/s (avg: 620.173KiB/s) progress: [/172.17.0.2]0:0/1 81 % total: 81% 7.458MiB/s (avg: 630.333KiB/s) progress: [/172.17.0.2]0:0/1 82 % total: 82% 22.993MiB/s (avg: 641.090KiB/s) progress: [/172.17.0.2]0:0/1 84 % total: 84% 21.392MiB/s (avg: 651.814KiB/s) progress: [/172.17.0.2]0:0/1 85 % total: 85% 7.732MiB/s (avg: 661.938KiB/s) progress: [/172.17.0.2]0:0/1 86 % total: 86% 3.476MiB/s (avg: 670.892KiB/s) progress: [/172.17.0.2]0:0/1 88 % total: 88% 19.889MiB/s (avg: 681.521KiB/s) progress: [/172.17.0.2]0:0/1 89 % total: 89% 21.077MiB/s (avg: 692.162KiB/s) progress: [/172.17.0.2]0:0/1 91 % total: 91% 24.062MiB/s (avg: 702.835KiB/s) progress: [/172.17.0.2]0:0/1 92 % total: 92% 19.798MiB/s (avg: 713.431KiB/s) progress: [/172.17.0.2]0:0/1 94 % total: 94% 17.591MiB/s (avg: 723.965KiB/s) progress: [/172.17.0.2]0:0/1 95 % total: 95% 13.725MiB/s (avg: 734.361KiB/s) progress: [/172.17.0.2]0:0/1 96 % total: 96% 16.737MiB/s (avg: 744.846KiB/s) progress: [/172.17.0.2]0:0/1 98 % total: 98% 22.701MiB/s (avg: 755.443KiB/s) progress: [/172.17.0.2]0:0/1 99 % total: 99% 18.718MiB/s (avg: 765.954KiB/s) progress: [/172.17.0.2]0:1/1 100% total: 100% 6.613MiB/s (avg: 767.802KiB/s) progress: [/172.17.0.2]0:1/1 100% total: 100% 0.000KiB/s (avg: 670.295KiB/s) Summary statistics: Connections per host : 1 Total files transferred : 1 Total bytes transferred : 4.387MiB Total duration : 6706 ms Average transfer rate : 669.835KiB/s Peak transfer rate : 767.802KiB/s
限制載入
若要防止資料表載入器過度載入系統資源,您可以使用 --throttle 選項限制處理程序。預設值為無限制(不限制)。限制單位為兆位元組。請注意,在以下範例中,總持續時間會增加。
範例
sstableloader --nodes 172.17.0.2 --throttle 1 /var/lib/cassandra/loadme/keyspace1/standard1-f8a4fa30aa2a11e8af27091830ac5256/ Established connection to initial hosts Opening sstables and calculating sections to stream Streaming relevant part of /var/lib/cassandra/loadme/keyspace1/standard1-f8a4fa30aa2a11e8af27091830ac5256/ma-6-big-Data.db to [/172.17.0.2] progress: [/172.17.0.2]0:1/1 100% total: 100% 0 MB/s(avg: 0 MB/s) Summary statistics: Connections per host: : 1 Total files transferred: : 1 Total bytes transferred: : 4595705 Total duration (ms): : 37634 Average transfer rate (MB/s): : 0 Peak transfer rate (MB/s): : 0
加快載入速度
若要加快載入處理程序,可以增加每個主機的連線數。
範例
sstableloader --nodes 172.17.0.2 --connections-per-host 100 /var/lib/cassandra/loadme/keyspace1/standard1-f8a4fa30aa2a11e8af27091830ac5256/ Established connection to initial hosts Opening sstables and calculating sections to stream Streaming relevant part of /var/lib/cassandra/loadme/keyspace1/standard1-f8a4fa30aa2a11e8af27091830ac5256/ma-9-big-Data.db to [/172.17.0.2] progress: [/172.17.0.2]0:1/1 100% total: 100% 0 MB/s(avg: 1 MB/s) Summary statistics: Connections per host: : 100 Total files transferred: : 1 Total bytes transferred: : 4595705 Total duration (ms): : 3486 Average transfer rate (MB/s): : 1 Peak transfer rate (MB/s): : 1
這個小型資料集並未從每個主機增加的連線數中受益太多,但請注意,在此範例中,總持續時間已減少。