Cassandra - Jatuhkan Indeks

Menjatuhkan Indeks

Anda dapat menjatuhkan indeks menggunakan perintah DROP INDEX. Sintaksnya adalah sebagai berikut -

DROP INDEX <identifier>

Diberikan di bawah ini adalah contoh untuk menjatuhkan indeks kolom dalam tabel. Di sini kami menghapus indeks nama kolom di tabel emp.

cqlsh:tp> drop index name;

Menghapus Indeks menggunakan Java API

Anda dapat menghapus indeks tabel menggunakan metode execute () kelas Sesi. Ikuti langkah-langkah yang diberikan di bawah ini untuk menghapus indeks dari tabel.

Langkah 1: Buat Objek Cluster

Buat sebuah instance dari Cluster.builder kelas dari com.datastax.driver.core paket seperti yang ditunjukkan di bawah ini.

//Creating Cluster.Builder object
Cluster.Builder builder1 = Cluster.builder();

Tambahkan titik kontak (alamat IP node) menggunakan addContactPoint() metode dari Cluster.Builder object. Metode ini kembaliCluster.Builder.

//Adding contact point to the Cluster.Builder object
Cluster.Builder builder2 = build.addContactPoint( "127.0.0.1" );

Menggunakan objek builder baru, buat objek cluster. Untuk melakukannya, Anda memiliki metode yang disebutbuild() dalam Cluster.Builderkelas. Kode berikut menunjukkan cara membuat objek cluster.

//Building a cluster
Cluster cluster = builder.build();

Anda dapat membangun objek cluster menggunakan satu baris kode seperti yang ditunjukkan di bawah ini.

Cluster cluster = Cluster.builder().addContactPoint("127.0.0.1").build();

Langkah 2: Buat Objek Sesi

Buat instance objek Sesi menggunakan metode connect () dari kelas Cluster seperti yang ditunjukkan di bawah ini.

Session session = cluster.connect( );

Metode ini membuat sesi baru dan menginisialisasinya. Jika Anda sudah memiliki ruang kunci, Anda dapat menyetelnya ke yang sudah ada dengan meneruskan nama KeySpace dalam format string ke metode ini seperti yang ditunjukkan di bawah ini.

Session session = cluster.connect(“ Your keyspace name ” );

Di sini kami menggunakan KeySpace bernama tp. Oleh karena itu, buat objek sesi seperti yang ditunjukkan di bawah ini.

Session session = cluster.connect(“ tp” );

Langkah 3: Jalankan Kueri

Anda dapat menjalankan kueri CQL menggunakan metode execute () dari kelas Sesi. Teruskan kueri baik dalam format string atau sebagaiStatementobjek kelas ke metode execute (). Apa pun yang Anda berikan ke metode ini dalam format string akan dieksekusi dicqlsh.

Dalam contoh berikut, kami menghapus indeks "nama" dari empmeja. Anda harus menyimpan kueri dalam variabel string dan meneruskannya ke metode execute () seperti yang ditunjukkan di bawah ini.

//Query
String query = "DROP INDEX user_name;";
session.execute(query);

Diberikan di bawah ini adalah program lengkap untuk menjatuhkan indeks di Cassandra menggunakan Java API.

import com.datastax.driver.core.Cluster;
import com.datastax.driver.core.Session;

public class Drop_Index {

   public static void main(String args[]){
     
      //Query
      String query = "DROP INDEX user_name;";
 
      //Creating cluster object
      Cluster cluster = Cluster.builder().addContactPoint("127.0.0.1").build();.
 
      //Creating Session object
      Session session = cluster.connect("tp"); 
 
      //Executing the query
      session.execute(query);
      
      System.out.println("Index dropped");
   }
}

Simpan program di atas dengan nama kelas diikuti dengan .java, telusuri ke lokasi penyimpanannya. Kompilasi dan jalankan program seperti yang ditunjukkan di bawah ini.

$javac Drop_index.java
$java Drop_index

Dalam kondisi normal, itu harus menghasilkan keluaran berikut -

Index dropped