1
votes

I am exploring Apache Ignite on top of Cassandra as a possible tool to be able to give ad-hoc queries on cassandra tables. Using Ignite is it possible to able to search or query on any column in the underlying cassandra tables, like a RDBMS? Or can the join columns and search columns only be partition and clustering columns ?

If using Ignite, is there still need to create indexes on cassandra ? Also how does ignite treat materialized views ? Will there be a need to create materialized views ?

Also any insights into how updates to cassandra release can/will be handled by Ignite would be very helpful.

I will elaborate my question further:

Customer table:

CREATE TABLE customer (
    customer_id INT,
    joined_date date,
    name text,
    address TEXT,
    is_active boolean,
    created_by text,
    updated_by text,
    last_updated timestamp,
    PRIMARY KEY(customer_id, joined_date)
);

Product table:
CREATE TABLE PDT_BY_ID (
    device_id uuid,
    desc text,
    serial_number text,
    common_name text,
    customer_id int,
    manu_name text,
    last_updated timestamp,
    model_number text,
    price double,
  PRIMARY KEY((device_id), serial_number)
) WITH CLUSTERING ORDER BY (serial_number ASC);

A join is possible on these tables using apache Ignite. But is the join possible on non-primary keys ? Is it possible for example, to give queries on product table like 'where customer_id = ... AND model_number like = '%ABC%' ' etc. ? Is it possible to give RDBMS like queries where one can give conditions on any columns ? Run ad-hoc queries on the tables ?

1

1 Answers