Если операция разовая и под боком есть хадуп, то как вариант выгрузить ключи sqoop-ом в hive и там прогнать кверю.
Sent from my iPhone using Tapatalk
Как найти золотник в куче Г...
-
- Уже с Приветом
- Posts: 1961
- Joined: 24 Feb 2001 10:01
- Location: Челябинск -> Everett, WA
-
- Уже с Приветом
- Posts: 1319
- Joined: 10 Jan 2000 10:01
- Location: Хьюстон
Re: Как найти золотник в куче Г...
Сводных таблиц делается не одна а много - грубо говоря пространство ключей бьется на примерно равные части. Туда пишутся уникальные ключи, вроде select key from source-table where key >= 0 and key < 1m and not exists (select uniqukey from key-range-table-0-1m where uniqukey = key)ALV00 wrote:Запустить шесть процессов на шести серверах. Каждый будет обрабатывать только локальные данные. Одна сводная таблица на одном из серверов будет содержать уникальные ключи. Каждый процесс проверяет уникальность ключа, делая селект на других серверах. Если ключ уникален, добавлять его в сводную таблицу. Конечно, нужны будут линки между серверами, как индусы предлагают.Easbayguy wrote:Народ, я неточно выразился, не уникальных записей, а ключей. Каждый ключ это ссылка на крупный обьект, который можно вытащить из хранилища. Интересно, как такие задачи решают сторонники Big Data.
PS: да, еще при старте каждого процесса доставать из сводной таблице последний ключ, записанный для данного сервера. На тот случай если процесс прервался, чтобы не начинать сначала
Такие запросы по индексам работают быстро. Потом слить таблицы в одну.
-
- Уже с Приветом
- Posts: 4205
- Joined: 10 Jan 2004 01:22
- Location: n-sk -> MD -> VA
Re: Как найти золотник в куче Г...
апп был типичный OLTP.NYgal wrote:Надеюсь, что materialized , чтобы хотя бы проиндексить, на составные сервера надежды мало, и дурликацию все равно фильтровать надоfruit6 wrote:а индусы бы сделали dblinks & views!
без шуток
я думаю там индусами руководили либо китайские дба либо wasp из серии самоучек с опытом на php, эдакий коллективный монстр.
сделали значит они дб линки без mviews, апп работал очень медленно, часто вылетал по таймауту, UI глючил, пользователи звонили c "WTF??"
апп приносит бабла неимоверно, сделан в стиле микросервисов (они в интернете прочитали что модно), для решения проблемы они добавили, как вы предположили, materialized view. я надеялся что они запустят новую версию в продакшен и контора закроется (я всегда за победу здравого смысла над болванами), но, к сожалению все тесты показали что бизнес логика таких шуток не поддерживает.
-
- Ник закрыт за хамство.
- Posts: 357
- Joined: 16 Feb 2014 18:34
Re: Как найти золотник в куче Г...
Если выгружать можно, то вот:Easbayguy wrote:У меня сейчас более веселая задачка на следующую неделю. Есть примерно 90 миллиардов записей со 100 байтным ключем, где то 10% дупликатов в 6 базах. И надо сгенерить спискок уникальных записей.
http://www.gnu.org/software/parallel/ma ... more-cores" onclick="window.open(this.href);return false;
-
- Уже с Приветом
- Posts: 7909
- Joined: 19 May 2008 22:10
- Location: BY->DEU->SFBA
Re: Как найти золотник в куче Г...
Мое впечатление, что если есть хорошие "комюникейшен скилз и умения играть в политику", то и избавляться ни от кого не нужно, а нужно эксплуатировать таланты. Я бы увольнял тех, у кого помимо таланта есть еще любовь к политике, ну и комюникейшен скилз_Lenchik wrote:Может прийти новый тим лид, который выдавит всех, кто профессионально лучше его в какой то области. Зачем ему сотрудники, которые его могут подсидеть? Если у него достаточно комюникейшен скилз и умения играть в политику, то довольно легко от них избавится.
-
- Уже с Приветом
- Posts: 189
- Joined: 13 Mar 2006 19:01
- Location: Earth -> Moon -> Mars
Re: Как найти золотник в куче Г...
Потому что интервьювер хочет проверить знает ли кандидат 400 сравнительно честных способов поменять заначения двух переменных без использования третьей, которые сделают ваш код еще более не поддерживаемымAlexander Troyansky wrote:Да, особенно хорош результат при a == b. Казалось бы... почему нельзя использовать промежуточную переменную?
Bugfixing по фотографии. Дорого.