Maison > développement back-end > tutoriel php > Utiliser PHP pour exploiter la base de données Cassandra

Utiliser PHP pour exploiter la base de données Cassandra

PHPz
Libérer: 2023-05-16 15:52:01
original
1129 Les gens l'ont consulté

Cassandra est un système de gestion de bases de données distribuées basé sur NoSQL qui peut prendre en charge le traitement de grandes quantités de données. PHP, en tant que langage de programmation côté serveur populaire, peut être utilisé pour faire fonctionner la base de données Cassandra. Cet article explique comment utiliser le pilote PHP et CQL pour connecter et exploiter la base de données Cassandra.

Avant de commencer, assurez-vous d'avoir installé la base de données Cassandra et le pilote PHP en suivant les étapes suivantes :

1 Installez la base de données Cassandra
2 Installez PHP
3 Installez le pilote PHP Cassandra

Veuillez rechercher. étapes d'installation associées par vous-même Tutoriel. Voici les étapes de base pour faire fonctionner une base de données Cassandra en PHP :

  1. Connexion à une base de données Cassandra
    Pour vous connecter à une base de données Cassandra, utilisez le code suivant fourni par le pilote Cassandra de PHP :
<?php

$cluster   = Cassandra::cluster()
             ->withContactPoints('127.0.0.1')
             ->build();

$session   = $cluster->connect();
Copier après la connexion

Dans cet exemple, 127.0.0.1< /code> représente le nœud Cassandra sur l'hôte local. <code>$cluster->build() renvoie un objet cluster Cassandra. 127.0.0.1代表本地主机上的Cassandra节点。$cluster->build() 会返回一个Cassandra 集群对象。

  1. 创建Keyspace
    一个Keyspace在Cassandra中类似于一个数据库,它包含多个表。使用PHP中Cassandra的 session 对象创建一个 Keyspace,其代码如下:
<?php

$session->execute("CREATE KEYSPACE my_keyspace WITH replication = {'class': 'SimpleStrategy', 'replication_factor': 1};");
Copier après la connexion

这里创建了一个名为my_keyspace的新Keyspace。replication参数指定了数据的备份策略。

  1. 创建表
    创建表需要一个名称、列族以及相关的列。Cassandra使用列族来组织和存储数据。以下是创建表的示例代码:
<?php

$session->execute("CREATE TABLE my_keyspace.my_table (id UUID primary key, name text);");
Copier après la connexion

这个代码会创建一个名为 $my_table的新表。该表包含了 idname 两列,其中 id 是主键列。

  1. 插入新数据
    要插入数据,使用以下代码:
<?php

$statement = $session->prepare("INSERT INTO my_keyspace.my_table (id, name) VALUES (?, ?)");

$session->execute($statement, array(new CassandraUuid(), "John Doe"));
Copier après la connexion

在这个例子中,我们准备了一个语句,然后执行了一个名为 John Doe的名字。在这里,我们引用了 PHP 的 Uuid() 对象来生成一个唯一标识符。

  1. 查询数据
    使用我们之前准备的 $statement 变量来查询 my_table 表中的数据:
<?php

$statement = $session->prepare("SELECT * FROM my_keyspace.my_table");
$results   = $session->execute($statement);

foreach ($results as $row) {
    echo $row['id'] . " " . $row['name'] . "
";
}
Copier après la connexion

在这个例子中,我们可以简单地使用 foreach()循环从查询中检索数据,并使用字符串拼接将数据输出到控制台。

  1. 更新与删除数据
    更新与删除数据与插入数据时类似的。使用以下代码实现:
<?php

$statement = $session->prepare("UPDATE my_keyspace.my_table SET name = ? WHERE id = ?");

$session->execute($statement, array("Jane Doe", new CassandraUuid()));

$statement = $session->prepare("DELETE FROM my_keyspace.my_table WHERE id = ?");

$session->execute($statement, array(new CassandraUuid()));
Copier après la connexion

在这个例子中,我们使用 UPDATE 关键字和键来更新名称,然后使用 DELETE

    Créer un espace de clés

    Un espace de clés est similaire à une base de données dans Cassandra, il contient plusieurs tables. Créez un Keyspace à l'aide de l'objet session de Cassandra en PHP. Le code est le suivant :

    rrreee

    Un nouveau Keyspace nommé my_keyspace est créé ici. Le paramètre de réplication spécifie la stratégie de sauvegarde des données.

      Créer une table 🎜La création d'une table nécessite un nom, une famille de colonnes et des colonnes associées. Cassandra utilise des familles de colonnes pour organiser et stocker les données. Voici un exemple de code pour créer une table : 🎜🎜rrreee🎜Ce code créera une nouvelle table nommée $my_table. Le tableau contient deux colonnes : id et name, où id est la colonne de clé primaire. 🎜
        🎜Insérer de nouvelles données🎜Pour insérer des données, utilisez le code suivant : 🎜🎜rrreee🎜Dans cet exemple, nous avons préparé une instruction puis exécuté une instruction nommée John Doe code> nom. Ici, nous faisons référence à l'objet <code>Uuid() de PHP pour générer un identifiant unique. 🎜
          🎜Interroger des données🎜Utilisez la variable $statement que nous avons préparée précédemment pour interroger les données de la table my_table : 🎜🎜rrreee🎜Dans ce Par exemple, nous pouvons simplement utiliser une boucle foreach() pour récupérer les données de la requête et utiliser la concaténation de chaînes pour afficher les données sur la console. 🎜
            🎜Mettre à jour et supprimer des données 🎜La mise à jour et la suppression de données sont similaires à l'insertion de données. Utilisez le code suivant pour y parvenir : 🎜🎜rrreee🎜Dans cet exemple, nous utilisons le mot-clé et la clé UPDATE pour mettre à jour le nom, puis nous utilisons le mot-clé et la clé DELETE pour supprimer la ligne. 🎜🎜Résumé🎜🎜Dans cet article, nous avons appris comment connecter la base de données Cassandra, créer des espaces de clés et des tables, insérer, mettre à jour, supprimer des données et interroger des données de PHP à l'aide du pilote PHP et de CQL. 🎜🎜Lors du développement d'applications, la combinaison de la base de données Cassandra avec PHP peut rendre vos applications plus rapides, fiables, évolutives et utiliser la dernière technologie de base de données NoSQL. Dans le même temps, l'utilisation du pilote PHP de Cassandra vous facilite l'intégration et la gestion des bases de données Cassandra. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal