Вопрос

Я разрабатываю платформу PHP, которая будет иметь огромное использование изображений, документов и любого формата файлов, который будет в моей голове, поэтому мне было интересно, является ли Кассандра хорошим выбором для моих нужд.

Если нет, то можете ли вы сказать мне, как мне хранить файлы? Я хотел бы продолжать использовать Cassandra, потому что она устойчива к неисправности и использует автоматическую репликацию среди узлов.

Спасибо за помощь.

Это было полезно?

Решение

От Кассандра Вики,

Cassandra's public API is based on Thrift, which offers no streaming abilities 
any value written or fetched has to fit in memory. This is inherent to Thrift's 
design and is therefore unlikely to change. So adding large object support to
Cassandra would need a special API that manually split the large objects up 
into pieces. A potential approach is described in http://issues.apache.org/jira/browse/CASSANDRA-265.    
As a workaround in the meantime, you can manually split files into chunks of whatever 
size you are comfortable with -- at least one person is using 64MB -- and making a file correspond 
to a row, with the chunks as column values.

Поэтому, если ваши файлы <10 МБ, у вас будет в порядке, просто обязательно ограничите размер файла или разбили большие файлы на куски.

Другие советы

Вы должны быть в порядке с файлами 10 МБ. На самом деле, DataStax Brisk ставит файловую систему поверх Cassandra, если я не ошибаюсь: http://www.datastax.com/products/enterprise.

(Я никоим образом не связан с ними- это не объявление)

Как свежая информация, Netflix предоставляет коммунальные услуги для своего клиента Cassandra под названием Астианакс Для хранения файлов в качестве хранилища объектов. Описание и примеры можно найти здесь. Анкет Это может быть хорошей отправной точкой для написания некоторых тестов с использованием Astyanax и оценки Cassandra в качестве хранилища файлов.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top