Как я могу получить данные из двух таблиц в базе данных Cassandra

Мне нужно получить данные из двух таблиц,

Вот мои две таблицы в базе данных Cassandra.

сотрудник является ключевым пространством,

Два стола:

  1. emp:- "eno" это первичный ключ,"имя пользователя","пароль"
  2. Отдел: «dno» — это первичный ключ, «eno», «dname»

Теперь я хочу получить данные из двух таблиц, например. eno,имя пользователя,пароль,dno,dname.

Как я могу получить данные из двух таблиц?


person user1983299    schedule 01.07.2013    source источник


Ответы (1)


Как я могу получить данные из двух таблиц?

Вы не можете сделать это в одном запросе, если это то, о чем вы спрашиваете. Это означает, что вам нужно выполнить два запроса и позволить вашему приложению имитировать объединение или другой вариант, денормализовать ваши данные, чтобы они находились в одной таблице.

Что касается фактического выполнения запроса, существуют пакеты API, которые могут извлекать данные из Cassandra.

Предполагая, что ваши семейства столбцов emp и Dept, вы можете выполнять запросы с помощью cli:

$ ./cassandra-cli -host localhost -port 9160
$ [default@unknown] USE employee
# single row (collection of columns)
$ [default@employee] GET emp['eno']['username']['password'] as ascii;
# 10 rows for emp column family (aka table)
$ [default@employee] LIST  emp limit 10;

Ознакомьтесь с документацией по Cassandra 0.7 для использования интерфейса командной строки.

person Lyuben Todorov    schedule 01.07.2013