Search
Write a publication
Pull to refresh
11
0
Pudeian Mkrtich @diego_milito

Разработчик/Аналитик

Send message

Введение в многомерный анализ

Reading time12 min
Views175K

Некоторое время назад мне довелось организовывать новую группу разработки, которая должна была заняться развитием OLAP и BI продуктов в дружеской софтверной компании. А так как группа была собрана из свежих выпускников ВУЗов, то мне пришлось написать «краткий курс молодого бойца» для того чтобы максимально доступно дать начальные понятия об OLAP людям, которые ни разу с ним не сталкивались, но уже имели опыт программирования и работы с БД.



Выкладываю теперь это Введение в Общественное Достояние.



В статье несколько смешиваются понятия OLAP, Business Intelligence, и Data Warehouse, но и в жизни часто сложно понять, где проходит граница. А уж в реальных проектах, так и подавно, все они ходят рядом. Поэтому прошу не судить строго.



Итак, что же такое OLAP.

Как было устроено хранилище DWH в TELE2

Reading time3 min
Views20K

Здравствуйте, дорогие друзья.


Сегодня хочу поделиться историей из жизни, как было устроено хранилище DWH в Tele2 до внедрения КХД (EDW).


Поступил я в ИТ подразделение Tele2 в 2012 в отдел по системам отчетности. На тот момент в компании уже было создано хранилище DWH, на котором уже крутилось много процессов по предоставлению отчетности и не только.


Немного по поводу технического стека, который там использовался на тот момент. Для хранилища использовалась Оракловая база объемом 60-100 Тб сервер T4-4 c оперативой под 1 Тб. Туда загружались данные из различных источников. Но основными из них были 4 оракловые биллинговые базы, которые были по сути платформой тарификации. И был отдел, который занимался поддержкой этих баз и предоставлением сервисов. Разделение этих баз было по макрорегионам. Причина: слишком большие объемы. Т.е если абонент звонит, скажем, из Московской сим-карты то и расчет стоимости звонка производится в соответствующем биллинге.

Читать дальше →

MS SQL: генерация псевдослучайных данных с использованием newID(). Возможности и подводные камни

Reading time5 min
Views45K
Известно, что встроенная функция newID() широко используется разработчиками не только по прямому назначению — то есть для генерации уникальных первичных ключей, но и в качестве средства для генерации массивов псевдослучайных данных.
Читать дальше →

TypeScript: Раскладываем tsconfig по полочкам. Часть 1

Reading time10 min
Views103K

В данной статье я хочу предоставить переработанную и упорядоченную выжимку документации по настройке tsconfig.json, которая, я уверен, будет полезна тем, кто только начинает свой путь в мире TypeScript или тем, кто до этого момента не нашёл времени и сил, чтобы разобраться в деталях и теперь хочет закрыть этот пробел.

Читать далее

Реально ли big data настолько круты?

Reading time5 min
Views4.9K


Как собрать в прямом эфире 17 000 зрителей? Значит, рецепт такой. Берем 15 актуальных IT-направлений, зовем зарубежных спикеров, дарим подарки за активность в чате, и вуа-ля — крупнейший в Украине и восточной Европе онлайн-ивент готов. Именно так прошла ежегодная мультитул конференция NIXMultiConf.

Под слоганом «айтишникам — от айтишников» эксперты из Украины, Беларуси, России, Великобритании и Германии поделились опытом и рассказали о новинках индустрии. Полезно было всем — дизайнерам, девелоперам, тестировщикам и менеджерам. И теперь делимся инсайтами с вами.

По мотивам докладов экспертов NIX запускаем серию статей на самые актуальные темы. Начнем с хайповой — Data Engineering. Поклонник Python и Data Engineer в NIX Илья Кальченко выяснил, реально ли big data настолько круты?

Хотите узнать больше — смотрите конференцию на YouTube-канале.
Читать дальше →

MS SQL + Telegram =?

Reading time2 min
Views16K

image Привет, Хабр!


Мы с моим приятелем fedoref занимаемся разработкой и поддержкой решений на MS SQL.


Одной из наших проблем при работе с MS SQL было то, что без MS SQL Management Studio невозможно что-то сделать или проверить. А значит — всегда нужен под рукой компьютер и VPN в сеть клиента (или что посложнее). Нас это не устраивало — мы не всегда сидим перед монитором, а ситуации ингода требуют оперативности, особенно когда дело касается высоких нагрузок в real-time системах. Поэтому мы решили сделать телеграм-бота SQL. (Поискали готовые варианты на Github, но, увы, не нашли того, что нам подошло бы).

У нас получилось

15 лучших советов разработчику по настройке быстродействия Oracle APEX

Reading time9 min
Views4.2K
Всем горячий хабрапривет!

Сегодня нашей компании исполняется 28 лет, и в честь этого приятного события мы решили поделиться с вами новым материалом.

Благодарим за помощь с переводом нашего постоянного автора Юрия Пономарева OBIEESupport.

Автор статьи – Мишель Скэмин, основатель и управляющий партнер компании, предоставляющей сервис Reading Rewards. В далеком 2009 году Мишель страдала от того, что ее сыновья 8 и 9 лет слишком мало читали. Книги просто не могли конкурировать с компьютером и видеоиграми, поэтому Мишель со своим мужем решили разработать систему, в которой дети зарабатывали время на компьютерные игры, читая книжки.

Будучи IT-консультантом и разработчиком веб-приложений, Мишель разработала софт, позволяющий детям фиксировать время чтения и просмотра телевизора, а родителям – отслеживать это время. Это и стало началом сервиса Reading Rewards.

А теперь, собственно, статья.
Читать дальше →

Группировки и оконные функции в Oracle

Reading time6 min
Views132K
Привет, Хабр! В компании, где я работаю, часто проходят (за мат извините) митапы. На одном из них выступал мой коллега с докладом об оконных функциях и группировках Oracle. Эта тема показалась мне стоящей того, чтобы сделать о ней пост.



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

Всю необходимую информацию я постараюсь кратко и доступно объяснить в двух частях. Пост скорее будет полезен начинающим разработчикам. Кому интересно — добро пожаловать под кат.
Читать дальше →

Финансовая независимость, мой путь

Reading time5 min
Views114K

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


Читать дальше →

Как уйти на пенсию до 40 лет с миллионом долларов на счету в банке

Reading time10 min
Views241K

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




Карл Дженсен испытал то, что он называет «пробуждением», примерно в 2012-м году.

Он работал программистом в пригороде Денвера, писал код для медицинского оборудования. Работа была напряжённой: ему приходилось документировать каждый шаг для Управления по санитарному надзору за качеством пищевых продуктов и медикаментов США (FDA), а ошибка в коде могла навредить или даже убить пациента.

Дженсен зарабатывал порядка $110 000 в год, у него был определённый соцпакет, но, казалось, что всё это не окупает стресса. Он не мог расслабиться с семьёй после работы; бывало, что целые дни он проводил, обнимаясь с унитазом. Он похудел на 5 кг.

После одного особенно брутального рабочего дня, Дженсен погуглил вопрос «как мне рано уйти на пенсию?», и глаза его открылись. Он посовещался с женой и составил план: в следующие пять лет они экономили значительную часть доходов, серьёзно урезали расходы, пока не собрали порядка $1,2 млн.

Во вторник 10 марта 2017 года Дженсен позвонил своему боссу и предупредил об увольнении после 15 лет работы в компании. Однако он не увольнялся, а уходил на пенсию. Ему было 43.
Читать дальше →

Качество данных в хранилище

Reading time4 min
Views4.7K
Качество данных в хранилище является важной предпосылкой к получению ценной информации. Плохое качество ведёт к негативной цепной реакции в долгосрочной перспективе.
Сначала теряется доверие к предоставленной информации. Люди начинают меньше использовать Business Intelligence приложения, потенциал приложений остаётся не востребованным.
В результате, под вопрос ставятся дальнейшие инвестиции в аналитический проект.

Ответственность за качество данных


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

Full stack Data analyst

Reading time3 min
Views12K

"Анализ данных" часто организован так: вот у нас разработчики хранилища, а вот у нас аналитики. В DWH (data warehouse, хранилище) умеют SQL, а аналитики у нас умеют работать c экселем. Если нам нужно что-то проанализировать, то идете к аналитикам, а они идут за данными к DWH за данными. Вроде бы логично. И многие воспринимают, что это нормальное разделение труда. В этой статье я хочу донести мысль, что это разделение труда ошибочное и грандиозно снижает эффективность и производительность труда всего процесса анализа данных.


Типичный цикл работы по аналитической задаче выглядит так:


  1. Бизнес приходит с проблемой и просит получить ответ.
  2. Аналитики обсуждают с бизнесом, что надо сделать.
  3. Аналитики поняли, что от них хочет бизнес и понимают, что им примерно нужно в данных.
  4. Аналитики пишут запрос в DWH, чтобы получить данные.
  5. DWH берет запрос, читает, спрашивает, уточняет, извлекают данные, отдают.
  6. Аналитики понимают, что взяли не все или их неверно поняли, они пишут снова запрос в DWH, чтобы получить данные.
  7. DWH берет запрос, читает, спрашивает, уточняет, извлекают данные, отдают.
Читать дальше →

Соединение исторических таблиц

Reading time5 min
Views7.5K
Время от времени мне приходится сталкиваться с задачами, когда нужно в рамках имеющейся СУБД выполнить соединение двух и более исторических таблиц между собой, да так, чтобы получить красивые исторические интервалы на выходе. Зачем? Чтобы отчет смог правильно отобразить данные на выбранную пользователем дату, или приложение подтянуло в себя эти данные для обработки.
Часто коллеги и братья по цеху сталкиваются с подобными задачами и советуются как лучше их решить.
В этой статье я хочу поделиться опытом как решались различные ситуации подобного типа.
Читать дальше →

Big Data – почему это так модно?

Reading time5 min
Views11K
Технологии Big Data сегодня очень популярны, о чем говорит хотя бы то, что на текущий момент это наиболее часто встречающийся термин в IT-публикациях. Достаточно посмотреть на статистику таких известных поисковых систем, как Google или Yandex по словосочетанию «Big Data», и становится понятным, что так называемые «Большие Данные» действительно сейчас можно назвать одним из самых востребованных и интересных направлений развития информационных технологий.

Так в чем же секрет популярности этих технологий и что означает термин «Big Data»?
Читать дальше →

Как перемещать, выгружать и интегрировать очень большие данные дёшево и быстро? Что такое pushdown-оптимизация?

Reading time3 min
Views7.2K

Любая операция с большими данными требует больших вычислительных мощностей. Обычное перемещение данных из базы на Hadoop может длиться неделями или стоить, как крыло самолёта. Не хотите ждать и тратиться? Сбалансируйте нагрузку на разные платформы. Один из способов – pushdown-оптимизация.


Я попросил ведущего в России тренера по разработке и администрированию продуктов Informatica Алексея Ананьева рассказать о функции pushdown-оптимизации в Informatica Big Data Management (BDM). Когда-то учились работать с продуктами Informatica? Скорее всего именно Алексей рассказывал вам азы PowerCenter и объяснял, как строить маппинги.


Алексей Ананьев, руководитель направления по обучению DIS Group


Что такое pushdown?


Многие из вас уже знакомы с Informatica Big Data Management (BDM). Продукт умеет интегрировать большие данные из разных источников, перемещать их между разными системами, обеспечивает к ним лёгкий доступ, позволяет профилировать их и многое другое.
В умелых руках BDM способен творить чудеса: задачи будут выполняться быстро и с минимальными вычислительными ресурсами.


Тоже так хотите? Научитесь использовать функцию pushdown в BDM для распределения вычислительной нагрузки между разными платформами. Технология pushdown позволяет превратить маппинг в скрипт и выбрать среду, в которой этот скрипт запустится. Возможность такого выбора позволяет комбинировать сильные стороны разных платформ и достигать их максимальной производительности.


Для настройки среды исполнения скрипта нужно выбрать тип pushdown. Скрипт может быть полностью запущен на Hadoop или частично распределен между источником и приемником. Есть 4 возможных типа pushdown. Маппинг можно не превращать в скрипт (native). Маппинг можно исполнить максимально на источнике (source) или полностью на источнике (full). Также маппинг можно превратить в скрипт Hadoop (none).

Читать дальше →

Золотые ворота: как реплицировать терабайт в час, или Опыт использования CDC на GoldenGate в ВТБ

Reading time6 min
Views18K
Анализировать данные в реальном времени можно разными способами. В ВТБ мы используем технологию Change Data Capture (CDC), реализованную в инструменте Golden Gate Oracle: для нас очень важна скорость, при этом хотелось бы уменьшить объем передаваемых данных и снизить нагрузку на источник. И хотя основная сфера применения этого инструмента — репликации из Oracle и MS SQL, за несколько лет работы с CDC у нас накопилось несколько интересных кейсов, наподобие миграции данных между платформами или разными типами СУБД. Под катом мы поделимся нашим опытом работы с Golden Gate.


Читать дальше →

Vue.js для сомневающихся. Все, что нужно знать

Reading time8 min
Views358K


В данной статье речь пойдет о замечательном фронтенд фреймворке Vue.js. Как вы видите, статья называется «Vue.js для сомневающихся», и, если вы до сих пор не могли решиться попробовать Vue.js на практике, то надеюсь, что после прочтения вы все-таки на это решитесь.
Читать дальше →
Когда мы с МТС готовили опрос, нам хотелось узнать, насколько глубоко использование Big Data проникло в российские IT. В результате однозначного ответа нам получить не удалось: мнения сторонников и противников применения этой технологии поделились примерно поровну. Что ж, тем интереснее было анализировать ваши ответы. Под катом мы рассказываем, что в больших данных хорошо, а что можно сделать ещё лучше.
Читать дальше

Поиск решения для быстрого создания интерфейсов СУБД

Reading time7 min
Views47K

Практически каждый человек сталкивается с ведением какого-либо учета, сбором и анализом данных: от использования таблиц в экселе до работы с данными в клиент-банковском приложении. Повсеместно для такого учета используются различные системы управления базами данных (СУБД).


В статье я хотел бы рассказать о своем пути поиска такой системы.

Читать дальше →

Мониторинг места в хранилищах

Reading time8 min
Views5K

Всем привет Хабровчане!!

Одной из проблем хранилищ данных, которая часто возникает в процессе работы - это постоянное увеличение их размеров. А добавление все новых и новых источников данных только ускоряет заполнение места на дисках.

Да, конечно же настройка чистки самых больших таблицы и периода историцируемости позволяет сократить неконтролируемое увеличение места. Но если речь идет о хранилищах, которые бодро наполняются и добавляются всё новые "большие" таблицы, и количество их увеличивается то вопрос места в DWH всегда становится ребром....

Читать далее

Information

Rating
Does not participate
Location
Ростов-на-Дону, Ростовская обл., Россия
Date of birth
Registered
Activity