2012-04-03 2 views
1

Это вопрос опытных пользователей Cassandra. Я хотел бы хранить фотографии в Кассандре. Структура данных очень проста:Модель данных Cassandra для хранения 1.000.000 фотографий

UUID : photo_id; 
String: filename; 
String authorname; 

Как сохранить эти данные в Кассандре? Использовать photoId как CF-ключ или сохранить все фотографии в виде столбцов, где photoid - это имя столбца? Мне нужно быстро повторить и не нужно быстро пользоваться f.e. имена авторов.

С уважением

Тома

ответ

1

Если вы планируете всегда LookUp фотографий по photo_id, вы, по сути, должны относиться к нему как хранилище ключей значения с photo_id в качестве ключа и изображений в качестве значения столбца. Метаданные (имя файла, имя автора) могут быть сохранены в дополнительных столбцах в пределах одной строки, если они обычно нужны в то же время, что и изображение.

Если ваши изображения очень большие, рассмотрите их разделение на части размером от 1 до 10 мкл, по одной колонке на единицу, чтобы вам не приходилось брать их все сразу.

Если вам также нужно иногда искать по имени автора, используйте второй CF в качестве индекса, где ключ строки является именем автора, а столбцы - photo_id. Затем вы можете получить фактические изображения из первого CF с помощью photo_id.

Непонятно, что вы подразумеваете под «быстрым повторением», но если вы планируете сканировать весь набор данных изображения 1 м, вы можете сделать это довольно легко с первого CF I, описанного by using get_range_slices.

+0

спасибо, что очень много Tyler !! Цените :) – tomekkup

+0

@tomekkup добро пожаловать! Не забывайте, что в StackOverflow вы можете принимать ответы, чтобы другие могли видеть, что на вопрос был дан ответ. –

+0

уверенный вещь! благодаря – tomekkup

Смежные вопросы