我想改變我的cassandra表格以特定名稱開頭。 我的表格以sample_1,sample_2,sample_13567,sample_adgf等開頭...... 表名稱是隨機的,但以相同的前綴開頭。更新以特定名稱開頭的所有Cassandra表格
我想爲所有這些表添加一個新列。 有人可以用表達式的正則表達式向我建議更新查詢。
我想改變我的cassandra表格以特定名稱開頭。 我的表格以sample_1,sample_2,sample_13567,sample_adgf等開頭...... 表名稱是隨機的,但以相同的前綴開頭。更新以特定名稱開頭的所有Cassandra表格
我想爲所有這些表添加一個新列。 有人可以用表達式的正則表達式向我建議更新查詢。
如果您正在使用Linux可以這兩步:
首先生成所有的alter命令到文件象下面這樣:
for i in {1..13567}; do echo "ALTER TABLE sample_$i ADD test text;"; done > alter.cql
上面的命令將創建改變命令來添加test text
列表sample_1
到sample_13567
並存儲到文件alter.cql
現在您可以定製列表文件只加載到cqlsh象下面這樣:
cqlsh 127.0.0.1 -u cassandra -p cassandra -k ashraful_test -f alter.cql
這裏
-u username
-p password
-k keyspace_name
-f file name to load
通過有太多的路表是不是一個好主意。
檢查這個鏈接https://stackoverflow.com/a/33389204/2320144
嗨表名不是順序的,他們是隨機的,但以相同的前綴開始。例如,一些表可以有sample_rt4f和sample_123r。我試圖從開發中心(cassandra ide,如sql studio)那樣做。我無法通過Linux來完成,因爲我沒有權限服務器。 – shiva
我沒有你的答案,但我不得不告訴你,有13500個表,更不用說超過幾百個,最終會導致你痛苦的JVM堆壓力的形式。只是要記住。 – MarcintheCloud