Я новичок в Кассандре и пытаюсь перенести мое приложение из MongoDB КассандраКак смоделировать коллекции mongodb для базы данных Cassandra (миграция)?
У меня есть следующие коллекции в MongoDB
PhotoAlbums
[
{id: oid1, title:t1, auth: author1, tags: ['bob', 'fun'], photos: [pid1, pid2], views:200 }
{id: oid2, title:t2, auth: author2, tags: ['job', 'fun'], photos: [pid3, pid4], views: 300 }
{id: oid3, title:t3, auth: author3, tags: ['rob', 'fun'], photos: [pid2, pid4], views: 400 }
....
]
Photos
[
{id: pid1, cap:t1, auth: author1, path:p1, tags: ['bob','fun'], comments:40, views:2000, likes:0 }
{id: pid2, cap:t2, auth: author2, path:p2, tags: ['job','fun'], comments:50, views:50, likes:1, liker:[bob] }
{id: pid3, cap:t3, auth: author3, path:p3, tags: ['rob','fun'], comments:60, views: 6000, likes: 0 }
...
]
Comments
[
{id: oid1, photo_id: pid1, commenter: bob, text: photo is cool, likes: 1, likers: [john], replies: [{rep1}, {rep2}]}
{id: oid2, photo_id: pid1, commenter: bob, text: photo is nice, likes: 1, likers: [john], replies: [{rep1}, {rep2}]}
{id: oid3, photo_id: pid2, commenter: bob, text: photo is ok, likes: 2, likers: [john, bob], replies: [{rep1}]}
]
запросы:
Запрос 1: Покажите список популярных альбомов (по количеству понравившихся)
Запрос 2: Показать список наиболее обсуждаемых альбомов (в зависимости от количества комментариев)
Query 3: Показать список всех альбомов данного автора на странице пользователя
Запрос 4: Показать альбом со всеми фотографиями и все комментарии (выдвижные детали альбома, показать фото эскизы всех фотографий в альбоме, показать все комментарии выбранной фотографии
Query 5: показать список связанных альбомов на основе тегов текущего альбома
Учитывая приведенную выше схему и требования, как следует моделировать это в Кассандре?