
Азиз
24.11.2016
07:38:27
или же здесь уже какие то другие механизмы нужно реализовывать?

Fike
24.11.2016
07:39:47
там выше написали, как это делается на практике

Vladislav
24.11.2016
07:43:21
У меня был проект, когда я по 300к записей в день лил в MS SQL из яндекс маркета. Когда записей в таблице стало под 50 млн, мне пришлось лепить кучу индексов. Проблема в том, что бизнес меня ограничивал в железе и ставил цель быстрого получения данных. Я это реализовал, но я забил на скорость загрузки (для проекта было не критично) и в последствии у админов были проблемы с бэкапами, т.к. места это занимало прилично...
На мой взгляд, Ms SQL не очень для таких масштабов... И да, версия была 2005, возможно в новых версиях они сделали лучше...

Google

Азиз
24.11.2016
07:46:51
а сейчас сколько данных там накопилось?

Vladislav
24.11.2016
07:47:22
Я уже полтора года, как не работаю с этим проектом

Азиз
24.11.2016
07:48:15
ясно
спасибо

Fike
24.11.2016
07:57:51
В общем, на этих объемах уже лучше забывать как про нормализацию, так и про реляционки, а все запросы сводить к простому получению данных по ключу или листингу значений по части ключа. Потому что ничего дешевле для движка придумать не получится, ему остается только вычислить ответственные ноды по значению ключа, спросить N из них о том, что там такое валяется, а они благодаря индексу уже знают, в каком месте искать.
Поэтому выброси из головы MSSQL, нормализацию и найди человека, для которого такие вещи не будут новостью
Ну и про индексы (кроме автоматического первичного ключа) лучше тоже забыть, просто под каждую выборку готовить свою таблицу. Если движок позволяет сделать это автоматом через какой-нибудь mv - ок, нет - делать руками при каждом апдейте

Азиз
24.11.2016
08:01:53

Fike
24.11.2016
08:02:30
И идеи про поиск в БД сразу тоже отложить в глупое лето

Alex
24.11.2016
08:02:35
Вариант, нанять человека

Fike
24.11.2016
08:02:43
думаю, что ты просто прочел название в интернете и сейчас предлагаешь его на м

Азиз
24.11.2016
08:02:47

Fike
24.11.2016
08:03:05
стоит рассмотреть его еще раз

Google

Азиз
24.11.2016
08:04:47
спасибо за совет

Fike
24.11.2016
08:05:06
ну, опровергни меня тогда

Азиз
24.11.2016
08:05:31
чем? я же говорб я не базист
я его начал изучать
в связке с ТNodejs
NodeJs

Fike
24.11.2016
08:09:00
я примено такое и имел в виду. тебе надо изучать гарантии хранилища и принципы внутренней работы, чтобы их сравнивать, а не смотреть хипстерские скринкасты возможностей и интерфейс. монгой не пользовался, но и ничего хорошего не слышал, некоторые вещи, которые смотрел, вызывали вопросы.
у тебя вообще первый вопрос должен быть, нужно ли тебе неструктурированное хранение и сможешь ли ты его вывезти на хранилище со строгой структурой, если понадобится
потому что уже дальше надо будет смотреть либо только документоориентированные решения, либо все вообще
и из-за этого я с большим неудомением воспринимаю прыжок mssql -> mongo

Азиз
24.11.2016
08:12:56

Fike
24.11.2016
08:13:01
и, под конец, я тоже не базист
not that shit again
sla озвучьте

Азиз
24.11.2016
08:13:23
не будет нужды переводить

Fike
24.11.2016
08:13:23
что такое скорость? миллисекунда? десять? сто?

Азиз
24.11.2016
08:14:04
мс

Fike
24.11.2016
08:14:12
что мс?

Азиз
24.11.2016
08:14:14

Google

Fike
24.11.2016
08:14:20
лол

Азиз
24.11.2016
08:14:27
обработка запроса в миллисекундах

Fike
24.11.2016
08:14:43
сколько?
я могу посоветовать аэроспайк как одно из самых быстрых решений, с которым работал, но они, я так понимаю, забивают на консистентность
могу посоветовать кассандру, но это тоже все вилами по воде
поэтому, пожалуйста, sla в студию

Vladislav
24.11.2016
08:16:25

KOT
24.11.2016
08:18:23

Fike
24.11.2016
08:18:39
ну с тобой-то мы еще mysql ему можем предложить

Азиз
24.11.2016
08:19:09
вот в кждой группе есть такие занозы)

Vladislav
24.11.2016
08:19:19
А вообще да, если нужно поднять проект - нанимайте человека.

Азиз
24.11.2016
08:19:28

Vladislav
24.11.2016
08:19:32
В противном случае ставьте эксперименты сами

Азиз
24.11.2016
08:19:50
да придется походу

Vladislav
24.11.2016
08:20:06
А как вы хотели по другому? ?

Fike
24.11.2016
08:20:07

Азиз
24.11.2016
08:21:32

Vladislav
24.11.2016
08:21:39
Чтобы что-то рекомендовать, нам надо понимать всю архитектуру и структуру, какой входной поток, какой выходной, какие скорости нужны, какие скорости имеем, какое железо, какой бюджет и прочие прелести жизни

Fike
24.11.2016
08:22:16
угу. и этой информации вообще по нулям. "нужно, чтобы было быстро".

Alex
24.11.2016
08:22:42
И шардинг!

Google

KOT
24.11.2016
08:22:44

Fike
24.11.2016
08:22:55
ясен хер, что нужно, чтобы было быстро, это 2016, все хотят чтобы было быстро

Азиз
24.11.2016
08:23:11
мало или много получил

Fike
24.11.2016
08:23:33

Alex
24.11.2016
08:23:43
Есть идея фикс, всех таких отправлять на монгу :)

KOT
24.11.2016
08:23:47

Alex
24.11.2016
08:24:39
После того как намаются с монгой может мысли какие то появятся

KOT
24.11.2016
08:25:30

Fike
24.11.2016
08:25:55
я там спрашивал выше, если что

Admin
ERROR: S client not available

KOT
24.11.2016
08:27:08

Джон
24.11.2016
08:46:21
Кто говорил что про поиск в миллиарде записей можно забыть ))
не могу найти это сообщение
Это вроде смешно, нет?
Я конечно нуб, но в сикстилионе записей, упорядоченных по алфавиту, поиск займет.. ну от силы 100-120 итераций

Vladislav
24.11.2016
08:49:43

Джон
24.11.2016
08:50:32
или не сикстилион, ну короче 1 * 10^21
это к примеру прост
Может я не прав, поправьте тогда меня

Google

Джон
24.11.2016
08:52:25
Под итерациями я подразумеваю деление на 2

KOT
24.11.2016
08:57:13

Джон
24.11.2016
08:57:46
Ну а сколько времени надо, чтобы 120 раз разделить на 2
только вот столько данных не бывает )
наверное
1 000 000 000 000 000 000 000
ну во всяком случае это число делится на 2 всего 70 раз до получения единицы

Alex
24.11.2016
09:03:22
Теоретики такие теоретики..

Джон
24.11.2016
09:05:57
Да я не теоретик, честно говоря я вообще никто ) Просто пытаюсь думать логически. Если база проиндексирована, то в чем может быть проблема с поиском
гугл же ищет как-то

Dmitry
24.11.2016
09:06:24

KOT
24.11.2016
09:06:44

Dmitry
24.11.2016
09:06:46
Поиск поиску рознь

KOT
24.11.2016
09:06:55
Даже индексам надо где-то хранится

Джон
24.11.2016
09:08:02
Поиск поиску рознь
Так понятно, что перебирать все записи накладно. Не думаю, что так кто-то делает )

KOT
24.11.2016
09:10:27
Да, но ведь искать надо где-то?
То есть искать надо в структуре индекса
её надо где-то держать, в идеале в памяти.... НО

Fike
24.11.2016
09:11:56

KOT
24.11.2016
09:12:07
У меня сейчас база, 80М записей, данных 22ГБ, а индекса на 7,5ГБ