Как стать автором
Обновить
32
0
svetasmirnova @svetasmirnova

Пользователь

Отправить сообщение

Заметки Дата Сайентиста: персональный обзор языков запросов к данным

Время на прочтение9 мин
Количество просмотров12K

Рассказываю из личного опыта, что где и когда пригодилось. Обзорно и тезисно, чтобы понятно было, что и куда можно копать дальше — но тут у меня исключительно субъективный личный опыт, у вас, может быть, все совсем по-другому.

Почему важно знать и уметь обращаться с языками запросов? По своей сути в Data Science есть несколько важнейших этапов работы и самый первый и важнейший (без него уж точно ничего работать не будет!) — это получение или извлечение данных. Чаще всего данные в каком-то виде где-то сидят и их нужно оттуда «достать». 

Языки запросов как раз и позволяют эти самые данные извлечь! И сегодня я расскажу, о тех языках запросов, которые мне пригодились и расскажу-покажу, где и как именно — зачем оно нужно для изучения.

Всего будет три основных блока типов запросов к данным, которые мы разберем в данной статье:

  • «Стандартные» языки запросов — то, что обычно понимают, когда говорят о языке запросов, как, например, реляционная алгебра или SQL.
  • Скриптовые языки запросов: например, питоновские штучки pandas, numpy или shell scripting.
  • Языки запросов к графам знаний и графовым базам данных.

Все написанное здесь — это просто персональный опыт, что пригодилось, с описанием ситуаций и «зачем оно было нужно» — каждый может примерить, насколько подобные ситуации могут встретиться вам и попробовать подготовиться к ним заранее, разобравшись с этими языками до того, как придется их в (срочном порядке) применять на проекте или вообще попасть на проект, где они нужны.
Читать дальше →
Всего голосов 45: ↑42 и ↓3+39
Комментарии8

«Цифровое книгопечатание» или мой опыт в мобильной оцифровке книг

Время на прочтение6 мин
Количество просмотров33K

Любите ли вы книги так, как люблю их я...


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


image
Читать дальше →
Всего голосов 46: ↑45 и ↓1+44
Комментарии143

Подборка докладов по ядру Linux с Open Source Summit Europe 2018

Время на прочтение4 мин
Количество просмотров7.6K


На прошлой неделе в Эдинбурге (Шотландия) прошел европейский Open Source Summit 2018. Представляю вашему вниманию подборку интересных докладов по ядру Linux, на которых мне удалось поприсутствовать.
Всего голосов 27: ↑25 и ↓2+23
Комментарии2

Database as Сode. Копаем глубже

Время на прочтение13 мин
Количество просмотров14K


В IT-проектах код пишут все. Инженеры с помощью нескольких строк управляют Kubernetes кластерами, разгоняют облака Terraform'ом и ворочают тонны конфигураций на Ansible, Chef и Puppet. QA пишут понятные бизнесу тестовые сценарии на Spock и Cucumber. Аналитики свободно, часто лучше разработчиков, разговаривают на SQL. Проектная документация в форматах Markdown, AsciiDoc или LaTEX "компилируются" в нужный формат на билд-сервере. Ну а сами разработчики, эти укротители кода, владеют сразу россыпью языков на каждый жизненный случай — клиентский, серверный, скриптовый, функциональный и пр.


Код уже давно перестал быть загадочной тарабарщиной и теперь в том или ином виде доступен и понятен многим, даже премьер-министрам. И весь этот код участвует в стандартном жизненном цикле — находится под управлением VCS, подвергается code review, автоматизированному тестированию, CI, CD. Используются общие инструменты и подходы, метрики производительности и качества. А все вместе это носит гордое название — "Everything as code".


Однако мир БД традиционно стоит особняком вдалеке от этой феерии прогресса и технологий. Процесс разработки и сопровождения БД не меняется годами и продолжает вселять ужас и страх в разработчиков, администраторов и пользователей по всему миру. Но возможно ли представить БД в виде обычного кода? Приблизиться к основному процессу разработки, использовать общие инструменты и подходы? Об этом под катом.

Database as Code? Что за дичь?
Всего голосов 22: ↑22 и ↓0+22
Комментарии16

Что такое СУБД в оперативной памяти и как она эффективно сохраняет данные

Время на прочтение5 мин
Количество просмотров41K
Сальвадор Дали, Дезинтеграция постоянства памяти. 1952—1954. Холст, масло.

Всем привет. Кто-то из вас, возможно, уже знаком с СУБД для данных в оперативной памяти, но на всякий случай — по ссылке можно найти их общее описание. Если вкратце, такие СУБД хранят данные целиком в оперативной памяти. Что это означает? Каждый раз, отправляя запрос на поиск или обновление данных, вы обращаетесь только к оперативной памяти в обход жесткого диска — на нем никакие операции не производятся. И это хорошо, потому что оперативная память работает намного быстрее любого диска. Примером такой СУБД является Memcached.

Секундочку, скажете вы, а как же восстановить данные после перезагрузки или поломки машины с такой СУБД? Если на машине установлена СУБД для хранения данных только в оперативной памяти, о них можно забыть: при отключении питания данные бесследно исчезнут.

Можно ли объединить достоинства хранения данных в оперативной памяти с надежностью проверенных временем СУБД вроде MySQL или Postgres? Конечно! Повлияет ли это на производительность? Вы удивитесь, но нет!
Читать дальше →
Всего голосов 57: ↑53 и ↓4+49
Комментарии242

Онлайн курс по компьютерным сетям начального уровня

Время на прочтение2 мин
Количество просмотров96K
Сейчас онлайн-курсы не создает только ленивый. Я решил присоединиться к этому движению и перенести в онлайн вводный курс по компьютерным сетям, который читаю в университете. Видео курса есть на YouTube в открытом доступе.


Зачем нужен еще один курс?


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

Я решил сделать курс начального уровня, в котором кратко и ёмко рассказать об основных понятиях компьютерных сетей. Для этого мне пришлось убрать из курса много сложных технических деталей, которые не являются обязательными для понимания принципов работы сетей. В результате получился короткий видеокурс, который можно посмотреть за обозримое время (2-3 дня). А после того, как вы поняли основные принципы, в технических деталях можно разобраться самостоятельно по книжкам или материалам в интернет.
Всего голосов 45: ↑40 и ↓5+35
Комментарии33

Иван Григоров: «Для топовых багхантеров $25К в месяц — не проблема»

Время на прочтение9 мин
Количество просмотров90K


Программы поиска уязвимостей всегда привлекают немало внимания со стороны хакеров и специалистов по безопасности. Ведь это легальный способ неплохо зарабатывать одними только поисками багов (при условии, что есть хороший опыт и голова на плечах). На днях нам представилась возможность взять интервью у багхантера Ивана reactors08 Григорова. Он лидер нашей программы Bug Bounty и занимает 11-е место в общем рейтинге платформы HackerOne.

Как начать искать баги? Может ли это быть единственным источником дохода? В каких Bug Bounty участвовать? Сколько зарабатывают багхантеры? И почему поиском уязвимостей особенно выгодно заниматься в кризис? Ответы на эти и другие вопросы читайте в нашем интервью.
Читать дальше →
Всего голосов 69: ↑62 и ↓7+55
Комментарии22

Подборка: Более 70 источников по машинному обучению для начинающих

Время на прочтение5 мин
Количество просмотров103K


Индикатор кулачкового аналогового компьютера / Wiki

В нашем блоге мы уже рассказывали о разработке системы квантовой связи и о том, как из простых студентов готовят продвинутых программистов. Сегодня мы решили вернуться к теме машинного обучения и привести адаптированную (источник) подборку полезных материалов.
Читать дальше →
Всего голосов 35: ↑31 и ↓4+27
Комментарии16

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

Время на прочтение8 мин
Количество просмотров133K
В интернете полным-полно создателей контента, и каждый хочет привлечь к себе внимание. Но, как ни странно, хороший учебный ресурс найти нелегко, а бесплатный – еще сложнее. Мы публикуем перевод материала, в котором автор собрал ссылки на самые авторитетные и полезные обучающие площадки.


Читать дальше →
Всего голосов 32: ↑31 и ↓1+30
Комментарии7

Что такое современная лингвистика. Лекция в Яндексе

Время на прочтение21 мин
Количество просмотров24K
В лингвистике сосуществуют две традиции описания языка: одна из них, до сих пор продолжающая традицию шумеров и древних греков, описывает язык фрагментарно — отдельно фонетику и фонологию, отдельно морфологию, отдельно синтаксис и т. д. Другая, идущая с четвертого — пятого веков до н. э. от индийского монаха Панини, описывает язык как интегральное целое — описание фонетики, морфологии, синтаксиса, семантики строится в виде взаимно ориентированных правил, с помощью которых из элементарных языковых единиц строятся тексты.

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



Лектор Александр Николаевич Барулин — сотрудник Института языкознания РАН. Закончил отделение структурной и прикладной лингвистики филологического факультета МГУ им. М. В. Ломоносова. Учился в аспирантуре Института востоковедения АН СССР, защитил диссертацию на тему «Теоретические проблемы описания турецкой именной словоформы» (1984). Проработал в Институте востоковедения 12 лет. В 1991 году совместно с В. К. Финном и Д. Г. Лахути организовал факультет информатики РГГУ и возглавил созданное на этом факультете отделение теоретической и прикладной лингвистики. В 1992 по проекту Барулина был организован факультет теоретической и прикладной лингвистики — он стал деканом этого факультета, а также заведующим кафедрой теоретической и прикладной лингвистики.

Под катом — подробная расшифровка лекции.
Читать дальше →
Всего голосов 26: ↑25 и ↓1+24
Комментарии14

Курс «Hacking PostgreSQL» — уже скоро

Время на прочтение4 мин
Количество просмотров20K

Привет всем!


Сегодня я рада анонсировать курс “Hacking PostgreSQL” из 16 занятий, на которых мы вместе будем исследовать особенности архитектуры открытой СУБД и вносить изменения на уровне исходного кода. Курс будет проходить в Москве, на площадке компании Postgres Professional. Начало курса запланировано на февраль 2016 года. Лекции начнутся сразу после февральской конференции pgconf.ru и будут проходить один раз в неделю вечером. Видеозаписи и материалы лекций мы будем выкладывать по мере обработки.

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


Подробнее о целях и содержании курса
Всего голосов 27: ↑25 и ↓2+23
Комментарии13

Как вести секретную переписку. Часть 2

Время на прочтение2 мин
Количество просмотров55K
В нашем блоге мы часто рассказываем о собственных кейсах — пишем о том, как бизнес работает с IaaS. Помимо этого мы обращаемся и к западному опыту в профильной сфере.

Например, мы рассказывали:


Сегодня мы продолжим знакомство с руководством одного из авторов The Intercept, который привел детальный разбор того, как вести переписку с использованием методов шифрования.

Читать дальше →
Всего голосов 25: ↑18 и ↓7+11
Комментарии16

Data Science Skills

Время на прочтение6 мин
Количество просмотров60K


Продолжаем серию аналитических исследований востребованности навыков на рынке труда. В этот раз благодаря Павлу Сурменку sharky мы рассмотрим новую профессию – Data Scientist.

Последние года термин Data Science начал набирать популярность. Об этом много пишут, говорят на конференциях. Некоторые компании даже нанимают людей на должность со звучным названием Data Scientist. Что же такое Data Science? И кто такие Data Scientists?
Читать дальше →
Всего голосов 13: ↑12 и ↓1+11
Комментарии18

Онлайн курсы, взгляд преподавателя + зов разработчикам

Время на прочтение6 мин
Количество просмотров70K
imageВ данной статье я изложу свой взгляд на проведение онлайн курсов: какие есть игроки в Интернете, и чего, на мой взгляд, категорически не хватает в Рунете (Ау-у, разработчики!). В конце опрос.

Речь пойдёт об Learning Management Systems (LMS) для частных лиц. Модельные ситуации такие:
  • Преподаватель кружка для школьников средних классов по математике во Дворце Пионеров имеет несколько групп. Хочет организовать свой материал и как-то мотивировать детей что-то делать дома за компьютером.
  • Преподаватель ВУЗа вместе со своими студентами хочет сделать человеческий электронный конспект своих лекций. С нумерацией рисунков, оглавлением, формулами и подобными LaTex'овскими прибаутками.

Читать дальше →
Всего голосов 47: ↑44 и ↓3+41
Комментарии46

Микро-конференция UX-Среда №26: Дизайн-образование в России

Время на прочтение4 мин
Количество просмотров3.5K


30 сентября в офисе Mail.Ru Group прошла двадцать шестая микро-конференция UX-Среда, посвященная дизайн-образованию в России. Приглашенные гости, а также специалисты из разных подразделений компании выступили с серией презентаций о своем опыте работы и поучаствовали в его обсуждении. В этот раз у нас были Дмитрий Карпов (Британская Высшая Школа Дизайна), Лола Кристаллинская (Яндекс), Екатерина Ярмошевич и Алексей Полехин (Нетология), Jonathan Briggs (Hyper Island, в записи) и я от Mail.Ru Group. Модерировала дискуссию Таня Смирнова.
Читать дальше →
Всего голосов 13: ↑11 и ↓2+9
Комментарии0

Игра для математика. Устный счёт

Время на прочтение3 мин
Количество просмотров42K
Подумать только, живём мы в чудесную эпоху, изобрели вычислительные машины, забыли как пользоваться механическими счётами, у каждого второго в кармане сверхмощная ЭВМ, пару поколений уже выросло имея карманные калькуляторы, элементарные вычисления востребованы всё реже. Давно ли вам приходилось считать в уме? Ну, скажем, почему бы не сложить пару четырёх или пятизначных чисел делая покупки, потом дать кассиру деньги с точностью до копейки? Скажете, ерунда всё это, пустая трата времени. Кому пустая, кому не пустая. Я же считаю, что во-первых для поддержания функциональности мозга нужно периодически пользоваться этой замечательной функциональностью, а во-вторых искусство преуспевать в базовых навыках делает человека мастером.

Итак, приступим. Что может быть самым фундаментальным знанием для математика? Наверное, это то чему мы учим детей в первом классе или даже в детском саду, суммирование целых чисел. Итак, встречайте игру, которая тренирует производительность мозга в простейшей арифметике:


Та ну, тут же всё опирается в реакцию и слепой набор чисел
Читать дальше →
Всего голосов 38: ↑33 и ↓5+28
Комментарии28

Zotero: оптимизация хранения и использования научной литературы

Время на прочтение6 мин
Количество просмотров47K


Не буду распространяться о преимуществах использования библиографических менеджеров. На дворе 2015 год. Тема не раз обсуждалась на Хабре.

Здесь подробно описываются все прелести использования библиографического менеджера на примере Mendeley (это один из главных конкурентов Zotero, сравнение позже в этой статье). Здесь любопытно представлена система Citavi. Вроде бы, все в ней неплохо, но платить за софт приличные деньги, когда есть прекрасные бесплатные аналоги — развлечение на любителя. Кстати, от души рекомендую почитать комментарии к этой статье — познавательнее иных опусов. Здесь автор библиографического менеджера SciRef предлагает получить программку бесплатно.

Существует огромное множество различных библиографических менеджеров (см. таблицу в подвале, источник).

Сравнительная таблица библиографических менеджеров



Разумеется, при таком многообразии глупо говорить об одном идеальном решении. В этой статье я хочу рассказать вам о решении, которым пользуюсь и которое устраивает меня почти полностью. Как видно из названия статьи, это Zotero.
Читать дальше →
Всего голосов 9: ↑9 и ↓0+9
Комментарии6

Отчет с митапа #PostgreSQLRussia 3 ноября

Время на прочтение2 мин
Количество просмотров8.9K


3 ноября в нашем московском офисе прошла встреча сообщества #PostgreSQLRussia. В этот раз участники обсуждали нюансы перехода на PostgreSQL с других СУБД. В России вот уже несколько лет наблюдается тенденция к отказу от проприетарных СУБД. Некоторые крупные компании уже мигрировали или находятся в процессе миграции на PostgreSQL. Их опыт интересен не только с точки зрения самого процесса миграции. Крупные проекты, которые перешли на Postgres, могут поделиться новым уникальным опытом, что, безусловно, полезно и тем, кто использует Postgres давно. Смотрите наш отчет с конференции под катом.
Читать дальше →
Всего голосов 25: ↑22 и ↓3+19
Комментарии3

Возможности PostgreSQL, которых нет в MySQL, и наоборот

Время на прочтение7 мин
Количество просмотров101K


Многие боятся переходить с «мускуля» на «посгрес» из-за того, что лишь смутно понимают, что это даст. Некоторых останавливает мысль, что наверно Postgres — это слишком сложная база и требует обучения. А также, что возможно чего-то придется лишиться в связи с переходом. Попробую немного прояснить ситуацию.
Читать дальше →
Всего голосов 141: ↑132 и ↓9+123
Комментарии313

Как работает реляционная БД

Время на прочтение51 мин
Количество просмотров534K
Реляционные базы данных (РБД) используются повсюду. Они бывают самых разных видов, от маленьких и полезных SQLite до мощных Teradata. Но в то же время существует очень немного статей, объясняющих принцип действия и устройство реляционных баз данных. Да и те, что есть — довольно поверхностные, без особых подробностей. Зато по более «модным» направлениям (большие данные, NoSQL или JS) написано гораздо больше статей, причём куда более глубоких. Вероятно, такая ситуация сложилась из-за того, что реляционные БД — вещь «старая» и слишком скучная, чтобы разбирать её вне университетских программ, исследовательских работ и книг.

На самом деле, мало кто действительно понимает, как работают реляционные БД. А многие разработчики очень не любят, когда они чего-то не понимают. Если реляционные БД используют порядка 40 лет, значит тому есть причина. РБД — штука очень интересная, поскольку в ее основе лежат полезные и широко используемые понятия. Если вы хотели бы разобраться в том, как работают РБД, то эта статья для вас.
Читать дальше →
Всего голосов 232: ↑229 и ↓3+226
Комментарии134
1
23 ...

Информация

В рейтинге
Не участвует
Дата рождения
Зарегистрирована
Активность