Създайте и пуснете INDEX Cassandra

Cassandra Създаване на индекс

Командата 'Създаване на индекс' създава индекс върху колоната, зададена от потребителя. Ако данните вече съществуват за колоната, която искате да индексирате, Cassandra създава индекси на данните по време на изпълнението на оператора 'create index'.

  • След като създадете индекс, Cassandra индексира нови данни автоматично, когато се вмъкнат данни.
  • Индексът не може да бъде създаден върху първичен ключ, тъй като първичен ключ вече е индексиран.
  • Индексите на колекциите не се поддържат в Cassandra.
  • Без индексиране на колоната, Cassandra не може да филтрира тази колона, освен ако не е първичен ключ.

Ето защо, за филтриране на колони в Cassandra, трябва да се създадат индекси.

Синтаксис

Create index IndexName on KeyspaceName.TableName(ColumnName);

Пример

Ето моментната снимка, където се опита да филтрира колона „dept“, без да създава индекс. В отговор грешката беше върната.

Cassandra Създаване на индекс

Ето моментната снимка, където индексът е създаден в колона dept.

Cassandra Създаване на индекс

Create index DeptIndex on University.Student(dept);

Ето моментната снимка, където ще бъде успешно филтрирана колона „dept“.

Cassandra Създаване на индекс

select * from University.Student where dept='CS';

Cassandra Изпуснете индекс

Командата 'Drop index' премахва зададения индекс. Ако името на индекса не е дадено по време на създаването на индекса, тогава името на индекса е TableName_ColumnName_idx.

  • Ако индексът не съществува, той ще върне грешка, освен ако не се използва IF EXISTS, който ще върне no-op.
  • По време на създаването на индекс трябва да посочите име на ключово пространство с името на индекса, в противен случай индексът ще бъде премахнат от текущото ключово пространство.

Синтаксис

Drop index IF EXISTS KeyspaceName.IndexName

Пример

Ето моментната снимка на изпълнената команда „Drop index“, която премахва индекса DeptIndex.

Cassandra Изпуснете индекс

drop index IF EXISTS University.DeptIndex;

След успешното изпълнение на командата, DeptIndex ще бъде премахнат от пространството на ключовете. Сега данните не могат да бъдат филтрирани от отдел колона.

Обобщете тази публикация с: