Pull to refresh
32
0
svetasmirnova @svetasmirnova

User

Send message

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

Reading time9 min
Views12K

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

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

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

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

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

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

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

Reading time6 min
Views33K

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


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


image
Читать дальше →
Total votes 46: ↑45 and ↓1+44
Comments143

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

Reading time4 min
Views7.6K


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

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

Reading time13 min
Views14K


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


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


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

Database as Code? Что за дичь?
Total votes 22: ↑22 and ↓0+22
Comments16

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

Reading time5 min
Views41K
Сальвадор Дали, Дезинтеграция постоянства памяти. 1952—1954. Холст, масло.

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

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

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

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

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


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


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

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

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

Reading time9 min
Views90K


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

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

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

Reading time5 min
Views103K


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

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

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

Reading time8 min
Views133K
В интернете полным-полно создателей контента, и каждый хочет привлечь к себе внимание. Но, как ни странно, хороший учебный ресурс найти нелегко, а бесплатный – еще сложнее. Мы публикуем перевод материала, в котором автор собрал ссылки на самые авторитетные и полезные обучающие площадки.


Читать дальше →
Total votes 32: ↑31 and ↓1+30
Comments7

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

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

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



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

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

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

Reading time4 min
Views20K

Привет всем!


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

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


Подробнее о целях и содержании курса
Total votes 27: ↑25 and ↓2+23
Comments13

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

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

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


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

Читать дальше →
Total votes 25: ↑18 and ↓7+11
Comments16

Data Science Skills

Reading time6 min
Views60K


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

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

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

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

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

Читать дальше →
Total votes 47: ↑44 and ↓3+41
Comments46

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

Reading time4 min
Views3.5K


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

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

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

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


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

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

Reading time6 min
Views47K


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

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

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

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



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

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

Reading time2 min
Views8.9K


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

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

Reading time7 min
Views101K


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

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

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

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

Information

Rating
Does not participate
Date of birth
Registered
Activity