… И получился GFS :)


Доделал «сырую» реализацию тех самых функторов из предыдущего поста. Умеем хранить элементы размером до 2^{62} = 4611686018427387904 = 4 эксабайт. Максимальное количество элементов точно не определено, но примерно равно 2^{200} и изменением буквально десятка байт кода может быть увеличена до примерно 2^{450}. Правда, при этом увеличивается фактический размер ключей и чуть-чуть падает скорость.

Реализованы функторы: Sized (заодно храним фактический размер записи), Splitted (правильнее было бы назвать Striped), Distributed (записи раскидываются по нескольким нижележащим хранилищам), COW (обеспечение почти полной атомарности для всяких сложных хранилищ, типа Splitted, за счёт copy-on-write).

Каким-то сумасшедшим performance пока похвастаться не могу (около 12000 килобайтных выборок в секунду, в случае использования хранилища FileSystem), реализация всё-таки ещё сырая.

Коллега на работе сказанул: «Google BigTable что ли сделал?». Я подумал, и решил, что нет, это Google FS :)

, , ,

  1. No comments yet.
(will not be published)

  1. No trackbacks yet.