Datastax Node.js Драйвер Cassandra Когда использовать Mapper или Query - PullRequest
1 голос
/ 03 августа 2020

Я работаю с драйвером Datastax Node.js и не могу понять, когда использовать сопоставитель или запрос. Кажется, что оба могут выполнять одни и те же операции CRUD.

С запросом:

const q = SELECT * FROM mykeyspace.mytable WHERE id='12345';
client.execute(q).then(result => console.log('This is the data', result);

С картографом:

const tableRow = await tableMapper.find({ id: '12345' });

Когда следует ли использовать средство сопоставления для запроса и наоборот?

Ответы [ 2 ]

2 голосов
/ 04 августа 2020

Mapper - это функция cassandra-driver, выпущенная в 2018 году. Используя mapper, cassandra-driver может создать карту из вашей таблицы cassandra в объект в nodejs, и вы можете обрабатывать в своем nodejs приложении как набор document.

Используя mapper, вы можете делать выборки или вставки в свою базу данных, как сказано в этой статье: https://www.datastax.com/blog/2018/12/introducing-datastax-nodejs-mapper-apache-cassandra

С методом запроса, если вам нужно использовать или повторно используйте любое свойство из вашего json, вам нужно будет сделать Json .Parse ().

1 голос
/ 04 августа 2020

Короткий ответ: все, что вам будет удобнее.

Mapper позволяет вам работать с данными базы данных как с документами (JavaScript объектами), строит CQL-запрос для вас, выполняет запрос и отображает результаты.

С другой стороны, основной драйвер поддерживает только выполнение запросов CQL, которые вы должны написать самостоятельно.

...