ホームページ  >  記事  >  データベース  >  Apache Cassandra のコレクション データ型

Apache Cassandra のコレクション データ型

WBOY
WBOY転載
2023-08-25 22:37:09911ブラウズ

Apache Cassandra 中的集合数据类型

Cassandra の旅では、Cassandra コレクション データ型のチュートリアルを見ていきます。この記事では、Cassandra の Collection データ型について学びます。これらのデータ型は、C、C などの配列や構造体と同じ意味を持ちます。

さらに、リスト、セット、マップを使用した Cassandra コレクションのデータ型についても説明します。

それでは、Cassandra コレクションのデータ型から始めましょう。

Cassandra のコレクションのデータ型

Cassandra では、コレクション データ型は基本的に複数の値のストレージ コンテナーです。通常、Cassandra-CQL コレクションのデータ型は 1 つの変数によって定義されます。変数自体には値の範囲があります。

リスト、セット、マップは、いくつかのコレクション データ型です。これらの Cassandra コレクション データ型に対して幅広い操作を実行します。これらには、作成、挿入、更新、検証の操作が含まれます。

a) カサンドラ リスト

このデータ型の値はリスト形式で保存されます。リストには、単一の値のコピーが複数含まれています。リスト データ型の場合、ルールは 1 つだけです。

要素を連続して変更することはできません。値がリストに格納されると、その要素には特定のインデックスが割り当てられます。これらのインデックスを使用して値を取得できます。

i) テーブルの作成

Cassandra では、CREATE TABLE コマンドを使用してリスト データ型のテーブルを作成できます。テーブルには多数の列が存在する場合があります。テーブルを作成するための構文は次のとおりです。

リーリー

「大学生」の名前、学生番号、支店を含むテーブルを作成します。

リーリー ###出力###

######1つ###### ######名前###### ######Eメール###### ユーザーは INSERT INTO コマンドを使用してコンポーネントをテーブルに追加できます。角括弧で囲まれた各値はカンマで区切られます。構文は - ######1つ###### ######名前###### ######Eメール###### 001

ii)

を挿入
です。 リーリー ###例### リーリー ###出力###

ハードディック

hardi@gmail.com

002アジテ人ajit@mail.com003プッシュパtears@mail.comiii) 更新ハードディックhardikgupta.1@gmail.comアジテ人

Cassandra の UPDATE コマンドは、特定のテーブル列の値を更新するために使用されます。更新された構文は次のとおりです。

リーリー ###例### リーリー ###出力###

######1つ###### ######名前###### ######Eメール######

001

002

ajit@mail.com

003b) カサンドラ セットユーザーは、SET Cassandra コレクション データ型を使用して、要素のコレクションを保存できます。実行後、コレクションのコンポーネントがソートされた順序で返されます。 リーリー ###例### ii.カサンドラの挿入ハードディック

プッシュパ

tears@mail.com

###私。テーブルの作成

ユーザーは、次の構文でconstructコマンドを使用して、セットを含むテーブルを作成できます。
「大学生」の名前、学生番号、支店を含むテーブルを作成します。

リーリー ###出力###

######1つ###### ######名前###### ######Eメール######

INSERT INTO コマンドは、コレクションに値を挿入するために次の構文で使用されます。

リーリー ###例### リーリー ###出力###

######1つ###### ######名前###### ######Eメール######

001

hardi@gmail.com

002

アジテ人

ajit@mail.comtears@mail.com リーリー ###例### リーリー ###出力###

003

プッシュパ

iii. Cassandra のアップデート

ユーザーはこの構文を使用してコレクション内のコンテンツを更新できます。

######1つ###### ######名前###### ######Eメール######
001

ハードディック

hardikgupta.1@gmail.com

002

アジテ人

ajit@mail.com

003

プッシュパ

tears@mail.com

c)Cassandra 地图

一对键值项存储在映射(Cassandra 集合数据类型)中。

我。创建表

用户可以使用以下语法的“构造”命令来创建带有地图的表。

cqlsh:<keyspace> CREATE TABLE<table name> (column1 PRIMARY KEY, column2 map <type, data type>, column3 map <type, data type>.....);

构建一个表,其中包含“大学生”的名称、学号和分支。

cqlsh> USE keyspace3;
cqlsh:keyspace3> CREATE TABLE employee
                            ... (EN int,
                            ... NAME text,
                            ... EMAIL LIST,
                            ... PRIMARY KEY(EN),
                            ... );

输出

一个

姓名

电子邮件

ii.插入

INSERT INTO 命令与以下语法一起使用,将值插入到映射中。

cqlsh:<keyspace>> INSERT INTO <table name>(column1, column2, column3...) VALUES('R1value',{'R1value1':'R1value1' ,R1value2:'R1value01',..},{ 'R1value11':'R1value011','R1value12':'R1value012',..}....);

示例

cqlsh:keyspace3> INSERT INTO college student (EN, NAME, EMAIL)
                        ... VALUES(001,'hardik',{'hardi@gmail.com'});
cqlsh:keyspace3> INSERT INTO college student (EN, NAME, EMAIL)
                        ... VALUES(002,'Ajites',{'ajit@mail.com'});
cqlsh:keyspace3> INSERT INTO college student (EN, NAME, EMAIL)
                        ... VALUES(003,'Pushpa',{'tears@mail.com'});

输出

一个

姓名

电子邮件

001

哈迪克

hardi@gmail.com

002

阿吉特斯

ajit@mail.com

003

普什帕

tears@mail.com

iii.更新

使用此技术,用户可以修改集合的内容。

cqlsh:<keyspace>>UPDATE <table name>
SET <column2>=<column2>+['value1':'value2']
where <column1>='some value';

示例

cqlsh:keyspace3>UPDATE college student
SET EMAIL=EMAIL+['hardikgupta.1@gmail.com']
where EN=001;

输出

一个

姓名

电子邮件

001

哈迪克

hardikgupta.1@gmail.com

002

阿吉特斯

ajit@mail.com

003

普什帕

tears@mail.com

结论

这是 Apache Cassandra 中的三种集合数据类型。通过 Cassandra 集合可以轻松进行任务管理。集合允许存储大量项目。

以上がApache Cassandra のコレクション データ型の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。