#indexing #postgres #sql
A good and short video about indexing:
https://www.youtube.com/watch?v=-qNSXK7s7_w
A good and short video about indexing:
https://www.youtube.com/watch?v=-qNSXK7s7_w
YouTube
Database Indexing Explained (with PostgreSQL)
Get my Fundamentals of Database Engineering udemy course to learn more , link redirects to udemy with coupon applied https://database.husseinnasser.com
This is a practical video on Database Indexing where I explain what is an index, why do we need it and…
This is a practical video on Database Indexing where I explain what is an index, why do we need it and…
#go #goroutines
Go uses goroutines while a language like Java uses threads.
The creation of a goroutine does not require much memory - only 2kB of stack space. They grow by allocating and freeing heap storage as required. Threads on the other hand start out at 1Mb (500 times more), along with a region of memory called a guard page that acts as a guard between one thread’s memory and another.
A server handling incoming requests can therefore create one goroutine per request without a problem, but one thread per request will eventually lead to the dreaded OutOfMemoryError. This isn’t limited to Java - any language that uses OS threads as the primary means of concurrency will face this issue.
Threads have significant setup and teardown costs because it has to request resources from the OS and return it once its done. The workaround to this problem is to maintain a pool of threads. In contrast, goroutines are created and destroyed by the runtime and those operations are pretty cheap. The language doesn’t support manual management of goroutines.
https://blog.nindalf.com/posts/how-goroutines-work/
Go uses goroutines while a language like Java uses threads.
The creation of a goroutine does not require much memory - only 2kB of stack space. They grow by allocating and freeing heap storage as required. Threads on the other hand start out at 1Mb (500 times more), along with a region of memory called a guard page that acts as a guard between one thread’s memory and another.
A server handling incoming requests can therefore create one goroutine per request without a problem, but one thread per request will eventually lead to the dreaded OutOfMemoryError. This isn’t limited to Java - any language that uses OS threads as the primary means of concurrency will face this issue.
Threads have significant setup and teardown costs because it has to request resources from the OS and return it once its done. The workaround to this problem is to maintain a pool of threads. In contrast, goroutines are created and destroyed by the runtime and those operations are pretty cheap. The language doesn’t support manual management of goroutines.
https://blog.nindalf.com/posts/how-goroutines-work/
Nindalf
How Goroutines Work
Krishna's personal blog
#go #architecture #microservice #banking
Brilliant talk about Go used in Banking (Monzo)
https://www.youtube.com/watch?v=y2j_TB3NsRc
Brilliant talk about Go used in Banking (Monzo)
https://www.youtube.com/watch?v=y2j_TB3NsRc
YouTube
Building a Bank with Go
Download the slides & audio at InfoQ: http://bit.ly/2wzwDMU
Matt Heath discusses why Go is suited for a microservices architecture, the language features that make it particularly attractive to high volume, low latency, distributed applications, and how…
Matt Heath discusses why Go is suited for a microservices architecture, the language features that make it particularly attractive to high volume, low latency, distributed applications, and how…
#DB #ACID #Video
So far the best explanation of ACID transactions. Highly recommend you to watch it if you have not worked with DBs before and do not know what this is.
This might also be useful if you prepare for an interview
https://www.youtube.com/watch?v=pomxJOFVcQs&list=PLQnljOFTspQXjD0HOzN7P2tgzu7scWpl2
So far the best explanation of ACID transactions. Highly recommend you to watch it if you have not worked with DBs before and do not know what this is.
This might also be useful if you prepare for an interview
https://www.youtube.com/watch?v=pomxJOFVcQs&list=PLQnljOFTspQXjD0HOzN7P2tgzu7scWpl2
YouTube
Relational Database ACID Transactions (Explained by Example)
ACID are four properties of relational databases, Atomocity, consistency, isolation and durability, and I think anyone working with a relational database like postgres, mysql, sqlserver oracle, should understand these properties. In this video, we will go…
#DB #Sharding
I am currently reading a lot about systems design for distributed systems. Data management is one of the most complex parts (at least for me, a person, who did not work with it much).
I looked through different "non-distributed" terms like indexing, views, materialised views. The other part is about partitilning/sharding,data replication, leader election algorithms, and how all that correlates with CAP theorem. One should carefully choose between relational and non-relational DBs.
In this article, it is written very well about scaling and sharding for relational DBs.
I highly recommend this, if you also struggle with the concept of Sharding for Relational DBs
Sharding with Amazon Relational Database Service | AWS Database Blog
https://aws.amazon.com/blogs/database/sharding-with-amazon-relational-database-service/
I am currently reading a lot about systems design for distributed systems. Data management is one of the most complex parts (at least for me, a person, who did not work with it much).
I looked through different "non-distributed" terms like indexing, views, materialised views. The other part is about partitilning/sharding,data replication, leader election algorithms, and how all that correlates with CAP theorem. One should carefully choose between relational and non-relational DBs.
In this article, it is written very well about scaling and sharding for relational DBs.
I highly recommend this, if you also struggle with the concept of Sharding for Relational DBs
Sharding with Amazon Relational Database Service | AWS Database Blog
https://aws.amazon.com/blogs/database/sharding-with-amazon-relational-database-service/
Amazon
Sharding with Amazon Relational Database Service | Amazon Web Services
Sharding, also known as horizontal partitioning, is a popular scale-out approach for relational databases. Amazon Relational Database Service (Amazon RDS) is a managed relational database service that provides great features to make sharding easy to use…
#gRPC
Крутой доклад по gRPC
- High Speed
- Language agnostic API and Definitions
- Two-ways communication
- Deadlines
- Cancellation Propagation
- Flow Control
https://www.youtube.com/watch?v=zPbaKUIcFx0
Крутой доклад по gRPC
- High Speed
- Language agnostic API and Definitions
- Two-ways communication
- Deadlines
- Cancellation Propagation
- Flow Control
https://www.youtube.com/watch?v=zPbaKUIcFx0
YouTube
Александр Борисов — Перенимаем опыт Google в построении микросервисов с gRPC
Подробнее о Java-конференциях:
— весной — JPoint: https://jrg.su/gTrwHx
— осенью — Joker: https://jrg.su/h7yvG4
— —
. . . . Микросервисная архитектура не обходится бесплатно, она значительно увеличивает количество удалённых вызовов. Это приводит к новым вызовам…
— весной — JPoint: https://jrg.su/gTrwHx
— осенью — Joker: https://jrg.su/h7yvG4
— —
. . . . Микросервисная архитектура не обходится бесплатно, она значительно увеличивает количество удалённых вызовов. Это приводит к новым вызовам…
“System Design — Storage” by Peng Yang https://link.medium.com/zhoN5AJI1ab
Medium
System Design — Storage
Basic concepts of storage, how different types of storage differ?
“GraphQL Search Indexing” by Netflix Technology Blog https://link.medium.com/ASN0y7e14ab
Medium
GraphQL Search Indexing
How we leverage relationships defined in GraphQL to automatically build and maintain a search index on our data with minimal configuration.
На прошлой неделе весь день провёл на интервью. 5 часов интервью, с 5 людьми. Половину времени знакомились и общались по ценностям, оставшееся время по технической части: решение задачек, алгоритмы, ООП, системный дизайн
В итоге залетаю в одну крутую команду Амазона!
В итоге залетаю в одну крутую команду Амазона!
Системный дизайном никогда не занимался и интервью не проходил. Но имея прошлый опыт подготовок к разным конкурсам, я нашел свою модель подготовки.
Моя формула успеха - систмность, от общего к частному, и калибровка с последующей работой над ошибками.
В итоге, полторы-две недели и успешное прохождение! Чуть позже постараюсь раскрыть в больших деталях
Моя формула успеха - систмность, от общего к частному, и калибровка с последующей работой над ошибками.
В итоге, полторы-две недели и успешное прохождение! Чуть позже постараюсь раскрыть в больших деталях
Youtube - главный учитель нашего времени! По крайней мере в моем случае.
У всех разные подходы к развитию, в моем же случае это через видео. Иногда конечно читаю статьи, но в целом это не самая первая стадия. Я читаю что для статей мне нужно дорасти, а для этого сперва мне нужно понять общий контекст и услышать ряд точек зрения. Фильтруя по количеству лайков/дизлайков я могу предоложить, какой контент стоит смотреть, а какой можно скипнуть.
Дополнительный бустр - я практически всегда смотрю все на скорости 1.5-2х
У всех разные подходы к развитию, в моем же случае это через видео. Иногда конечно читаю статьи, но в целом это не самая первая стадия. Я читаю что для статей мне нужно дорасти, а для этого сперва мне нужно понять общий контекст и услышать ряд точек зрения. Фильтруя по количеству лайков/дизлайков я могу предоложить, какой контент стоит смотреть, а какой можно скипнуть.
Дополнительный бустр - я практически всегда смотрю все на скорости 1.5-2х
Очень крутая статья на тему Scrum. В целом, в нашей команде мне очень нравится наша динамика, но даже в ней, неокторые участники заметили изъяны и попросили прокачать! Больше всего мне понравилась пока эта статья. Делюсь с вами
https://stackoverflow.blog/2020/06/29/does-scrum-ruin-great-engineers-or-are-you-doing-it-wrong/
https://stackoverflow.blog/2020/06/29/does-scrum-ruin-great-engineers-or-are-you-doing-it-wrong/
Stack Overflow Blog
Does scrum ruin great engineers or are you doing it wrong?
A question on Stack Overflow’s Software Engineering site caught our attention recently. It tries to come to terms with the impact of scrum on developers' ability to do a great job. The claim is a bold one: Scrum is turning good developers into average ones.…
„Chillin‘“ at Amazon
Системный дизайном никогда не занимался и интервью не проходил. Но имея прошлый опыт подготовок к разным конкурсам, я нашел свою модель подготовки. Моя формула успеха - систмность, от общего к частному, и калибровка с последующей работой над ошибками. В…
Я обещал рассказать чуть в больших деталях о моей подгтовке к к собеседованию в FANG.
Мой фреймворк для прохождения интервью по системному дизайну, с которым я готовился к интервью на позицию SDE в Amazon:
- начинать со сбора информации, и только потом предлагать
- слушать собеседника и отвечать только на те вопросы, что он просит, т.е. не накручитьва сверху, если не просят. Иное, если переспрсить, нужно ли погрузиться в те или иные детали, особено если чувствуешь себя там уверенным. Но если не просят, то не нужно.
Собираю данные я по след. группам:
- functional requirements (request/response),
- non-functional requirements (tps (transaction per second), latency targets, consistency, etc.),
- what's out of scope,
- rough numbers to estimate load (network, storage, compute), notes
Если подкрепить все это подготовкой в виде репетиций или mock interview, то шансы на успех очень высоки.
Если кому интересные какие то спецефические детали, то спрашивайте. Буду рад поделиться опытом.
Чуть позже по-пишу на тему очень полезных ЮТуб каналов
Мой фреймворк для прохождения интервью по системному дизайну, с которым я готовился к интервью на позицию SDE в Amazon:
- начинать со сбора информации, и только потом предлагать
- слушать собеседника и отвечать только на те вопросы, что он просит, т.е. не накручитьва сверху, если не просят. Иное, если переспрсить, нужно ли погрузиться в те или иные детали, особено если чувствуешь себя там уверенным. Но если не просят, то не нужно.
Собираю данные я по след. группам:
- functional requirements (request/response),
- non-functional requirements (tps (transaction per second), latency targets, consistency, etc.),
- what's out of scope,
- rough numbers to estimate load (network, storage, compute), notes
Если подкрепить все это подготовкой в виде репетиций или mock interview, то шансы на успех очень высоки.
Если кому интересные какие то спецефические детали, то спрашивайте. Буду рад поделиться опытом.
Чуть позже по-пишу на тему очень полезных ЮТуб каналов
Один из моих пет-проектов: https://t.me/gmat_bashers
Мой личный тренажер, где я ставлю мозги на свое место. Давно хотел поднять его, да все ходил вокруг да около. Но порядка месяца назад все же реализовал. Как ни странно, самый действенный способ оказался пойти от Customer'а - те самые навыки, что остались у меня от времени, когда я развивал свой прошлый стартап.
Сегодня особенный день - день когда весь процесс публикации вопросов от начала до конца был без моего вмешательства.
з.ы. если качаешь английский язык, навыки критического мышления (умения аргументировать), или просто к GMAT 😂, то добро пожаловать! Будем вместе решать задачки
https://t.me/gmat_bashers
Мой личный тренажер, где я ставлю мозги на свое место. Давно хотел поднять его, да все ходил вокруг да около. Но порядка месяца назад все же реализовал. Как ни странно, самый действенный способ оказался пойти от Customer'а - те самые навыки, что остались у меня от времени, когда я развивал свой прошлый стартап.
Сегодня особенный день - день когда весь процесс публикации вопросов от начала до конца был без моего вмешательства.
з.ы. если качаешь английский язык, навыки критического мышления (умения аргументировать), или просто к GMAT 😂, то добро пожаловать! Будем вместе решать задачки
https://t.me/gmat_bashers
„Chillin‘“ at Amazon
Я обещал рассказать чуть в больших деталях о моей подгтовке к к собеседованию в FANG. Мой фреймворк для прохождения интервью по системному дизайну, с которым я готовился к интервью на позицию SDE в Amazon: - начинать со сбора информации, и только потом…
#systems_design #youtube_channel
Systems Design #2
Как и обещал, начинаю делиться ресурсами, которые помогли мне при подготовке к Systems Design Interview
Imho, топовый канал по подготовке - https://www.youtube.com/channel/UC9vLsnF6QPYuH51njmIooCQ
Там не очень много видео, но по содержанию очень богатые. Впервые я наткнулся на этот канал около года назад. Тогда, посмотрев его минут 15, я начал замечать, что информации новой для меня очень много. Приходилось ставить паузу и обдумывать все в деталях. Далее конечно, как и, наверное, делают многие, я просто забросил просмотр, так как просто на голом интересе так страдать мой организм судя по всему не захотел (я тогда никуда не готовился).
Около месяца назад, при подготовке к интервью, я решил взяться за этот канал еще раз и, честно говоря, ожидал, что пойдет намного легче. Но увы все началось ровно также - трудно и много.
Но разбавляя прсомотр видео на этом канале теми, что с других, я смог осилить первое видео, а потом второе, а потом и все остальные.
Уже через неделю подготовки (по 2-3 часа в день), я смотрел на эти видео как на родные и они уже не казались мне такими сложными.
Из плюсов, автор очень круто структурировал все свои видео и дает контент постепенно. К концу просмотра всех видео, при желании, каждый сможет сформировать свой фреймворк прохождения Systems Design Interview. У меня получилось на ура! Рекомендую смотреть по порядку, так как какие то темы он расскрывает в первых видео, и в следующих уже не повторяется.
Опять же, из моего опыта, это топ!
Systems Design #2
Как и обещал, начинаю делиться ресурсами, которые помогли мне при подготовке к Systems Design Interview
Imho, топовый канал по подготовке - https://www.youtube.com/channel/UC9vLsnF6QPYuH51njmIooCQ
Там не очень много видео, но по содержанию очень богатые. Впервые я наткнулся на этот канал около года назад. Тогда, посмотрев его минут 15, я начал замечать, что информации новой для меня очень много. Приходилось ставить паузу и обдумывать все в деталях. Далее конечно, как и, наверное, делают многие, я просто забросил просмотр, так как просто на голом интересе так страдать мой организм судя по всему не захотел (я тогда никуда не готовился).
Около месяца назад, при подготовке к интервью, я решил взяться за этот канал еще раз и, честно говоря, ожидал, что пойдет намного легче. Но увы все началось ровно также - трудно и много.
Но разбавляя прсомотр видео на этом канале теми, что с других, я смог осилить первое видео, а потом второе, а потом и все остальные.
Уже через неделю подготовки (по 2-3 часа в день), я смотрел на эти видео как на родные и они уже не казались мне такими сложными.
Из плюсов, автор очень круто структурировал все свои видео и дает контент постепенно. К концу просмотра всех видео, при желании, каждый сможет сформировать свой фреймворк прохождения Systems Design Interview. У меня получилось на ура! Рекомендую смотреть по порядку, так как какие то темы он расскрывает в первых видео, и в следующих уже не повторяется.
Опять же, из моего опыта, это топ!
YouTube
System Design Interview
Preparing for a system design interview? Or simply want to know how distributed systems work? Welcome to our channel!
Me on LinkedIn: www.linkedin.com/in/mikhail-smarshchok
Me on Twitter: https://twitter.com/smarshchokm
More of my courses on system design:…
Me on LinkedIn: www.linkedin.com/in/mikhail-smarshchok
Me on Twitter: https://twitter.com/smarshchokm
More of my courses on system design:…
„Chillin‘“ at Amazon
Один из моих пет-проектов: https://t.me/gmat_bashers Мой личный тренажер, где я ставлю мозги на свое место. Давно хотел поднять его, да все ходил вокруг да около. Но порядка месяца назад все же реализовал. Как ни странно, самый действенный способ оказался…
Из стэка использовал: Telegram API, DynamoDB, AWS Lambda. Мало того что все три сервсиа очень user-friendly, так еще и практически бесплатно.
Хотелось бы отдельно отметить AWS Lambda, это реально вещь! С ней каждый "сам-себе-режиссер" и может писать кучу различных скриптов для персональных нужд.
Учитывая, что там до 1 млн запросов в месяц бесплатно, то при интеграции с кучей различных апишек, можно писать реально крутые фичи для повышения собственной продуктивности.
Чего уж говорить о потенциале для стартаперов
Хотелось бы отдельно отметить AWS Lambda, это реально вещь! С ней каждый "сам-себе-режиссер" и может писать кучу различных скриптов для персональных нужд.
Учитывая, что там до 1 млн запросов в месяц бесплатно, то при интеграции с кучей различных апишек, можно писать реально крутые фичи для повышения собственной продуктивности.
Чего уж говорить о потенциале для стартаперов