Ну так и пользователей у тех же постгрессов и майсиквелов ещё выше крыши, не мне хадупы везде мерещатсяgeek7 wrote:RDBMS не синоним небыстрое и не масштабируемое, вр многих случаях есть достаточный запас масштабируемости или вынести нужно очень небольшой кусок схемы.Сабина wrote:Во многих конторах где я работала была другая pain - они пытались гнаться за конкурентами и продакт приходит в один день и говорит а сейчас мне надо чтобы у меня ... ( дальше идёт какой нибудь requirement из серии almost real time event processing). После чего получается что данные надо собирать и анализировать не раз в день, а раз в пять минут. А у них все небыстрое и немасштабируемое.geek7 wrote:а почему нет? другое дело что в большинстве случаев возится с это 32, это 64 менее выгодно чем делать все на 64Сабина wrote:Предсьавьте к вам бы кто нибудь подошёл и сказал "а наука иди обратно на 32 бита, тебе 64 для твоих задач совершенно не нужно ?
Поэтому новые компании, особенно стартапы, сразу строят с расчетом на это. Да, может прямо сейчас вам хватает того что есть, а может завтра уже нет. Я этот стартап джойнила, думала да у них вон и Kafka и EMR cluster и Spark. И тут же под мой первый проект оказалось что существующая архитектура "не тянет". От этого и желание запрыгнут на вагон latest and greatest поскорее. А EMR cluster( аналогия про "64 бита" этот вон пожалуйста сидит ждёт в облаке. Чего бы сразу туда не поставить все чем мордоваться и лепить какой нибудь процессинг на Postgres чтобы завтра все переделывать?
а то для чего изначально выбрали Postgres действительно оптимально решать EMR или таки это и есть то для чего редшифт понадобился?
Redshift ? Anybody?
-
- Уже с Приветом
- Posts: 19041
- Joined: 11 Jan 2012 09:25
- Location: CA
Re: Redshift ? Anybody?
https://www.youtube.com/watch?v=wOwblaKmyVw
-
- Уже с Приветом
- Posts: 19041
- Joined: 11 Jan 2012 09:25
- Location: CA
Re: Redshift ? Anybody?
Попался хороший коммент про pros and cons Редшифт, староват, но уж очень в точку мущщина написал - не прибавить, не убавить.
Комент к статье
https://www.quora.com/What-are-the-pros ... n-Redshift" onclick="window.open(this.href);return false;
Вот этот
PSS. Интересная задача - джойнить timeseries like data in warehouse (Redshift) with stream data для принятия real time decisions. Примеров где что-то вычисляют чисто из данных стрима и шлют alert - полно, но чтобы alert посылался в результате такого комбинированного анализа - нету. Конечно имеется в виду almost real time solution=alerts. Основная мысль - warehouse data, нужные для принятия решения кешировать в память ( Redis) , делать из этого дела dataframe какой нибудь и джойнить его с данными в стриме. AWS KInesis предлагает нечто подобное в Kinesis Analytics. Называется конечно по другому, но думаю делает примерно то же самое с dataframes
Комент к статье
https://www.quora.com/What-are-the-pros ... n-Redshift" onclick="window.open(this.href);return false;
Вот этот
PS. Выделенное жирным было для меня полным шоком. Нашли недавно немало неожиданных дупов, при том что в нашем ETL процессе присуствует dedup логика по unique key с md5 cachePros:
Scarily fast. We run a 6 node SSD cluster (6 of the small nodes), and we can run aggregations on hundreds of millions of rows in a few seconds. The most crazily complex queries we've written return in less than a minute usually. Our median response time is 2 secs. Tip: run SSD clusters if you need the disk IO but don't need the storage space. It's worth it.
Cheap - it's around a 10th of the cost of competitors.
It's AWS - which works great if you're already on it, like we are at Hailo.
It's SQL - so you can pretty much cut and carve your data as you like. The fork of postgres only takes a few commands out. We've always been able to do what we want. We can go from thinking of an idea, to writing a query, to answering questions in a couple of minutes. I doubt we'd be able to do this with Hadoop/Hive.
Scalability - it's horizontally scalable. Need it to go faster? Just add more nodes.
Cons:
Doesn't enforce uniqueness. This means you'll have to be very diligent about data hygiene. If you're running distributed systems that write to Redshift, you'll probably have to use some caching system like Redis to check if you've written the data to the database already.
Very fast, but not fast enough for most web apps. This means you'll have to pull data into a caching layer, or a vanilla postgres instance if you want to serve web apps with data from Redshift.
Loading data - the fastest way to do this to take advantage of Massively Parallel Processing (what a great buzzword) is to load in from S3. Alternatively, you can do JDBC inserts, but these can't be parallelised. Ties you into the AWS stack more.
Difference from vanilla SQL - I don't necessarily view this as a bad thing, but you'll have to get your head around how to optimise the distribution of your data around the nodes using DISTKEYS, and check that you have appropriate compression on your columns. You also can't alter the datatypes of a column in a table after they've been set, which can be annoying.
Summary:
It's awesome. We've been nothing short of ecstatic. Ping me if you need any pointers.
PSS. Интересная задача - джойнить timeseries like data in warehouse (Redshift) with stream data для принятия real time decisions. Примеров где что-то вычисляют чисто из данных стрима и шлют alert - полно, но чтобы alert посылался в результате такого комбинированного анализа - нету. Конечно имеется в виду almost real time solution=alerts. Основная мысль - warehouse data, нужные для принятия решения кешировать в память ( Redis) , делать из этого дела dataframe какой нибудь и джойнить его с данными в стриме. AWS KInesis предлагает нечто подобное в Kinesis Analytics. Называется конечно по другому, но думаю делает примерно то же самое с dataframes
https://www.youtube.com/watch?v=wOwblaKmyVw
-
- Уже с Приветом
- Posts: 19041
- Joined: 11 Jan 2012 09:25
- Location: CA
Re: Redshift ? Anybody?
Впечатлил Редшифт в очередной раз, правда не без приключений. В эти выходные в процессе большого релиза пришлось до перфекции настроить sort и distribution keys таблиц по 500 миллионов -1.5 миллиарда записей. В результате чего join между оными выполняется аж за 30 секунд. Что терпимо для онлайн reports
https://www.youtube.com/watch?v=wOwblaKmyVw
-
- Уже с Приветом
- Posts: 34164
- Joined: 03 Dec 2000 10:01
- Location: Vladivostok->San Francisco->Los Angeles->San Francisco
Re: Redshift ? Anybody?
А как долго добавить одну запись так, чтоб потом она попала в отчет?Сабина wrote:Впечатлил Редшифт в очередной раз, правда не без приключений. В эти выходные в процессе большого релиза пришлось до перфекции настроить sort и distribution keys таблиц по 500 миллионов -1.5 миллиарда записей. В результате чего join между оными выполняется аж за 30 секунд. Что терпимо для онлайн reports
"A patriot must always be ready to defend his country against his government." Edward Abbey
-
- Уже с Приветом
- Posts: 19041
- Joined: 11 Jan 2012 09:25
- Location: CA
Re: Redshift ? Anybody?
не поняла вопросSergunka wrote:А как долго добавить одну запись так, чтоб потом она попала в отчет?Сабина wrote:Впечатлил Редшифт в очередной раз, правда не без приключений. В эти выходные в процессе большого релиза пришлось до перфекции настроить sort и distribution keys таблиц по 500 миллионов -1.5 миллиарда записей. В результате чего join между оными выполняется аж за 30 секунд. Что терпимо для онлайн reports
https://www.youtube.com/watch?v=wOwblaKmyVw
-
- Уже с Приветом
- Posts: 64875
- Joined: 12 Jul 2002 16:38
- Location: г.Москва, ул. Б. Лубянка, д.2
Re: Redshift ? Anybody?
Брателло, объясни, что хотел, нам всем интересно.Сабина wrote:не поняла вопросSergunka wrote:А как долго добавить одну запись так, чтоб потом она попала в отчет?Сабина wrote:Впечатлил Редшифт в очередной раз, правда не без приключений. В эти выходные в процессе большого релиза пришлось до перфекции настроить sort и distribution keys таблиц по 500 миллионов -1.5 миллиарда записей. В результате чего join между оными выполняется аж за 30 секунд. Что терпимо для онлайн reports
-
- Уже с Приветом
- Posts: 34164
- Joined: 03 Dec 2000 10:01
- Location: Vladivostok->San Francisco->Los Angeles->San Francisco
Re: Redshift ? Anybody?
Вот к примеру план выполнения запроса дан в документацииСабина wrote:не поняла вопросSergunka wrote:А как долго добавить одну запись так, чтоб потом она попала в отчет?Сабина wrote:Впечатлил Редшифт в очередной раз, правда не без приключений. В эти выходные в процессе большого релиза пришлось до перфекции настроить sort и distribution keys таблиц по 500 миллионов -1.5 миллиарда записей. В результате чего join между оными выполняется аж за 30 секунд. Что терпимо для онлайн reports
http://docs.aws.amazon.com/redshift/lat ... ution.html" onclick="window.open(this.href);return false;
Интересно было бы глянуть как выглядит план на запись? Показывает ли план все индексы построенные для этой записи.QUERY PLAN
XN Merge (cost=1038007224737.84..1038007224738.54 rows=280 width=20)
Merge Key: dwdate.d_year, part.p_brand1
-> XN Network (cost=1038007224737.84..1038007224738.54 rows=280 width=20)
Send to leader
-> XN Sort (cost=1038007224737.84..1038007224738.54 rows=280 width=20)
Sort Key: dwdate.d_year, part.p_brand1
-> XN HashAggregate (cost=38007224725.76..38007224726.46 rows=280
-> XN Hash Join DS_BCAST_INNER (cost=30674.95..38007188507.46
Hash Cond: ("outer".lo_orderdate = "inner".d_datekey)
-> XN Hash Join DS_BCAST_INNER (cost=30643.00..37598119820.65
Hash Cond: ("outer".lo_suppkey = "inner".s_suppkey)
-> XN Hash Join DS_BCAST_INNER
Hash Cond: ("outer".lo_partkey = "inner".p_partkey)
-> XN Seq Scan on lineorder
-> XN Hash (cost=17500.00..17500.00 rows=56000
-> XN Seq Scan on part (cost=0.00..17500.00
Filter: ((p_category)::text =
-> XN Hash (cost=12500.00..12500.00 rows=201200
-> XN Seq Scan on supplier (cost=0.00..12500.00
Filter: ((s_region)::text = 'AMERICA'::text)
-> XN Hash (cost=25.56..25.56 rows=2556 width=8)
-> XN Seq Scan on dwdate (cost=0.00..25.56 rows=2556
"A patriot must always be ready to defend his country against his government." Edward Abbey
-
- Уже с Приветом
- Posts: 19041
- Joined: 11 Jan 2012 09:25
- Location: CA
Re: Redshift ? Anybody?
Кост у этой квери нехилый. Я б глянула вот в эту табличку, явно что там напортачили с sort key, distribution или еще чегоSergunka wrote:Интересно было бы глянуть как выглядит план на запись? Показывает ли план все индексы построенные для этой записи.QUERY PLAN
XN Merge (cost=1038007224737.84..1038007224738.54 rows=280 width=20)
Merge Key: dwdate.d_year, part.p_brand1
-> XN Network (cost=1038007224737.84..1038007224738.54 rows=280 width=20)
Send to leader
-> XN Sort (cost=1038007224737.84..1038007224738.54 rows=280 width=20)
Sort Key: dwdate.d_year, part.p_brand1
-> XN HashAggregate (cost=38007224725.76..38007224726.46 rows=280
-> XN Hash Join DS_BCAST_INNER (cost=30674.95..38007188507.46
Hash Cond: ("outer".lo_orderdate = "inner".d_datekey)
-> XN Hash Join DS_BCAST_INNER (cost=30643.00..37598119820.65
Hash Cond: ("outer".lo_suppkey = "inner".s_suppkey)
-> XN Hash Join DS_BCAST_INNER
Hash Cond: ("outer".lo_partkey = "inner".p_partkey)
-> XN Seq Scan on lineorder
-> XN Hash (cost=17500.00..17500.00 rows=56000
-> XN Seq Scan on part (cost=0.00..17500.00
Filter: ((p_category)::text =
-> XN Hash (cost=12500.00..12500.00 rows=201200
-> XN Seq Scan on supplier (cost=0.00..12500.00
Filter: ((s_region)::text = 'AMERICA'::text)
-> XN Hash (cost=25.56..25.56 rows=2556 width=8)
-> XN Seq Scan on dwdate (cost=0.00..25.56 rows=2556
http://docs.aws.amazon.com/redshift/lat ... lerts.html" onclick="window.open(this.href);return false;
Copy делается обычной bulk командой какие там квери ? Плюс все масштабируется как резина при желании
https://www.youtube.com/watch?v=wOwblaKmyVw
-
- Уже с Приветом
- Posts: 34164
- Joined: 03 Dec 2000 10:01
- Location: Vladivostok->San Francisco->Los Angeles->San Francisco
Re: Redshift ? Anybody?
Вот боле менее внятное объяснениеThe results can vary when additional features like distribution key, sort key or column compression are set. Most of the time these additional features are a must have to make the queries perform well. For example loading 150M records (150Gb) on the same table with a distkey and sortkey set took 1 hour, 10 minutes and 33 seconds, which means 35435 insertions / second.
http://www.robertomarchetto.com/amazon_ ... ent_review" onclick="window.open(this.href);return false;
"A patriot must always be ready to defend his country against his government." Edward Abbey
-
- Уже с Приветом
- Posts: 64875
- Joined: 12 Jul 2002 16:38
- Location: г.Москва, ул. Б. Лубянка, д.2
Re: Redshift ? Anybody?
брателло на лопатках.
-
- Уже с Приветом
- Posts: 19041
- Joined: 11 Jan 2012 09:25
- Location: CA
Re: Redshift ? Anybody?
Sergunka wrote:Вот боле менее внятное объяснениеThe results can vary when additional features like distribution key, sort key or column compression are set. Most of the time these additional features are a must have to make the queries perform well. For example loading 150M records (150Gb) on the same table with a distkey and sortkey set took 1 hour, 10 minutes and 33 seconds, which means 35435 insertions / second.
http://www.robertomarchetto.com/amazon_ ... ent_review" onclick="window.open(this.href);return false;
Это же все очень относительно. кто его знает как он выбрал keys, чем именно грузил, а самое главное что за у него instance redshift-а, каким юзером грузил. Там же даже ресурсы, такие как память например конфигурируются per user group.
У нас данные во все таблицы грузяться каждый час с паузами "между".
https://www.youtube.com/watch?v=wOwblaKmyVw
-
- Уже с Приветом
- Posts: 7442
- Joined: 01 Aug 2003 05:37
Re: Redshift ? Anybody?
интересно что бы выбрала Сабина между умной и красивой?