2016-07-16 4 views
0

私はcassandra SEとMariaDBの相互運用性を実装しようとしています。 cqlshでは、複合キーを使ってテーブルを作成することができます。私がmariadbで同じことをしようとすると、エラーERROR 1070 (42000): Too many key parts specified; max 1 parts allowedが出ます。指定されたキーパーツが多すぎます。 max 1 parts canandraエンジンとmariadb

cqlsh:mariadbtest> create table test (test1 int, test2 bigint, test3 varchar, primary key (test1, test2)) with compact STORAGE; 

Mariadbで:

MariaDB [test]> set global cassandra_default_thrift_host='localhost'; 

MariaDB [test]> create table random (test1 int(5), test2 bigint(5), test3 varchar(20), PRIMARY KEY (test1, test2)) engine=cassandra keyspace='historian' thrift_host='localhost' column_family='test'; 
ERROR 1070 (42000): Too many key parts specified; max 1 parts allowed 

私は私の主キーとして単一のカラムを使用する場合、それはエラーなしで正常に動作します は、ここで私がcqlshで使用される私のコードです。複合キーの問題を解決する方法を教えてください。 ご協力いただければ幸いです。

答えて

0

これはストレージエンジンではサポートされていません。 docs

注:現在、複数列の主キーはサポートされていません。サポートが必要かどうかによって、将来のバージョンでサポートが追加される可能性があります。

コンポジットパーティションキー(つまり、PRIMARY KEY ((test1, test2)))を定義できるかどうかは不明です。私はまたあなたのニーズに合ったものであることも確信していません。あなたが必要とするものなら、あなたの興味を宣言する必要があるように思えます。

+0

複合パーティションキーを試しましたが、同じエラーが発生しています。はい、私はテーブルのためにそれが必要です。あなたは私に、cassandra SEとMySQLで複合キーを使用する方法の例を教えてください。 – user2782405

関連する問題