Внедрить пользовательский шардинг в Cassandra или Couchbase - PullRequest
0 голосов
/ 29 мая 2018

Могу ли я внедрить алгоритм шардинга для увядания Cassandra или Couchbase?
Или они решают, куда направить каждый документ?

Например, если я хочу прикрепить данные к осколкам одним из свойств данных.

Ответы [ 2 ]

0 голосов
/ 30 мая 2018

Couchbase хэш-ключ документа, чтобы решить, с каким шардом (vBucket) документ должен быть связан.SDK также использует тот же алгоритм, чтобы выяснить, в каком осколке находится документ, когда вы хотите извлечь документ по его ключу.

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

Одна из основных концепций в Couchbase заключается в том, что документы (почти) равномерно распределяются между всемишарды, так что я не знаком с какой-либо нативной поддержкой, чтобы вставить туда свой собственный алгоритм.

0 голосов
/ 29 мая 2018

Кассандра решает, куда данные идут по ключу раздела.Так что, если вы используете данные, которые хотите использовать в качестве «булавки», в качестве ключа раздела, то это выполнит то, о чем вы просите, я думаю.Однако вы не выбираете реплики явно, и это может измениться, когда хосты удалены и добавлены в кластер.

...