Cassandra Assignment – Nour Ben Amor Junior SE 2.
PART 1 :
1)
create keyspace tranz_metro with replication={'class':'SimpleStrategy', 'replication_factor':1};
use tranz_metro;
2.1)
CREATE TABLE driver(
... driver_name text PRIMARY KEY,
... password text,
... mobile int,
... current_position text,
... skill set<text>);
2.2)
INSERT INTO driver (driver_name, password, mobile, current_position, skill) VALUES ('Meriem',
'Mimo123', 21285677, 'Tunis', {'Driving cars'});
3.1)
UPDATE driver SET password = 'new_password' WHERE driver_name = 'Mariem' IF password =
'Mimo123';
3.2)
UPDATE driver SET current_position = 'Wellington' WHERE driver_name = 'Mariem';
3.3)
UPDATE driver SET skill = skill + {'Driving'} WHERE driver_name='Mariem';
4.1)
CREATE TABLE vehicle(
... vehicle_id text PRIMARY KEY,
... status text,
... type text);
4.2)
INSERT INTO vehicle(vehicle_id, status, type) VALUES ('Car_BMW', 'Wellington','Car');
6)
CREATE TABLE IF NOT EXISTS time_table( line_name text PRIMARY KEY, service_no int, station_name
text, latitude double, longitude double, time int, distance double);
7.1)
CREATE TABLE IF NOT EXISTS vehicle_usage (
... vehicle_id text PRIMARY KEY,
... total_distance counter);
8.1)
CREATE TABLE IF NOT EXISTS data_point ( day int PRIMARY KEY, sequence timestam
p, latitude double, longitude double, speed double) ;
9)
CREATE TABLE IF NOT EXISTS station (
... name text PRIMARY KEY,
... latitude double,
... north_neighbour text,
... south_neighbour text);
INSERT INTO station (name, latitude, north_neighbour, south_neighbour) VALUES
... ('Wellington', 40, 'Tunis', 'Sousse');
PART 2 :
1)
CREATE TABLE IF NOT EXISTS driver_working_days( driver_name text PRIMARY KEY,
working_day counter);
SELECT working_day FROM driver_working_days WHERE driver_name = 'Meriam';
2)
SELECT line_name, station_name, time FROM tranz_metro.time_table;
3)
SELECT station_name, service_no, time FROM time_table ORDER BY time DESC;
4)
SELECT station_name, time, line_name, service_no FROM time_table;
5)
UPDATE vehicle SET status = 'in_use' WHERE vehicle_id = 'Car_BMW';
6)
SELECT current_position FROM driver WHERE skill CONTAINS 'Driving cars';
7)
SELECT password FROM driver WHERE driver_name = 'Meriam';
8)
INSERT INTO time_table(line_name,service_no, distance) VALUES (
... 'Car_BMW',2, 50);
SELECT distance FROM time_table WHERE line_name = 'Car_BMW' AND service_no = 2