== MemTable
https://github.com/facebook/rocksdb/wiki/MemTable
In-memory data structure that holds data before it’s flushed into an SStable, the implementation may use a RB Tree, a skiplist, a HashLinkList
https://github.com/facebook/rocksdb/wiki/MemTable
In-memory data structure that holds data before it’s flushed into an SStable, the implementation may use a RB Tree, a skiplist, a HashLinkList
GitHub
MemTable
A library that provides an embeddable, persistent key-value store for fast storage. - facebook/rocksdb
== SSTable and Log Structured Storage: LevelDB
https://www.igvita.com/2012/02/06/sstable-and-log-structured-storage-leveldb/
SSTable
An immutable data structure that stores a large number of key:value pairs sorted by key
Advantages over simple hash indexes
- Merging SSTables is similar to doing a merge sort
- To find if a key exists we don’t need an index of all the keys in memory, instead we can keep an index for every few kilobytes and then perform a scan (sparse index)
- range queries can be compressed before writing to disk, the sparse index would only need to find the starting position of the compressed segment
https://www.igvita.com/2012/02/06/sstable-and-log-structured-storage-leveldb/
SSTable
An immutable data structure that stores a large number of key:value pairs sorted by key
Advantages over simple hash indexes
- Merging SSTables is similar to doing a merge sort
- To find if a key exists we don’t need an index of all the keys in memory, instead we can keep an index for every few kilobytes and then perform a scan (sparse index)
- range queries can be compressed before writing to disk, the sparse index would only need to find the starting position of the compressed segment
Igvita
SSTable and Log Structured Storage: LevelDB
LevelDB combines the SSTable, MemTable a number of processing conventions to create a fast, open-source database engine. LevelDB is now embedded in WebKit (IndexDB), but you can also easily embed it in your own application!
== Casanrda. How is data maintained?
https://docs.datastax.com/en/cassandra-oss/3.x/cassandra/dml/dmlHowDataMaintain.html
- SizeTieredCompactionStrategy (STCS) = for writing-intensive
- LeveledCompactionStrategy (LCS) = for reading-intensive
- TimeWindowCompactionStrategy (TWCS)
- DateTieredCompactionStrategy (DTCS)
== Scylla. Choose a Compaction Strategy
https://docs.scylladb.com/stable/architecture/compaction/compaction-strategies.html
https://docs.datastax.com/en/cassandra-oss/3.x/cassandra/dml/dmlHowDataMaintain.html
- SizeTieredCompactionStrategy (STCS) = for writing-intensive
- LeveledCompactionStrategy (LCS) = for reading-intensive
- TimeWindowCompactionStrategy (TWCS)
- DateTieredCompactionStrategy (DTCS)
== Scylla. Choose a Compaction Strategy
https://docs.scylladb.com/stable/architecture/compaction/compaction-strategies.html
Datastax
How is data maintained?
Cassandra processes data at several stages on the write path. Compaction to maintain healthy SSTables is the last step in the write path process.
== Что такое ZFS?
https://docs.oracle.com/cd/E19253-01/820-0836/zfsover-2/index.html
- Это 128-разрядная файловая система с возможностью хранения данных в объеме 256 септильонов зеттабайт
- Не имеет журнала. транзакционна = легко САМОвосстанавливается
- Данные если хранятся то не противоречивы за счет измений по алгоритму CoW
- важные данные можно писать СИНХРОННО. всегда гарантированно сохраняются перед возвратом и поэтому не могут быть утрачены = без буфера = надежно
- поддерживает пулы устройств хранения данных с различными уровнями избыточности данных
- снимки есть из коробки
https://docs.oracle.com/cd/E19253-01/820-0836/zfsover-2/index.html
- Это 128-разрядная файловая система с возможностью хранения данных в объеме 256 септильонов зеттабайт
- Не имеет журнала. транзакционна = легко САМОвосстанавливается
- Данные если хранятся то не противоречивы за счет измений по алгоритму CoW
- важные данные можно писать СИНХРОННО. всегда гарантированно сохраняются перед возвратом и поэтому не могут быть утрачены = без буфера = надежно
- поддерживает пулы устройств хранения данных с различными уровнями избыточности данных
- снимки есть из коробки
== ZFS: архитектура, особенности и отличия от других файловых систем
https://habr.com/ru/company/vk/blog/529516/
+ Целостность и консистентность
+ Сжатие на лету
+ Атомарность
+ «Бесплатные» снапшоты
https://habr.com/ru/company/vk/blog/529516/
+ Целостность и консистентность
+ Сжатие на лету
+ Атомарность
+ «Бесплатные» снапшоты
Хабр
ZFS: архитектура, особенности и отличия от других файловых систем
Frozen cells by arbebuk Я, Георгий Меликов, являюсь контрибьютором проектов OpenZFS и ZFS on Linux. Также я занимаюсь разработкой IaaS в команде облачной платформы Mail.ru Cloud Solutions . Хотя в...
== Data Replication in distributed systems (Part-1)
https://medium.com/@sandeep4.verma/data-replication-in-distributed-systems-part-1-13f52410faa3
== Data Replication in distributed systems (Part-2)
https://medium.com/@sandeep4.verma/data-replication-in-distributed-systems-part-2-32eba557d78e
https://medium.com/@sandeep4.verma/data-replication-in-distributed-systems-part-1-13f52410faa3
== Data Replication in distributed systems (Part-2)
https://medium.com/@sandeep4.verma/data-replication-in-distributed-systems-part-2-32eba557d78e
Medium
Data Replication in distributed systems (Part-1)
Nothing is as easy as it looks. Everything takes longer than you expect. If anything can go wrong, it will, at the worse possible moment
Forwarded from Блог Сергея Баранова (Sergey Baranov)
Небольшое дополнение по одной из обсуждённых тем, «layer communication protocols»:
Важно обратить внимание, что использование layer communication protocols ведет к деградации производительности, но при этом дает и существенные выгоды:
- Модульная структура открывает возможности для самых различных комбинаций, например возможность добавлять и убирать слои в зависимости от требований. You only pay for what you use.
- При аккуратной декомпозиции вышестоящие протоколы могут быть реализованы и протестированы значительно быстрее, чем крупный, монолитный протокол
- Протоколы могут быть взаимозаменяемыми (например, выбор протокола под профиль нагрузки)
- Верифицировать корректность работы небольшого протокола проще
Среди минусов:
- Вычислительный оверхед
- Оверхед в передаваемых данных, в основном в заголовках между уровнями
- Зависимость слоев друг от друга
Из-за того, что в типовой системе сообщению требуется пройти 10 и более слоев, оверхед от пересечения границ протоколов может оказаться даже выше, чем затраты на выполнение полезной нагрузки.
Работы по оптимизации не прекращаются, среди направлений:
- Оптимизация вычислительной нагрузки
- Сжатие заголовков
- Отложенная обработка (например отложенная буферизация сообщения)
По мотивам: https://www.cs.cornell.edu/projects/spinglass/public_pdfs/Optimizing%20Layered.pdf
Важно обратить внимание, что использование layer communication protocols ведет к деградации производительности, но при этом дает и существенные выгоды:
- Модульная структура открывает возможности для самых различных комбинаций, например возможность добавлять и убирать слои в зависимости от требований. You only pay for what you use.
- При аккуратной декомпозиции вышестоящие протоколы могут быть реализованы и протестированы значительно быстрее, чем крупный, монолитный протокол
- Протоколы могут быть взаимозаменяемыми (например, выбор протокола под профиль нагрузки)
- Верифицировать корректность работы небольшого протокола проще
Среди минусов:
- Вычислительный оверхед
- Оверхед в передаваемых данных, в основном в заголовках между уровнями
- Зависимость слоев друг от друга
Из-за того, что в типовой системе сообщению требуется пройти 10 и более слоев, оверхед от пересечения границ протоколов может оказаться даже выше, чем затраты на выполнение полезной нагрузки.
Работы по оптимизации не прекращаются, среди направлений:
- Оптимизация вычислительной нагрузки
- Сжатие заголовков
- Отложенная обработка (например отложенная буферизация сообщения)
По мотивам: https://www.cs.cornell.edu/projects/spinglass/public_pdfs/Optimizing%20Layered.pdf
Forwarded from Machine learning Interview
Вы находитесь в казино и у вас две кости для игры. Каждый ваш бросок стоит 5 долларов, и вы выигрываете 10 долларов каждый раз, когда выпадает 5. Если вы играете до тех пор, пока не выиграете, а затем остановитесь, то какова ожидаемая выплата?
Ответ
▪Есть 36 возможных комбинаций с двумя кубиками.
▪Из 36 комбинаций есть 4 комбинации, в результате которых получается пять (см. рисунок). Это означает, что есть шанс 4/36 или 1/9 бросить 5.
▪Вероятность выигрыша 1/9 означает, что вы проиграете восемь раз и выиграете один раз (теоретически).
▪Следовательно, ваша ожидаемая выплата = потеря равна $ 10,00 * 1 – $ 5,00 * 9 = – $ 35,00.
@machinelearning_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from GitHub Community
Dragonfly – cервис/in-memory база данных, которая будет очень крутой заменой для Redis
По факту это многопоточная, быстрая замена редис
⤷ Ссылка на проект
GitHub | #Interesting #C #Useful
По факту это многопоточная, быстрая замена редис
⤷ Ссылка на проект
GitHub | #Interesting #C #Useful
Все. Победил эйрфлоу. От начала до конца деплоится и воркает и таски наконец утилизируют мой сервак как я и хотел :) осталось только ансиблом хдфс накатить и все, спарк будет работать уже на полную мощь
== unlocking your CPU cores in Python
https://youtu.be/X7vBbelRXn0
https://youtu.be/X7vBbelRXn0
YouTube
Unlocking your CPU cores in Python (multiprocessing)
How to use all your CPU cores in Python?
Due to the Global Interpreter Lock (GIL) in Python, threads don't really get much use of your CPU cores. Instead, use multiprocessing! Process pools are beginner-friendly but also quite performant in many situations.…
Due to the Global Interpreter Lock (GIL) in Python, threads don't really get much use of your CPU cores. Instead, use multiprocessing! Process pools are beginner-friendly but also quite performant in many situations.…
Дизайн интервью
https://youtu.be/Cth-B4r_pf4
https://youtu.be/Cth-B4r_pf4
YouTube
Александр Поломодов — Дизайн секции как проверка навыков проектирования систем на собеседованиях
В крупных компаниях часто собеседование состоит из разных секций, на которых проверяются навыки в computer science, конкретном стеке (java, .net, python, ...) и дизайне распределенных систем. По-крайней мере, в TInkoff именно так. И если по первым двум секциям…
Наверное крутейший ролик про сети в докере. Наконец нашел время посмотреть. Совсем не пожалел. Очень подробно и с примерами для людей
== docker networking
https://youtu.be/bKFMS5C4CG0
- bridge
- user defined bridge
- macvlan (bridge)
- macvlan (802.lq)
- ipvlan (L2)
- ipvlan (L3)
- ocerlay
== docker networking
https://youtu.be/bKFMS5C4CG0
- bridge
- user defined bridge
- macvlan (bridge)
- macvlan (802.lq)
- ipvlan (L2)
- ipvlan (L3)
- ocerlay
YouTube
Docker networking is CRAZY!! (you NEED to learn it)
Don’t leave yourself unprotected, get the best protection by checking out BitDefender Premium Security at the link below.
https://bit.ly/BitdefenderNC
Today you are going to explore the mysterious world of Docker networking. From the default bridge to…
https://bit.ly/BitdefenderNC
Today you are going to explore the mysterious world of Docker networking. From the default bridge to…
== IB в GO
https://youtu.be/UfeZ-bPFs10
https://youtu.be/UfeZ-bPFs10
YouTube
Безопасность в Golang | Навыки
Оставить заявку на менторскую программу Эйч Навыки, чтобы перейти на Go, сменить работу, апнуть грейд или зарплату: https://news.1rj.ru/str/skills_mentee_bot?start=order_success
Подробнее про Эйч Навыки: https://hcareers.notion.site/Go-10-600-4a68da3b8cd5493ea1e56…
Подробнее про Эйч Навыки: https://hcareers.notion.site/Go-10-600-4a68da3b8cd5493ea1e56…
в DigitalOcean шикарный контейнер регистр из коробки для домашних целей просто шикарен. за 5уе в мес 5гб, больше и не надо) а за 20уе уже 100гб. с учетом того что он нереально быстрый и работает с коробки. то вообще огонь. слава богу прошли те времена когда вариантов кроме поднятия собственного регистра вариантов небыло
Forwarded from это канал Миши Петрова
Потом вы посмотрите на динамику количества землятресений за последние полгода и конец света отложится