ITEXTRAPOLATION Telegram 690
Принципиально существует два разных метода к организации данных приложения. Первый условно называем «простое чтение, сложная запись», а второй подход обратный первому — «сложное чтение, простая запись». И вообще любая логика программ находится где-то на этой шкале, между описанными крайностями.

Простой и утрированый пример — это когда вам хочется посчитать количество коментариев к публикации, то для этого можно сделать джойн с каунтом, а можно коллбеком инкрементировать comments_count в основной записи. Сложновастенько и нетранзакционно, но потом при чтении не надо будет джойны делать. Короче, у вас либо простое чтение, но с записью нужно заморочиться, либо наоборот.

Повсеместный подход вообще во всех маленьких, но амбициозных приложениях — это начать с простой записи и сложного чтения. Когда и джойны маленькие и количество записей в табличке не то, чтобы такое большое. А потом уже эволюционно приходим к тому, что и счётчики кешировать нужно и рядом с parent_id ещё и grandpa_id держать бы хотелось. С опытом приходишь к мысли, что так делать нужно уже сразу в маленьком новеньком приложении, когда имена табличек в базе данных ещё наизусть назвать все можешь.

Есть, конечно, в этом и кардинальные, так сказать, проблемы, которые нужно решать. Но куда ж без них-то, без проблем этих.



tgoop.com/itextrapolation/690
Create:
Last Update:

Принципиально существует два разных метода к организации данных приложения. Первый условно называем «простое чтение, сложная запись», а второй подход обратный первому — «сложное чтение, простая запись». И вообще любая логика программ находится где-то на этой шкале, между описанными крайностями.

Простой и утрированый пример — это когда вам хочется посчитать количество коментариев к публикации, то для этого можно сделать джойн с каунтом, а можно коллбеком инкрементировать comments_count в основной записи. Сложновастенько и нетранзакционно, но потом при чтении не надо будет джойны делать. Короче, у вас либо простое чтение, но с записью нужно заморочиться, либо наоборот.

Повсеместный подход вообще во всех маленьких, но амбициозных приложениях — это начать с простой записи и сложного чтения. Когда и джойны маленькие и количество записей в табличке не то, чтобы такое большое. А потом уже эволюционно приходим к тому, что и счётчики кешировать нужно и рядом с parent_id ещё и grandpa_id держать бы хотелось. С опытом приходишь к мысли, что так делать нужно уже сразу в маленьком новеньком приложении, когда имена табличек в базе данных ещё наизусть назвать все можешь.

Есть, конечно, в этом и кардинальные, так сказать, проблемы, которые нужно решать. Но куда ж без них-то, без проблем этих.

BY Экстраполяция IT


Share with your friend now:
tgoop.com/itextrapolation/690

View MORE
Open in Telegram


Telegram News

Date: |

Concise It’s yet another bloodbath on Satoshi Street. As of press time, Bitcoin (BTC) and the broader cryptocurrency market have corrected another 10 percent amid a massive sell-off. Ethereum (EHT) is down a staggering 15 percent moving close to $1,000, down more than 42 percent on the weekly chart. The Standard Channel Find your optimal posting schedule and stick to it. The peak posting times include 8 am, 6 pm, and 8 pm on social media. Try to publish serious stuff in the morning and leave less demanding content later in the day. Telegram Channels requirements & features
from us


Telegram Экстраполяция IT
FROM American