Luo ja pudota INDEX Cassandra
Cassandra Luo hakemisto
Komento "Create index" luo indeksin käyttäjän määrittelemään sarakkeeseen. Jos indeksoitavan sarakkeen tiedot ovat jo olemassa, Cassandra luo indeksejä dataan "create index" -käskyn suorittamisen aikana.
- Indeksin luomisen jälkeen Cassandra indeksoi uudet tiedot automaattisesti, kun tietoja lisätään.
- Indeksiä ei voida luoda ensisijaiselle avaimelle, koska ensisijainen avain on jo indeksoitu.
- Kokoelmien indeksejä ei tueta Cassandra.
- Ilman indeksointia sarakkeeseen, Cassandra ei voi suodattaa kyseistä saraketta, ellei se ole ensisijainen avain.
Siksi sarakkeiden suodattamiseen Cassandra, indeksit on luotava.
Syntaksi
Create index IndexName on KeyspaceName.TableName(ColumnName);
esimerkki
Tässä on tilannekuva, jossa yritettiin suodattaa "dept" -saraketta luomatta hakemistoa. Vastauksena virhe palautettiin.
Tässä on tilannekuva, jossa indeksi luodaan osastosarakkeeseen.
Create index DeptIndex on University.Student(dept);
Tässä on tilannekuva, jossa se suodatetaan onnistuneesti "osasto"-sarakkeessa.
select * from University.Student where dept='CS';
Cassandra Pudota indeksi
Komento "Drop index" pudottaa määritetyn indeksin. Jos indeksin nimeä ei annettu indeksin luomisen aikana, indeksin nimi on TaulukonNimi_SarakkeenNimi_idx.
- Jos indeksiä ei ole, se palauttaa virheilmoituksen, ellei IF EXISTS -toimintoa käytetä, joka palauttaa no-op.
- Indeksin luomisen aikana sinun on määritettävä avaintilan nimi indeksin nimellä, muuten indeksi pudotetaan nykyisestä avainavaruudesta.
Syntaksi
Drop index IF EXISTS KeyspaceName.IndexName
esimerkki
Tässä on tilannekuva suoritetusta komennosta "Drop index", joka pudottaa indeksin DeptIndexin.
drop index IF EXISTS University.DeptIndex;
Onnistuneen komennon suorittamisen jälkeen DeptIndex pudotetaan näppäinavaruudesta. Nyt tietoja ei voi suodattaa sarakeosaston mukaan.