Случайны выбор дневника Раскрыть/свернуть полный список возможностей


Найдено 8074 сообщений
Cообщения с меткой

yandex - Самое интересное в блогах

Следующие 30  »
Rost

Используем Gmail для других почтовых адресов

Вторник, 23 Мая 2017 г. 10:10 (ссылка)

Специальное сообщение для всех жителей Украины, у которых почта на mail.ru или на Yandex. Но может быть пригодиться и другим. И, пожалуйста, не надо писать "Спасибо, попробую!". Если вы живёте на Украине, то надо это сделать как можно быстрее! Иначе можно будет, конечно, со временем попробовать. Но сделать это будет возможно или через 3 года, или через одно место из 3 букв (TOR или VPN).

Почтовый сервис Gmail от Гугл позволяет абсолютно уникальную возможность: использовать свой интерфейс как почтовый клиент для других почтовых служб. Таким образом вы можете работать с подавляющим числом почтовых ящиков в привычном интерфейсе Gmail. Что вам это даст? А вот представим, что вы живёте на Украине, а почтовый ящик у вас на mail.ru или Yandex. Добавив этот ящик в Gmail вы можете продолжать пользоваться им без всяких проблем. Гугл будем сам собирать и отправлять вашу почту через свои сервера. Повторяю ещё раз: если вы добавите свой почтовый ящик на mail.ru или Yandex в Gmail (как описано ниже), то сможете легко и просто пользоваться этим почтовым ящиков, но только через интерфейс почты на Гугле, получая и отправляя письма несмотря на блокировку этих сервисов на территории Украины.

Кому интересно
Сохранить к себе в дневник
Метки:   Комментарии (7)КомментироватьВ цитатник или сообщество
MATANGAdrugs

АМФЕТАМИН - ГАШИШ - ГИДРАПОНИКА - МЕТАДОН - КОКАИН - MATANGA@TUT.BY - КУПИТЬ В МОСКВЕ И МОСКОВСКОЙ ОБЛАСТИ

Четверг, 20 Апреля 2017 г. 14:00 (ссылка)


MATANGA@TUT.BY КУПИТЬ АМФЕТАМИН - ГАШИШ - МЕТАДОН - ГИДРАПОНИКУ - КОКАИН







КУПИТЬ В МОСКВЕ И МОСКОВСКОЙ ОБЛАСТИ matanga@tut.by

АМФЕТАМИН, КОКАИН, МЕТАДОН, ГЕРОИН, ГАШИШ, ШИШКИ(БОШКИ), ГИДРАПОНИКУ, ЭКСТАЗИ, ЛСД, РЕАГЕНТЫ

ВЫ МОЖЕТЕ У НАС: matanga@tut.by

СОТРУДНИЧАЕМ С БОЛЬШИМ КОЛЛИЧЕСТВОМ МАГАЗИНОВ

ЗАКЛАДКИ, ПРОБЫ, БОНУСЫ ЗА ПРИВЛЕЧЕННЫХ КЛИЕНТОВ

matanga@tut.by



Основной спектр наших услуг- это мелкая фасовка, расклад и раздача адресов. Мы ориентированы в оснавном на ваши предпочтения.



Для постоянных покупателей возможны условия отсрочки платежа по договорам поставки нашей продукции



Компания "MATANGA" - это отличное качество и огромный ассортимент фасованного ДОБРА.

Мы поддерживаем постоянное наличие на складе необходимого запаса продукции. Отлаженная работа системы фасовки, доставки, укладки кладов,позволяет ускорить процесс обслуживания наших клиентов. Продажа и поставка производится во все регионы Москвы и Московской области.



Минимальная стоимость заказа на доставку  составляет 1500 рублей для Москвы и ближайшего подмосковься



Доставка до места указанного вами 500 -2500 рублей, в зависимости от удаленности города от Москвы



Гибкая система скидок. Индивидуальный подход к каждому клиенту. денежные откаты и товарные бонусы за привлеченных клиентов



ПРОБЫ



ГАШИШ

1ГР. - 600РУБ.



LSD

1МРК.-600РУБ.



ЭКСТАЗИ

1ТБЛ.-600РУБ.



ШИШКИ(БОШКИ)

1ГР.-1000РУБ.



ГИДРАПОНИКА

1ГР.-1200РУБ.



АМФЕТАМИН

1ГР.-1200РУБ.



ГЕРОИН

1ГР.-1500РУБ.



МЕТАДОН

0.5ГР.-2000РУБ.



КОКАИН

0.25ГР.-2500РУБ.





Прайс на экспресс*-закладки



*Экспресс-закладка...это заранее приготовленный и герметично упакованный материал (погодные условия не влияют на качество и вес продукта)



Гашиш

1ГР. - 600РУБ.

3ГР. - 1800РУБ.

5ГР. - 2500РУБ.



LSD

1МРК.- 600РУБ.

3МРК. - 1800РУБ.

5МРК. - 2500РУБ.



ЭКСТАЗИ

1ТБЛ. - 600РУБ.

3ТБЛ. - 1800РУБ.

5ТБЛ. - 2500РУБ.



ШИШКИ(БОШКИ)

1ГР. - 1000РУБ.

3ГР. - 3000РУБ.

5ГР. - 4000РУБ.



ГИДРАПОНИКА

1ГР. - 1200РУБ.

3ГР. - 3000РУБ.

5ГР. - 4500РУБ.



АМФЕТАМИН

1ГР. - 1200РУБ.

3ГР. - 3000РУБ.

5ГР. - 4500РУБ.



ГЕРОИН

1ГР. - 1500РУБ.

3ГР. - 4000РУБ.

5ГР. - 5000РУБ.



МЕТАДОН

0.5ГР. - 2000РУБ.

1ГР.   - 4000РУБ.

2ГР.   - 7000РУБ.

3ГР.   - 10000РУБ.



КОКАИН

0.25ГР. - 2500РУБ.

0.5ГР.  - 5000РУБ.

1ГР.    - 10000РУБ.



НАЛИЧИЕ ЗАКЛАДОК УТОЧНЯЙТЕ У ОПЕРАТОРА!



ГАРАНТИИ:



Для первого заказа предоставляю пробный материал.

Для проверки сервиса ты можешь приобрести пробник ШИШКИ(БОШКИ) .



White Widow :



1 гр = 1000 руб .



*Доставка пробников Москва экспресс закладкой .

После оплаты присылаю координаты доставки

(адрес, фото, координаты GPS)*



ВОПРОСЫ СОТРУДНИЧЕСТВА, ДЕНЕЖНЫЕ ОТКАТЫ И ТОВАРНЫЕ БОНУСЫ

ЗА ПРИВЛЕЧЕННЫХ КЛИЕНТОВ, ОБСУЖДАЮТСЯ ИНДИВИДУАЛЬНО!!!



Показаны товары в городах:



Москва



Арбатско-Покровская

ст. Кунцевская, Молодежная, Киевская



Замоскворецкая

ст. Войковская, Речной вокзал, Белорусская



Калужско-Рижская

ст. Бабушкинская, Беляево, Теплый Стан, Медведково, Новоясеневская, Профсоюзная



Серпуховско-Тимирязевская

ст.Нахимовский п-т, Нагорная, Петровско-Разумовская, Пражская, Чертановская, Тимирязевскя, Бульвар Дмитрия Донского



Сокольническая

ст. Тропарёво, Юго-Западная, Сокольники



Таганско-Краснопресненская

ст. Октябрьское поле, Полежаевская, Беговая, Рязанский пр-т, Сходненская, Тушинская, Щукинская



Филёвская

ст. Филёвский парк



Мытищи



Химки



Домодедово



С уВ! MATANGA





cd (598x338, 51Kb)



ab (568x430, 81Kb)
Комментарии (3)КомментироватьВ цитатник или сообщество
olgal6840

Обои на рабочий стол...

Четверг, 23 Марта 2017 г. 20:22 (ссылка)


Куст роз в рамочке.jpg



Дальше
Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
lj_matveychev_oleg

Рыба, смерть и стихийные бедствия

Воскресенье, 20 Марта 2017 г. 02:02 (ссылка)

Люди часто ищут толкования снов. В Яндекс, по данным поиска, проанализировали запросы и составили собственную карту сновидений.

1

Какие сны ищут в поиске Яндекса.

Каждую неделю пользователи Яндекса из России задают более полумиллиона запросов, связанных с толкованием снов. Больше всего таких запросов, конечно, утром, между 9 и 10 часами — люди спрашивают про свой сон, пока не забыли. Эти запросы представляют собой описания снов. По ним можно понять, какие сны люди видят чаще всего, что с чем снится и как отличаются сны в разных регионах России..

Карта сновидений

Сны очень разнообразны — в запросах описываются сотни различных сюжетов, предметов и событий. Даже повторяющиеся сюжеты содержат разные детали и подробности. Скажем, один из распространённых мотивов — рыбы. С ними связано около 2% всех запросов про толкование сновидений. Обычно снится живая рыба, реже большая, жареная, солёная, мёртвая, красная, свежая, замороженная, копчёная, дохлая, сушёная (в порядке убывания популярности). Чаще всего её ловят — руками и на удочку, иногда — чистят и покупают. Среди конкретных рыб лидируют щуки, сомы и селёдки, но люди редко знают, какая именно рыба им снилась.

Чтобы показать основные темы снов, мы взяли двести самых популярных слов из запросов о снах и для каждого определили десять "соседей" — слов, которые часто присутствуют в запросах вместе с ними. Например, для слова "дом", которое встречается почти в 1,5% запросов о снах, ближайшими соседями оказались чужой, пожар, новый, старый, большой, пол, мыть, жить, деревянный, гореть.

У разных слов могут быть одни и те же соседи, так что всего получилось 540 слов. Мы расположили их таким образом, чтобы ближе друг к другу оказались понятия, которые часто снятся вместе — по крайней мере, присутствуют в одних и тех же запросах. Так получилась статистическая карта сновидений.

Что с чем снится
На карте показаны 200 самых популярных слов из запросов о снах и их ближайшие соседи — слова, которые чаще всего встречаются в тех же запросах. Нажмите на слово, чтобы увидеть, с чем обычно снится тот или иной объект. Чем толще связь между объектами, тем чаще они снятся вместе.

0
По данным поиска Яндекса, сентябрь 2016 — февраль 2017

Топ-20 слов из запросов о снах


  1. человек

  2. рыба

  3. ребёнок

  4. змея

  5. умирать

  6. живой

  7. парень

  8. беременность

  9. вода

  10. зуб

  11. собака

  12. дом

  13. белый

  14. кровь

  15. бывший

  16. большой

  17. кошка

  18. маленький

  19. волос

  20. рука

Чаще всего в описаниях снов встречаются люди: взрослые и дети, мужчины и женщины, близкие и незнакомые, в некоторых случаях — мёртвые. Примерно по 2% запросов о снах посвящено рыбам и змеям. Среди остальных животных чаще всего снятся собаки, кошки и крысы. Наиболее популярный цвет в сновидениях — белый, действие — умирать, а часть тела — рука.

Женщинам и мужчинам снятся разные сны. В женских снах чаще всего встречаются человек, ребёнок, беременность, рыба и парень, а в мужских — змея, рыба, человек, девушка, зуб. Кстати, женщины ищут толкования снов в десять раз чаще, чем мужчины [к чему снится жареная рыба женщине есть ее] [к чему снятся разноцветные змеи] [к чему снится что девушка курит хотя она знает что я ей запретил] [к чему снится дом бабушки покойной] [к чему снится раздавать конфеты детям] [к чему снится женщина в черном одеянии колдунья] [к чему снятся золотые рыбки в чистой воде] [к чему снится смс от бывшего парня]

Самые распространённые сновидения не зависят от места жительства. Люди, рыбы и змеи часто встречаются в запросах о снах и из Красноярского края, и из Смоленской области. Исключений мало — в Магаданской и Сахалинской областях и на Камчатке люди чаще всего видят во сне медведей, а в Ингушетии самое популярное слово "белый", там снятся разные белые вещи: дома, розы, кони, простыни.

Тем не менее, в каждом регионе есть свои характерные сны — те, толкования которых здесь ищут больше, чем в среднем. Скажем, в Челябинской области людям снятся метеориты. В Курской, Липецкой, Орловской и Рязанской областях популярны религиозные сны — со святыми, священниками и иконами. В Крыму снятся море, дельфины и волны, в Ставропольском крае — грецкие орехи и абрикосы, в Москве — метро, электричка и святая Матрона, а в Санкт-Петербурге — метро, черника и клюква.

Влияние места
Некоторые свойства окружающей реальности проникают и в сны. Запоминаются очень значимые события — вроде падения метеорита. Кроме того, от региона к региону меняются транспорт, погода, природа и фауна сновидений. Люди обычно видят во сне тех животных, которые встречаются поблизости и в реальной жизни, и ту природу, которая их окружает.

Жителей центра России практически не беспокоят стихийные бедствия и природные аномалии, а вот на Чукотке и в Сахалинской области ищут толкование снов с цунами, в Республике Алтай и Ненецком АО — с наводнениями, на юге и на Дальнем Востоке — с землетрясениями. Море чаще снится в Крыму и на Кавказе, а горы — на Алтае и в Тыве. Арбузы и орехи во сне и наяву растут на юге, а клюква — на севере.

Тигры снятся на Дальнем Востоке — там, где они водятся в реальности. Медведи чаще снятся на Чукотке, в Магаданской области и в Якутии, лоси — в Карелии, Вологодской, Ярославской и Костромской областях, олени — в Якутии и Ненецком АО, раки — рядом с Волгой и Доном. А вот собак и кошек везде примерно поровну.

Единственный конкретный человек, которого часто видят во сне, — Путин. Чаще всего он снится в Чечне.

Читать исследование Яндекса полностью



http://matveychev-oleg.livejournal.com/5055868.html

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
olgal6840

Рисунки для вышивок...

Понедельник, 06 Марта 2017 г. 14:45 (ссылка)


Фотографии в альбоме «чьЁ-тО...», автор LiS--a на Яндекс.Фотках





























Остальные рисунки ДАЛЬШЕ


Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
mag13mag13

ЛУЧШИЕ ПРИКОЛЫ 2017 ПОД МУЗЫКУ #111 | Приколы музыкальные 2017 | #Приколы The MAG channel

Воскресенье, 05 Марта 2017 г. 19:10 (ссылка)
https://www.youtube.com/wat...6MfXAVk_oo


Лучшие приколы с девушками и другие смешные приколы в coub за март и февраль 2017 года. Подборка новых coub приколов под музыку и со смешной 😀 озвучкой 🎧. 


Подписаться на канал ●► https://www.youtube.com/user/mag13mag13 


Приколы The MAG channel - это развлекательный канал на котором регулярно выходят подборки лучших приколов под музыку и музыкальных приколов co списком музыки в описании. 


 


ПОДПИСЫВАЙТЕСЬ❗️ СМОТРИТЕ первыми новые выпуски каждый ВТОРНИК, ПЯТНИЦА и ВОСКРЕСЕНЬЕ в 18:00 по МСК! ⏰


 


Лучшая благодарность для меня - Ваш лайк 👍, репост и комментарий под видео. Огромное спасибо за просмотр‼️


 


============================


Плейлисты ⏯:


https://goo.gl/KzuVvr- Лучшие приколы под музыку |  Приколы музыкальные 


https://goo.gl/7Ws0sb - Сумасшедшие приколы 


https://goo.gl/bhgkIV - Тематические подборки приколов 


https://goo.gl/uFAYh6 - BEST Videos of the Week | Лучшие видео недели


https://goo.gl/7KzUm9 - 10 BEST VIDEOS | Топ-10 лучших видео


 


============================


Ссылки в соцсетях:


ВКонтакте  ► https://vk.com/themagchannel





============================


 


ЛУЧШИЕ ПРИКОЛЫ 2017 ПОД МУЗЫКУ | Приколы  музыкальные 2017 | #Приколы #TheMAGchannel 


#Подборка №111


 


ТРЕК ЛИСТ:


 


0:00 Duck Sauce - Barbra Streisand


0:10 DUBSTEP GRANDMASTER - COME ON


0:21 Bomfunk MC's - Freestyler


0:31 Dubstep Play - Your! Jamm Rights (live dubstep jam)


0:38 Noisia & The Upbeats - Dustup



0:59 EmergeNCY - Do you?


1:16 Duck Sauce - Barbra Streisand


1:23 http://coub.com/view/scqf2 - (Black Mirror) e01 teaser



1:54 Mission Impossible - Adam Clayton & Larry Mullen


2:04 http://coub.com/view/sbwmt - Все без ума от Мэри


2:15 Алексей Воробьёв - Сумасшедшая


2:36 Simon Harris - Black Beat (91 BPM)


2:56 MC Hammer - U Can't Touch This


3:11 Pulp Fiction - Misirlou


3:32 Lost Horizon - Highlander (The One)


3:41 ??? - | http://coub.com/view/sdd9p - ქართული ვიაგრა


4:01 Mr Big - Wild World


4:23 Тимати (Timati) – Тантум Верде Форте (Tantum Verde Forte)


4:33 Rammstein - Mein Herz Brennt 


4:56 Pendulum - Tarantula


5:11 Apashe - No Twerk (feat. Panther & Odalisk)


5:31 Чи-Ли - Лето


5:50 The Archies - Sugar, Sugar


6:11 Melba Moore - Love's Comin' At Ya


6:33 МакSим - Научусь летать


6:48 ???


7:07 Donovan - Barabajagal (Love is Hot) 


7:27 Keith Ape – It G Ma (IN ENGLISH)


7:38 ???


7:48 Kostrok- Right Now (Yuksek Remix)


7:59 Каламбур — Деревня дураков 


8:25 ???


8:42 Daft Punk - Get Lucky 


8:55 Simon & Garfunkel - The Sound Of Silence


9:36 Black Strobe - I'm a Man


9:44 Ленинград - А мне всё по##й


10:13 Anacondaz — Круглый год


10:26 Cyndi Lauper - Girls Just Want To Have Fun 


10:32 ??? - | http://coub.com/view/sc8b4 - Жил в деревне старый дед


10:42 Taylor Swift - I Knew You Were Trouble


11:00 Ада Якушева - Ты - мое дыхание...


11:10 JPB - High


 


============================


 


● В связи с изменениями на платформе #YouTube прошу в настройках подписок, установить галочку на получение оповещений ●


 


Все авторские права принадлежат 


Их законным владельцам.


Если вы являетесь автором


Фрагмента из выпуска и его


Распространение ущемляет Ваши


авторские права прошу связаться со мной.


 


All Copyrights belongs


To their rightful owners.


If you are the author


Of the fragment video and distribute it


Infringes your copyright


please contact me.


 


#coub #jokes #musicaljokes #funnyvideos #mag13mag13


приколы,лучшие приколы,русские приколы,приколи,подборка приколов,лучшее за,coub,приколы 2017,yandex,google,the mag channel,мигорян,приколы под музыку,приколы музыкальные,смешные видео,не детские приколы,смешные моменты,лучшие приколы 2017,приколы лучшие приколы,девушки приколы,coub 2017,приколы 2017 лучшие,подборка,музыкальные приколы,смешные приколы,mag13mag13,неделю,месяц,2017,русские,фейлы,тест на психику,юмор,популярное,приколы 2016,топ,прикол,весна
Комментарии (0)КомментироватьВ цитатник или сообщество
mag13mag13

ЛУЧШИЕ ПРИКОЛЫ 2017 ПОД МУЗЫКУ #110 | Приколы музыкальные 2017 | #Приколы The MAG channel

Пятница, 03 Марта 2017 г. 19:16 (ссылка)
https://www.youtube.com/wat...STBsw-0jAM


НЕ ДЕТСКИЕ ПРИКОЛЫ! Лучшие приколы с девушками и другие смешные приколы в coub за март и февраль 2017 года. Подборка новых coub приколов под музыку и со смешной 😀 озвучкой 🎧. 


Подписаться на канал ●► https://www.youtube.com/user/mag13mag13 


Приколы The MAG channel - это развлекательный канал на котором регулярно выходят подборки лучших приколов под музыку и музыкальных приколов co списком музыки в описании. 


 


ПОДПИСЫВАЙТЕСЬ❗️ СМОТРИТЕ первыми новые выпуски каждый ВТОРНИК, ПЯТНИЦА и ВОСКРЕСЕНЬЕ в 18:00 по МСК! ⏰


 


Лучшая благодарность для меня - Ваш лайк 👍, репост и комментарий под видео. Огромное спасибо за просмотр‼️


 


============================


Плейлисты ⏯:


https://goo.gl/KzuVvr- Лучшие приколы под музыку |  Приколы музыкальные 


https://goo.gl/7Ws0sb - Сумасшедшие приколы 


https://goo.gl/bhgkIV - Тематические подборки приколов 


https://goo.gl/uFAYh6 - BEST Videos of the Week | Лучшие видео недели


https://goo.gl/7KzUm9 - 10 BEST VIDEOS | Топ-10 лучших видео


 


============================


Ссылки в соцсетях:


ВКонтакте  ► https://vk.com/themagchannel





============================


 


ЛУЧШИЕ ПРИКОЛЫ 2017 ПОД МУЗЫКУ | Приколы  музыкальные 2017 | #Приколы #TheMAGchannel 


#Подборка №110


 


ТРЕК ЛИСТ:


 


0:00 Georgian song - Salamuri | http://coub.com/view/sa1bp - დიდებული აკუსტიკა


0:18 DUBSTEP GRANDMASTER - COME ON


0:26 55x55 – СУПЕРМЕГАХИТ (feat. Куплинов)


0:43 http://coub.com/view/rnsjr - Давай, Вася переходи на нижний


0:52 http://coub.com/view/s4l8o - Hehe Boii


1:01 Yello - Oh Yeah | http://coub.com/view/6wwvs - Trust me..


1:21 Oliver Koletzki & Fran - Hypn | http://coub.com/view/2t5tx


1:31 http://coub.com/view/s8jnn - summer pechalka


1:43 Потап и Настя - Чумачечая Весна


1:53 NEIKED – Sexual 


2:12 Времена Года. Весна, Allegro


2:17 Александр Зацепин - Твист (из к/ф «Операция „Ы")


2:44 SunStroke Project & Olia Tira - Run Away 


3:05 Tom Jones - Sexbomb


3:22 Foster The People - Pumped up Kicks


3:44 Get Schwifty Music Video | Rick and Morty | Adult Swim | http://coub.com/view/s9xnx - S*** on the floor


4:04 Ed Sheeran - Shape Of You


4:23 Мурат Насыров - Мальчик хочет в Тамбов


4:36 Avicii - The Nights


5:20 Ed Sheeran - Shape Of You


5:30 The Chemical Brothers - Block Rockin' Beats (Single Version)  


5:43 Красная плесень - Частушки №W17


6:05 Midnight Train by Jeremy Sherman


6:23 ??? 


6:34 Wham! - Wake Me Up Before You Go-Go


6:54 RL Grime & What So Not - Tell Me (Rudebrat Refix)


7:05 Ricchi e Poveri - Voulez Vous Danser


7:13 Динь-динь-динь,колокольчик звенит)))


7:29 KC & The Sunshine Band - Shake Your Booty



8:11 Lil Dicky - $ave Dat Money ft. Fetty Wap and Rich Homie Quan


8:31 Радиотранс - Космонавт / Radiotrance - Kosmonavt


8:46 BOIRIA - Between You And Me (feat. Favlight, Bleak & Proxi) 


8:56 AC/DC - Highway to Hell


9:04 DJ Khaled "All I Do Is Win" feat. Ludacris, Rick Ross, T-Pain & Snoop Dogg / Victory In Stores Now


9:23 Far East Movement, Sidney Samson - Bang It To The Curb


9:33 Реклама Сосиски Останкино - Сердце поет (Накорми меня ми-ми)


9:43 Ellie Goulding - Love Me Like You Do


09:59 The golden gospel singers – Oh freedom | http://coub.com/view/s9nzm - Oh Freedom 


10:13 JPB - High


 


============================


 


● В связи с изменениями на платформе #YouTube прошу в настройках подписок, установить галочку на получение оповещений ●


 


Все авторские права принадлежат 


Их законным владельцам.


Если вы являетесь автором


Фрагмента из выпуска и его


Распространение ущемляет Ваши


авторские права прошу связаться со мной.


 


All Copyrights belongs


To their rightful owners.


If you are the author


Of the fragment video and distribute it


Infringes your copyright


please contact me.


 


#coub #jokes #musicaljokes #funnyvideos #mag13mag13


 


Приколы,лучшие приколы,подборка приколов,русские приколы,yandex,google,приколы 2017,лучшее за,приколи,the mag channel,мигорян,приколы под музыку,приколы музыкальные,смешные видео,прикол,не детские приколы,смешные моменты,лучшие приколы 2017,приколы лучшие приколы,девушки приколы,coub,coub 2017,приколы 2017 лучшие,подборка,музыкальные приколы,смешные приколы,mag13mag13,неделю,месяц,2017,русские,фейлы,тест на психику,самые,юмор,популярное,приколы 2016,топ
Комментарии (0)КомментироватьВ цитатник или сообщество
rss_rss_hh_new

Переезд на Yandex ClickHouse

Воскресенье, 26 Февраля 2017 г. 19:40 (ссылка)





Александр Зайцев отвечает на вопросы относительно переезда на Yandex ClickHouse. Это — расшифровка доклада Highload++ 2016.



Всем здравствуйте! За эти два дня на конференции было два двухчасовых митапа, сегодня даже почти трёхчасовой митап по ClickHouse. После этого Виктор с Алексеем сделали замечательный доклад, казалось бы — больше уже ничего не расскажешь. На самом деле это не так.



Я вам расскажу, как на ClickHouse переезжать, если у вас уже что-то есть. Обычно если ничего нет, то всё очень просто. Берёте и строите на новой системе. А вот если что-то есть, то это гораздо сложнее. Сейчас у вас всё хорошо. Вы поняли, что ClickHouse замечательная система. Виктор с Алексеем ответят на все вопросы, я не сомневаюсь, чтобы ещё больше уверить вас в том, что это правильное решение.



На самом деле, не всё так хорошо, как они рассказывают если вы собираетесь переезжать. Потому что ClickHouse достаточно сильно отличается от всего с чем вы имели дело в прошлом.



Всё это совершенно новый достаточно специфический опыт, он требует большой работы для того чтобы всё получилось хорошо. Какие-то простые вещи работают сразу, например, логи загрузить. А какие-то не очень простые вещи работают совсем не сразу. В конце концов, я убеждён что у всех всё получится, потому что у нас получилось. Мы прорвались через все препятствия.



Кто такие мы?



Я работаю в компании LifeStreet – это рекламная сеть. Достаточно крупная сеть, мы существуем на рынке больше 10 лет, занимаемся оптимизацией разного типа рекламных вещей: кампании, объявления, части объявлений, bidding, интегрирования с внешними системами и т.д.



Это совершенно живая компания, которая зарабатывает десятки миллионов долларов ежегодно, у нас не так много данных, как в Яндексе, а где-то вполовину меньше. Всего лишь 10 миллиардов событий в день. Всё это дело хранится в большой аналитической системе: используется как внутренними пользователями, так и внешними, так и алгоритмами machine learning, оптимизацией и прочим. Инфраструктура, которая у нас есть, она очень хорошая, выверенная, построена на Vertica 2010 года, мы одни из самых первых кто начали использовать Vertica в России, хотя компания американская. Об это я рассказывал на HighLoad два раза, последний раз в 2013 году. В тот раз я рассказывал какие еще есть варианты построения аналитических систем. ClickHouse тогда не существовало. Я там рассмотрел разные и лучше Vertica не нашёл. Тогда ничего лучше не было.



Но мы продолжали смотреть — нам Vertica всем нравилось, но были некоторые вещи, и мы хотели рано или поздно от неё отказаться. В прошлом году появилась такая штука как Snowflake, компания целиком на Amazon. Замечательно масштабируется, она on demand поднимает сервера, то есть вы можете на ночь сервера выключать, а днём включать и не платить за них. Данные все хранятся в Amazon S3 и т.д. Она настолько хорошая, потому что разрабатывалась бывшими программистами Vertica — они плохого не сделают.



У нас пока всё хорошо, но мы хотим уйти с Vertica.



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



Наш CTO присылает мне письмо следующего содержания:





Саша, у ClickHouse похожие use case, они рекламная сеть, они считают клики и т.д. Они выпустили систему и на бумаге выглядит всё идеально. Практически то, что нам нужно. Абсолютно ко всему подходит, если мы сможем это использовать – это будет очень круто. Пожалуйста посмотри.


Сказано — сделано



Что такое ClickHouse летом-осенью 2016 года?



Во-первых, он только появился — штука новая совершенно. Это обычно плохо для любого продукта, там скорее всего много багов и т.д. Это внутренний проект Яндекса. Это первый внешний продукт с непонятными тогда ещё перспективами.



Выпустили в Open Source, хорошо. И что?



Тогда еще не было независимых инсталляций, а сейчас хоть и говорят, что есть продакшн инсталляции — на самом деле неизвестно у кого, неизвестно с какими результатами, нагрузками. Нет case studies хороших, чтобы на них посмотреть и понять, что это действительно то, что нужно. Нет поддержки, Алексей — это единственная поддержка, которая есть, но он один. Нет roadmap, непонятно как продукт будет развиваться. Никаких планов компания не разглашает, это всё внутреннее, то есть продукт вроде и Open Source, но все планы внутренние. Было всего три разработчика, как объявлено, у самого ClickHouse и ещё несколько из Яндекс.Метрики помощников.



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



Немножко давили истории других проектов, которые только и сделали, что выпустили в Open Source, потому что они не всегда были успешны. Например, Facebook выпустил Cassandra в Open Source, когда она была очень сырая, в конце концов он её уже не использует, но Cassandra повезло, её развивают другие.



Если вы были на докладах Петра Зайцева, он наверняка рассказывал про TokuDB и TokuMX, которые входят в Percona сервер. Это была такая компания Tokutek в Бостоне. Она делала совершенно замечательный аналитический engine для MySQL, который блоками хранил и брал данные, гораздо лучше, чем InnoDB для ряда задач. Компания замечательная, но продавалось всё это очень плохо — в конце концов она обанкротилась, но, чтобы её результаты не потерялись, она всё это выпустила в Open Source.



С таким вот списочком мы приходим к нашему директору в LifeStreet, который отвечает за это направление и за деньги. Мы говорим ему: «Пол, мы хотим Vertica и твою аналитическую структуру поменять на вот это, разработано в России». Как вы думаете, что он сказал? Он вежливый человек, но он сказал: «Вы что с ума сошли? Вы хотите это заменить на то что у меня работает и приносит деньги?».



К счастью, не он принимает решения, но он так сказал.



Дальше мы пошли к разработчикам, которые умеют разрабатывать для баз данных, знают SQL и все вот эти вещи. Они стали смотреть на ClickHouse. Они поняли, что в ClickHouse почти ничего нет:




  • Там нет транзакций, нет констрейнтов.

  • Там есть primary key, но это не primary key на самом деле, можно сказать это порядок физической сортировки.

  • Там нет Consistency, то есть Consistency никак не гарантируется.

  • Нет удалений и апдейта.

  • Нет NULLs, система к которой вообще нельзя Null записать.

  • Нет миллисекунд, то есть время с точностью до секунды, хотите миллисекунды – храните их по-своему, как Int64 или отдельным полем.

  • Нет автоматических приведения типов, то есть даже Int8 к Int16 надо приводить явно.

  • Нет нормального SQL, это понятно из всего предыдущего списка.

  • Нет произвольного партиционирования, партиционировать можно только по месяцам, то есть нельзя по дням или по неделям отпартиционировать или по произвольным ключам, нельзя и всё.

  • Нет средств управления кластером, то есть они, наверное, есть у самого Яндекса, но он их не смог настолько запаковать, чтобы это можно было увидеть в Open Source или не захотел.



Как думаете, что сказал разработчик, когда увидел этот список?



Он сказал: «И они называют это базой данных?» «Они» — это имеется ввиду Яндекс. Тем не менее, несмотря на понимание, что у системы есть серьёзные ограничения — мы решили попробовать.



Решили попробовать в первую очередь потому, что действительно близкая предметная область и задача. А раз близкая задача, то и решение для нас скорее всего заработает, кроме того в России авторитет Яндекса очень высок. Я знаю достаточное количество людей, которые работали или работают в Яндексе — все они очень высокие профессионалы. Сразу активный интерес сообщества к этой теме. Он показал, что она действительно интересная и это не может быть пустым звуком. Нам это стало очень интересно. Нам захотелось действительно попробовать, потому что это интересная штука. И это бесплатно.



Мы попробовали — сделали быстренько небольшой пилотный проект и поняли, что это действительно работает. Яндекс говорит правду. Это работает быстро.



Это первая база данных на нашей памяти — за последние годы, которые мы проверяли, а проверяли достаточно много — которая не была хуже Vertica. На яндексовских она была лучше, на наших тестах она была примерно ровно, где-то чуть-чуть лучше, где-то чуть-чуть хуже. Это очень сильный результат.



Много особенностей — это мы тоже поняли. Что очень неплохая документация, то есть как документация для проекта, который только-только выпущен в Open Source. Она была и остаётся идеальной, на мой взгляд, там конечно некоторых вещей нет, но, во-первых, их всегда можно спросить, во-вторых то, что есть, этого уже достаточно чтобы начать и далеко не только начать. Совершенно живой форум на Google Groups, где на ответы Алексей, по его собственному признанию, тратит чуть ли не половину рабочего времени. Эти ответы всегда очень развёрнуты, он пытается вникнуть в суть проблемы и это нас убедило, что в Яндексе отношение более чем серьезное.



Ну, я уже говорил про Алексея: из-за его ответов на вопросы, на личную почту и, даже дошло до того, что мы лично приехали в Яндекс — я приехал с одним из своих разработчиков, чтобы поговорить с Алексеем и посмотреть ему в глаза. Мы посмотрели и поняли, что «можно».



Так что мы поехали



Как я уже сказал: главной проблемой было то, что нужно было перевести существующую систему на ClickHouse. Это схемы данных, это скрипты загрузки, это OLAP-сервис, который использовался для отдачи этих данных всем нашим клиентам и внутренним, и внешним, а также некоторые процедуры администрирования.



Существует фундаментальная проблем переезда. Если вы переезжаете в другое место — обычно вам что-нибудь, да не подходит. Вы переезжаете в Англию, вам приходится ездить по другой стороне. Вы переезжаете в Америку, у вас там вилка к розетке не подходит. Есть определенные привычки, какие вещи, к которым вы привыкли. Они у вас работают, вы переезжаете, и они у вас перестают работать. Эта проблема переезда существует всегда, на что вы бы ни переезжали, даже очень близких систем. И вот в ClickHouse это сложность — она была основной. То, к чему мы привыкли в нашей наработанной практике, в базах данных таких, как: MySQL, Oracle, Vertica — если говорить о подходах и их применимости в ClickHouse, в лоб они не работали никогда, а не в лоб их всегда удавалось сделать.



Самое важное — это, конечно, схема. От схемы данных зависит всё. И схемы, которые используются в аналитических задачах, это такая звезда, вложенная в куб или куб, развёрнутый в звезду. Такая хитрая геометрия.







Эта табличка посредине — её обычно называют «факты», а таблички по сторонам называют «измерениями» или «деменшенами». Кроме того, есть такое синтетическое понятие как метрика — это некоторая функция, агрегирующая над фактами.



Вот эта схема необязательно выглядит так, как здесь нарисована, потому что всегда существует две крайности. Можно все положить в таблицу фактов, в том числе все измерения, и это будет очень дорого по диску, много потребуется места, дорого получить список. Если у вас миллиард записей, а вы хотите получить список всех стран, которые там есть, то какое бы эффективное хранение колонки ни было — если она конечно не хранит список стран отдельно — то придётся её всю прочитать, что будет дорого. И нельзя ничего менять. Обычно таблицу фактов никогда не меняют.



Другая крайность — это когда у вас всё в таблице измерения (и здесь ClickHouse подкладывает большую свинью, так скажем — тем что в нем очень плохие join, я про них потом скажу, join очень ограничено применимые). И опять же нет апдейтов — хотя измерение это первое дело, что достаточно часто требуется обновлять или добавлять в них какие-то вещи.



Немного подробнее здесь остановлюсь



Измерения можно разделить на три условных типа. Первое — это статические справочники, которые не меняются никогда, ну или крайне редко. Например, список стран, иерархия времени, иерархия географии и тому подобное. Они почти никогда не меняются. Кроме того, обычно в компании есть какая-то своя CRM и RP, а в ней есть изменяемые справочники: список клиентов, список рекламных компаний, какие-то характеристики объявлений и так далее. Они изменяются, но не часто. Если база данных LTP обычная, то там что-то да когда-то меняется. И эти изменения нужно отображать в аналитической базе данных. И кроме того есть ряд данных, которым произвольные атрибуты, прибегают из сети — например, id application или модели телефонов, которые меняются так часто и так быстро, появляются новые, что сделать статический справочник или даже слабоизменяемый практически невозможно. Вы никогда не знаете, что у вас из трафика прилетит.



Как оказалось, в ClickHouse есть такая замечательная штука, как словари. Виктор немного о них сказал, а я скажу о них подробно. Словари позволяют с ключом связывать нечто, если брать аналог из Cassandra — это call on family, то есть по ключу есть ряд колонок со значениями. Все эти словари можно брать из разных источников, например, из файлов или MySQL базы данных. Они описываются в XML, при чем здесь можно описать в одном файле один словарь, тем самым легко поддерживать версии и всем этим делом управлять немного легче.



Они обновляемые, хотя с некоторыми нюансами, о которых я расскажу дальше.



И к ним доступ через функцию — не через такую, как показал Виктор, потому что он показал доступ к своим словарям, которые зашиты внутрь ClickHouse, а вот к словарю общего типа доступ и через функцию общего типа.



У словарей есть определенные ограничения. Одно из ограничений, их на самом деле в ClickHouse много — тип Ulnt64, других типов не может быть. А поскольку imple set явных приведений типа ClickHouse нет, если у вас тип колонке в другой таблице другой, то приходится приводить к типу, что не очень удобно.



Второе ограничение, достаточно для нас существенное, может для кого-то и нет — это то, что нет прямого способа получить все значения колонки. Вы не можете из словаря понять, что там лежит. Такого способа нет, можно только посмотреть в источник, а вот из ClickHouse в лоб спросить нельзя.



Есть определенное ограничение по размеру. Там есть три типа словарей и самый эффективный и быстрый, он огранен размером 500 тысяч строк, очередное магическое число. Есть и другие типы, которые менее ограничены, но они работают медленнее. Нельзя обновить словарь по требованию или по изменению источника, опять же с некоторыми нюансами. Приходится как-то за этим следить. На каждом узле кластера все независимо. Если у вас 100 нодов в кластере и вам нужно обновить словарь — необходимо на каждый нод сходить, чтобы он обновился. И в некоторых случаях запросы могут работать медленно.







Мы придумали вот такую штуку. Сейчас ноу-хау, не знаю использует ли сейчас Яндекс такое или нет. Мы придумали такое ноу-хау — мы делаем таблицы, к каждому словарю приделываем еще таблицу, в которой храним только ключи.



Что это даёт







Это даёт возможность получить все записи из словаря таким, например, образом с одной стороны, а с другой даёт возможность оптимизировать такие запросы. Если у вас есть очень-очень большая таблица и вы делаете, например, такой вот запрос с такого рода условием, то эта функция будет вызываться каждую строчку, вероятно, что для очень большой таблицы не слишком быстро. А вот с использованием отдельной таблички для ключей можно запрос переписать. Можно сначала вытащить отдельный набор ключей, очень простым запросом, а потом работает очень эффективный select.



Это конечно упрощенные запросы. В реальности там еще какие-то другие условия будут, но мысль, наверное, понятна.



Обновление словарей для нас тоже важно, потому что данные меняются. Стандартный способ по таймеру, который по-умолчанию 5 минут. Чем это плохо? Тем, что если у вас много словарей и много серверов — то коннектов идёт, например, к MySQL очень много и они его могут озадачить.



Нужно какие-то или реплики ставить, или как-то это разрешать по-другому, но если вам так повезло, что у вас исходная таблица в MyISAM, то ClickHouse сам понимает, что словарь изменился. Поскольку то, что в MyISAM таблице, в её описании, если смотреть show table, то там будет дата последнего изменения и ClickHouse умеет на это дело смотреть и подцеплять изменения.



Еще один замечательный способ — это сделать Touch конфига. То есть если зайти на сервер, сделать Touch конфиг файла описания словаря — то ClickHouse подумает, что словарь поменялся и его заберёт. Но нужно пройтись по всем серверам кластера.



И наконец, последний способ, который мы придумали — придумали, но не пробовали. Это, например, сделать Shared-файл где-нибудь и забирать словарь из файла. Shared-файл проще поменять, чем идти по всем нодам.



Вообще, как и Виктор заметил — что 80% join это убрало, так и для нас это настоящая серебряная пуля, даже целый серебряная лавка, который позволяет star schema (звезда в кубе) сделать хоть как-то работающей.



Но таблицы все-таки иногда нужны



Во-первых, это для ключей. Во-вторых это атрибуты из веб-трафика, который в словари никак не укладываются. В-третьих это join по сложному ключу, если у вас ключ составной, если вы не можете хеш сделать по каким-то причинам, то словарь не получится.



Если вам нужно делать join по промежутку дат — у вас есть таблица, где какой-то диапазон дат и есть какое-то значение. Вам нужно взять это значение на сегодняшнюю дату или на вчера, и так далее. Такой специфический use case, всегда его можно решить по-другому, но на словарях это не работает.



Раз появляется таблица, то появляется вопрос «как обновлять таблицу?». ClickHouse говорит, что этого делать не нужно, но если вам нужно обновить — то перепишите целиком. Ну а если очень хочется, то можно.



Для этого есть такая штука, как ReplacingMergeTree. Она позволяет в принципе обновить запись, но, во-первых, это очень Eventually — однажды она у вас обновится, вы туда добавляете запись и однажды эта новая запись станет текущей, но когда – вы не знаете. Можно позвать optimize и тогда она у вас действительно станет текущей сразу, если повезет, а можно поставить final и он тоже вытаскивает текущую запись. Яндекс говорит, что это медленно и не эффективно, хотя для маленьких таблиц разницы никакой нет.



Неудобно обновлять отдельные поля, то есть удобно всю запись целиком. Отдельные поля неудобно, потому что нужно значения вытащить отдельным select и после записать обратно.



Есть еще такая проблема, что в ClickHouse для каждой таблицы должен быть partition key, который дата для каждой. Даже если вам дата не нужна, то все равно её нужно добавить. И есть иногда такое желание положить в эту дату что-нибудь полезное. И если туда класть что-то полезное, то с ReplacingMergeTree это не получится, потому что разные partition не схлопываются.



А если нужно удалять — то еще хуже. Если удалять таблицу нельзя, только если там нулями все перезаписать — а из фактов есть такая штука, как CollapsingMergeTree, и на митапе последнем это подробно объясняли. Это аналог такого банковского «сторно», когда вы добавляете что-то с другим знаком, а потом добавляете запись с правильным знаком. Она, опять же Eventually, то есть когда-нибудь станет правильной. Исправлять можно только метрики, то есть только деньги или только циферки, по-хорошему. И исправляются не данные обычно, а результат агрегации. Данные когда-нибудь, может быть, исправятся, но не обязательно.



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



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



Дальше в ClickHouse есть такие замечательные штуки, как Replicated таблицы. Когда вы берете одного кролика и кладете его на два разных сервера — у вас получается два кролика. Или на три сервера — тогда у вас получается три кролика. Один сервер упал, второй остался.



Есть такая штука, как Distributed таблица. Когда вы берете кролика и режете его на кусочки (не по-настоящему), раскладываете кусочки по разным серверам. Для того чтобы получить целого кролика — нужно сходить на все сервера, но на каждом маленький кусочек и это как бы быстрее сделать, хотя результат будет одинаковый.



Эти подходы надо комбинировать, то есть у вас есть кролик, и каждый кусочек лежит на нескольких серверах. Вы можете терять и быстро к этому обращаться.



Если все предыдущие знания обобщить, то у вас получится такая ферма FarmVille из ClickHouse, где факты разложены на многих-многих шардах, какие-то шарды реплицируются, поверх них есть Distributed таблица, чтобы из этого читать.



Сами шарды реплицируются как минимум один раз, а лучше два. Таблицы-измерения реплицируются на все узлы, потому что вам нужно фильтровать данные на всех узлах и ходить на все. А некоторые таблицы можно хранить согласованно с фактами — например, на тех самых шардах. Это те, которые прибегают из трафика, потому что они пришли с данными — пусть они и хранятся радом с данными, мы так сохраним локальность и не будет лишней.



И если там все правильно со стороны дизайна — то можно сделать загрузку, которая по share nothing. Концепция сделана и ничего не использует, а лишнее никуда не посылает. И чтобы это получилось, старайтесь не грузить Distributed — режьте кроликов сами на кусочки и складывайте их в нужные шарды. А Distributed только для select.



Кроме того, даже если вам не нужна репликация, лучше использовать Replicated таблицы.



Потому что в этом случае работает ZooKeeper, а он считает чек-суммы блоков. Если у вас что-нибудь сломается посередине, а транзакций нет и вы не знаете, что у вас записалось, а что нет — ZooKeeper (если вы попытаетесь, то же самое записать) по чек-суммам сравнит и запишет те блоки, которые еще не записались, с его точки зрения. Это дает какие-то ложные ощущения Consistency. И временные/промежуточные таблицы тоже всегда помогают.



Можно в промежуточные таблицы записать много маленьких кусочков данных, потом их объединить и записать в большую. Или записать во временную таблицу, проделать какие-то манипуляции, добавить какие-то словари, join, что-то с данными сделать и записать в основную таблицу. Если все это правильно сделать, то загрузка получается очень быстро. У нас получилось быстрее, чем Vertica, однозначно, не сильно быстрее, но все же.



Другой больной вопрос, который станет перед тем, кто пытается что-то перевести на ClickHouse — это агрегация.



Что это такое



Если у вас есть пачка морковки, то можно взять одну морковку, написать число 10 и сказать, что это новая морковка такая. При этом она не будет такая же, как те — она будет не просто морковкой, она потеряет индивидуальность. Яндекс считает, что агрегация вообще не нужна именно потому, что вы теряете детали, лучше храните всё и всегда.



Но считая так, тем не менее, не все в Яндексе придерживаются этого мнения, потому что в ClickHouse есть средства, которые делают агрегацию именно средствами самого ClickHouse – это Aggregated и SummingMergeTree, которые работают как таблица, в которой вы делаете insert, а на выходе она на самом деле агрегирует то, что вы уже вставили и хранит сагрегированные и сжатые данные.



Что самое приятное — если вы пойдете по этому пути, то можно этот Aggregated и SummingMergeTree сделать как MV поверх фактов. И вы вроде как вставляете факты, а у вас в сторонке, магическим образом, появляется агрегат. С ним тоже могут быть всякие проблемы и сложности, о которых я здесь не буду говорить, но тем не менее — это работающее решение и может быть оно кому-то поможет.



Потом мы добрались до доступа к данным. Сразу много интересной специфики, которой в других базах данных не найдете. Это массивы и функции высших порядков для работы с ними, или ARRAY JOIN, который массив разворачивает в строчки. Достаточно необычные переобозначения для select-выражений. В любом месте можно поставить alias для выражения или для колонки и его можно использовать, не обязательно в having — можно использовать дальше в той же select строке. Иногда это удобно, но иногда это приводит к ошибкам, которые очень тяжело отловить, особенно если использовать имя, которое уже где-то используется.



Интересная специфика, которая связана с join, совершенно не SQL, совершенно не стандартная. Поскольку ClickHouse никогда не гарантирует по primary key. Чтобы с этим делом справиться они придумали такую штуку, как ANY vs ALL JOIN.



Что это?



ALL JOIN возвращает все, что подходит под JOIN условия с той стороны, а ANY возвращает одну запись — первую, которая попадет. Тем самым, если у вас идут неуникальные записи в таблицах, которые вы join, вам это не страшно — вы получите максимум одну.



Есть интересная специфика, связанная уже с распределенными вещами это PREWHERE vs WHERE. Одна выполняется на шардах, другая после шардов.



GLOBAL IN, GLOBAL JOIN — это из того, что нам понравилось. И приблизительные вычисления – это семплинг или вероятностные модели, о которых Виктор говорил, тоже для многих случаев, когда очень большой массив данных и нам нужна точность, это можно использовать.



Но это все хорошее.



Теперь боль. Чего нет в этом диалекте SQL, который иногда даже SQL назвать очень сложно, но очень хочется.



Это авто-приведение типов, я об этом буду повторять очень много раз. Переобозначение alias для таблиц — это понятно почему, потому что свой синтаксис для JOIN. Можно сделать один раз JOIN таблицу, то есть select таблицы JOIN один раз, два раза уже нельзя, работать уже не будет. Поэтому переобозначение и не нужно.



Чтобы сделать два JOIN нужно делать под-select и делать второй раз, я потом покажу. И JOIN поддерживает только using — это значит, что у вас колонка должна называться одинаково с обоих сторон и тип у нее должен быть одинаковый. Если тип разный, то придётся опять делать под-select, приводить тип или переименовывать.



Нет такой полезной штуки в SQL, как group by/order by 1,2,3… Если аналитик, которому удобно и быстро работать с ClickHouse работает и меняет измерения, по которым он хочет делать slicing and dicing, так они это называют. Когда он поменяет измерение в select, ему придётся бежать в group by, там тоже переименовывать в order by. С другими базами данных это очень удобно, когда написал order by 1,2,3… ты уже не паришься, какие у тебя там колонки есть, которые ты анализируешь.



Нет nulls и нет coalesce, жутко полезная функция и я не знаю, как люди без нее живут.



И еще — из-за чего нам было больно несколько, так это то, что через JDBC и HTTP интерфейс нет временных таблиц, потому что нет сессии. Яндекс обещает это как-то тем или иным способом поправить, а пока что приходится использовать постоянные таблицы и следить за тем, чтобы они вовремя удалялись, что не всегда просто.



Соответственно мы придумываем различные костыли. То есть переводим типы явно, оборачиваем join. Вот если вы делаете join не двух таблиц, трех или четырех, то эта конструкция растет и растет. И на каждый под-select у вас расходуется память — если к большой таблице нужно присоединить много маленьких, то чтобы понять, сколько памяти нужно, то вот эту большую таблице после каких-то where условий в каждый join она перетекает, расходуя и расходуя память. Не очень удобно. Поэтому словари!



Вот замечательно, как можно переписать coalesce, если nulls заменить на нули через функцию высоких порядков arrayFilter. Это мой любимый пример. Что здесь сразу удивляет разработчиков и надеюсь вас тоже удивило — то, что массивы нумеруются, начиная с 1, а не с 0. Бывает и так.



И следующее — не знаю боль это или не боль, а администрирование



Администрирование ClickHouse выглядит примерно так:





Это набор «умелые руки» или «сделай сам». То есть у вас есть всё — можно собрать, что угодно.



Все очень-очень гибко и очень-очень вручную. И одна из основных болей, это то, что любые DDL операции (alter table или что-то еще), вам нужно выполнять на всех узлах. На каждый узел зайти и сделать create table или alter table, если про какой-то узел забудете, то при каком-то запросе это может упасть.



Есть ZooKeeper. У него свои понятия о таблицах. На самом деле реплицированные таблицы имеют имя в ClickHouse, и у них есть имя в ZooKeeper. Когда вы переименовываете таблицу — она переименовывается только в ClickHouse, в ZooKeeper она не переименовывается. И это может приводить к очень интересным открытиям. Например, если вы хотите таблицу переименовать, создать новую на том же месте, с какой-то другой структурой и скопировать данные, это у вас в лоб не получится, потому что в ZooKeeper имена остались старые.



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



Очень важно угадать Yandex Way (название наше) — это тот use case, который Яндекс рассматривал, когда строил свою систему. Это метрика, как она работает и понимая дорогу Яндекса, можно либо по ней идти, либо мостить свою дорогу и понимать, что вы делаете свою дорогу, а вам никто ничего не гарантирует.



Например, первая вещь, на которую мы наткнулись в ClickHouse, когда начали её использовать — там не поддерживались отрицательные ключи, то есть таблицу составляете -1 и получаете ошибку. Быстро пофиксили этот баг. То есть у Яндекса не было отрицательных ключей, а у кого-то появились.



И понятно, что у Яндекса скорее всего unit test покрыто то, что им нужно чтоб регрессии не было, а то, что вам нужно — никто не гарантирует и приходится проверять.



Приходится пробовать, не нужно стеснятся пробовать и спрашивать дорогу у Алексея и у Виктора на форуме, я описал наш путь.



Можно подумать, что я ругаюсь на Яндекс. Но ни в коем случае — я на самом деле испытываю к ним огромную благодарность, они сделали отличный проект и то, что в нем какие-то вещи не работают — они не работают для нас и для компаний, которые пытаются с RDBMS переехать. Для кого-то они работают с одной стороны, а другой стороны они очень хотели обратную связь от сообщества — и вот они его таким образом получают, чтобы понять, в какую сторону развивать продукт.



В конце дороги всех ждет изумрудный город, очень быстрый, очень хороший. Действительно ClickHouse здорово работает.



У меня все.







Доклад: Переезжаем на Yandex ClickHouse.
Original source: habrahabr.ru (comments, light).

https://habrahabr.ru/post/322620/

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
Romeo_Paradise

Romeo Paradise | Яндекс Фотки

Воскресенье, 19 Февраля 2017 г. 23:11 (ссылка)
https://fotki.yandex.ru/use...oparadise/


Фотографии Romeo Paradise на "Яндекс.Фотки".



яндексфотки (700x390, 181Kb)
Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
Kingmon

7Finance » KingMonitor - хайп мониторинг

Понедельник, 23 Января 2017 г. 18:50 (ссылка)
kingmonitor.ru/187-7finance.html


Наш вклад 500 RUB Старт проекта 23.01.2017 Маркетинг 1) +7% за 24 часа, вклад от 100 до 100 000 RUB 2) +77% за 7 дней, вклад от 35 000 до 500 000 RUB 3) +177% за 10 дней, вклад от 50 0

Комментарии (0)КомментироватьВ цитатник или сообщество
Kingmon

Marvel ЭПИЧЕСКИЕ ИНВЕСТИЦИИ до 25% в ДЕНЬ. » KingMonitor - хайп мониторинг

Понедельник, 23 Января 2017 г. 18:47 (ссылка)
kingmonitor.ru/184-marvel-e...v-den.html


Наш вклад 20 Старт проекта 23.01.2017 в 15:00 по МСК. Маркетинг огонь! 12 тарифов, от 3 до 25% в сутки. Вклады от 1 до 15 дней. Минимальный вклад: 1 Максимальный вклад: 999 Реф-программ

Комментарии (0)КомментироватьВ цитатник или сообщество
Kingmon

KARMA PLACE » KingMonitor - хайп мониторинг

Четверг, 19 Января 2017 г. 09:45 (ссылка)
kingmonitor.ru/161-karma-place.html


✳ KARMA PLACE ✔ Статус — Платит.Вклад 10$ или по курсу в рублях. 

➡ Старт проекта 23.12.2016 

➡ Регистрация https://vk.cc/649uls 



Комментарии (0)КомментироватьВ цитатник или сообщество
Kingmon

RAZZLETON » KingMonitor - хайп мониторинг

Среда, 18 Января 2017 г. 21:47 (ссылка)
kingmonitor.ru/172-razzleton.html


✳ RAZZLETON✔ Статус — Платит. Вклад 10 $ 

➡ Старт проекта 19 дек. 2015. 

➡ Регистрация https://clck.ru/AThz4 



Комментарии (0)КомментироватьВ цитатник или сообщество
Kingmon

RAZZLETON » KingMonitor - хайп мониторинг

Среда, 18 Января 2017 г. 11:16 (ссылка)
kingmonitor.ru/172-razzleton.html


Наш вклад 10 Старт проекта 19 дек. 2015. Маркетинг 1) +2.1% ежедневно на 15 календарных дней, от 10 — 1000 2) +2.3% ежедневно на 30 календарных дней, от 1001 — 10000 3) +2.9% ежедневно



6134303_ (630x299, 111Kb)

Комментарии (0)КомментироватьВ цитатник или сообщество

Следующие 30  »

<yandex - Самое интересное в блогах

Страницы: [1] 2 3 ..
.. 10

LiveInternet.Ru Ссылки: на главную|почта|знакомства|одноклассники|фото|открытки|тесты|чат
О проекте: помощь|контакты|разместить рекламу|версия для pda