2016-12-21 10 views
1

私はcassandraを初めて使用しています。プライマリキーで以下のカサンドラテーブルを作成しました。カサンドラのデータ読み込みシーケンスでカラムを無効にする

テーブルクエリを作成します。

create table DB.EMP(
Name text, 
age  int, 
id int, 
loc text, 
salary  double, 
PRIMARY KEY (id,salary) 
); 

私はコマンドを使用して、以下のデータをテーブルの上にロードされた:

Command ::: copy emp from '/home/data' with delimiter=','; 

Data ::: /home/data 

"Sdd,25,123,Chennai,28000" 

私はこのエラーを取得しています:

Using 1 child processes 

Starting copy of pmm.emp with columns ['id', 'salary', 'age', 'loc', 'name']. 
Failed to import 1 rows: ParseError - invalid literal for int() with base 10: 'Sdd' - given up without retries 
Failed to process 1 rows; failed rows written to import_db_emp.err 
Processed: 0 rows; Rate:  0 rows/s; Avg. rate:  0 rows/s 
0 rows imported from 1 files in 0.170 seconds (0 skipped). 

方法を提案して下さいデータを読み込むことはできますか?

主キー以外のアルファベット順の挿入オプションを無効にする方法はありますか。

+0

ようこそSOへ。 [どのようなトピックについて私が尋ねることができます](http://stackoverflow.com/help/on-topic)と[よくある質問をする方法](http://stackoverflow.com/help/how-to-ask)をお読みください。 )そして完璧な質問と、[最小限で完全で検証可能な例](http://stackoverflow.com/help/mcve)の作成方法SOは無料のコーディング、コード変換、デバッグ、チュートリアル、ライブラリ検索サービスではありません。私たちはあなたの試みを修正します、私たちはあなたのためのものをコード化しません – Mingebag

答えて

1

Is there any way I can disable, alphabetical order insertion option except primary keys?

いいえ。カッサンドラは、ディスク上の順序を確実にするために列名を格納します。

簡単な解決策は、あなたのCOPYコマンドであなたの列の順序を指定するには、次のようになります。

[email protected]:stackoverflow> COPY emp (name,age,id,loc,salary) 
           FROM '/home/aploetz/data.txt' WITH DELIMITER=','; 

Reading options from the command line: {'delimiter': ','} 
Using 1 child processes 

Starting copy of stackoverflow.emp with columns [name, age, id, loc, salary]. 
Processed: 1 rows; Rate:  0 rows/s; Avg. rate:  1 rows/s 
1 rows imported from 1 files in 1.919 seconds (0 skipped). 
関連する問題