• Производительность и рантаймы на конференции JPoint 2018

      Все мы имеем какие-то ожидания от конференций. Обычно мы идём на вполне конкретную группу докладов, вполне конкретной тематики. Набор тем отличается от платформы к платформе. Вот что сейчас интересует джавистов:


      • Производительность
      • Виртуальные машины и особенности рантаймов
      • JDK 9/10/...
      • Фреймворки
      • Архитектура
      • Enterprise
      • Большие данные и машинное обучение
      • Базы данных
      • JVM-языки (включая Kotlin)
      • DevOps
      • Разные мелкие темы

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


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


      Масштабирование, кластеры и всё такое рассматривать тут не будем, достаточно сказать, что оно есть (Christopher Batey из Lightbend расскажет про Akka, Виктор Гамов из Confluent расскажет про Kafka, и так далее).


      Читать дальше →
      • +31
      • 4,4k
      • 6
    • Сравнение аналитических in-memory баз данных

        В последние два месяца лета в управлении хранилищ данных (Data Warehouse, DWH) Тинькофф Банка появилась новая тема для кухонных споров.

        Всё это время мы проводили масштабное тестирование нескольких in-memory СУБД. Любой разговор с администраторами DWH в это время можно было начать с фразы «Ну как, кто лидирует?», и не прогадать. В ответ люди получали длинную и очень эмоциональную тираду о сложностях тестирования, премудростях общения с доселе неизвестными вендорами и недостатках отдельных испытуемых.

        Подробности, результаты и некое подобие выводов из тестирования — под катом.
        Читать дальше →
      • Обсуждение инструментов аналитики для работы с большими данными в Питере 14 сентября



          14 сентября в 19:00 мы встретимся в офисе компании Wrike, чтобы обсудить инструменты аналитики и работу с большими данными. Главное внимание мы уделим успешным практикам и инструментам, разберем конкретные кейсы, поговорим о построении системы аналитики в компании, попробуем дать конкретные советы и рекомендации. Эксперты с удовольствием ответят на ваши вопросы.
          О программе и докладах
        • Как понять нужно ли интегрировать blockchain в ваш продукт?

          • Перевод
          imageBlockchain технологии в данный момент являются слишком раздутыми. О нем пишут и говорят все: от конференций Sibos и Money20/20 до популярных материалов в изданиях The Economist и Euromoney – кажется, что каждый стремится ухватить свою долю в золотой блокчейн-лихорадке.

          Как определить, что у вас реальный случай применения технологии блокчейн? Мы в Web-payment.ru много пишем о технологии распределенного реестра, и по роду деятельности нашего Digital агентства, ориентированного на финтех компании, замечаем, что поднятый вопрос очень актуальный для многих игроков рынка. Эта статья, опубликованная в блоге открытой платформы для создания своих блокчейнов MultiChain, призвана помочь разобраться в этом.

          Читать дальше →
        • Web Scraping с помощью python

            Введение


            Недавно заглянув на КиноПоиск, я обнаружила, что за долгие годы успела оставить более 1000 оценок и подумала, что было бы интересно поисследовать эти данные подробнее: менялись ли мои вкусы в кино с течением времени? есть ли годовая/недельная сезонность в активности? коррелируют ли мои оценки с рейтингом КиноПоиска, IMDb или кинокритиков?
            Но прежде чем анализировать и строить красивые графики, нужно получить данные. К сожалению, многие сервисы (и КиноПоиск не исключение) не имеют публичного API, так что, приходится засучить рукава и парсить html-страницы. Именно о том, как скачать и распарсить web-cайт, я и хочу рассказать в этой статье.
            В первую очередь статья предназначена для тех, кто всегда хотел разобраться с Web Scrapping, но не доходили руки или не знал с чего начать.

            Off-topic: к слову, Новый Кинопоиск под капотом использует запросы, которые возвращают данные об оценках в виде JSON, так что, задача могла быть решена и другим путем.
            Читать дальше →
          • А вы уже читаете блог о рациональности lesswrong.com?

              Пару месяцев назад я наткнулся на потрясающий блог о рациональности: lesswrong.com

              Основной его автор — Eliezer Yudkowsky, учёный, занимающийся Искуственным Интеллектом, сооснователь Machine Intelligence Research Institute. Именно он написал один из важнейших разделов блога, так называемые Core sequences — серию блогозаписей, рассказывающую о том, как научиться мыслить рационально.

              Блог покрывает множество важных тем, начиная с истории науки и Байесовского вывода и заканчивая квантовой механикой и когнитивной психологией.
              Читать дальше →
            • Знакомство с библиотекой libevent на примере создания простейшего Web-сервера картинок

                В данной статье я покажу как используя библиотеку libevent, написать простейший Web-сервер, который будет по запросу клиентов выдавать файлы jpeg картинок.

                Библиотека libevent предоставляет программистам доступ к кроссплатформенному асинхронному сетевому API. На основе данной библиотеки можно создавать высокопроизводительные сетевые приложения. Например, libevent используется в таких известных приложениях как Memcached (распределённая система кэширования) и TOR (распределённая анонимная сеть).

                Читать дальше →
              • Много книг, хороших и разных

                  Мой список книг, которые мне хочется прочесть, изрядно вырос, спасибо топику “запасаемся на зиму”. Под катом вы обнаружите список книг, составленный по комментариям в том топике.
                  Читать дальше →
                  • +109
                  • 55,1k
                  • 88
                • Дайджест статей по анализу данных №3 (09.06.2014 —22.06.2014)


                    Добрый день, уважаемые читатели.
                    Пролетели 2 недели и пришло время нашей подборки материалов по анализу данных. Сегодняшний дайджест получился большим, и признаюсь често сам осилил не все, что в него попало. Но так как на вкус и цвет товарище нет, то я решил выложить всю подборку.
                    Итак, из сегодняшней подборки вы узнаете о том как использовать хранилища данных различных типов в одном проекте, посмотрите какими большими данными может обладать бизнес и как их анализ может ему помочь. Также в нашей подборке будет статья посвященная алгоритму FTCA, а также будет материал про сравнени различных алгоритмов машинного обучения.
                    Читать дальше →
                    • +42
                    • 19,1k
                    • 2
                  • Django tips & tricks

                      Приветствую!

                      В этом посте — небольшие советы по работе с Django, которые могут пригодиться начинающим разработчикам. Как я хотел бы знать это в начале моего пути освоения Django!..
                      Рассматривать эти советы следует с долей критицизма. Буду рад, если вы найдёте неточности / лучшее решение, или предложите свои «фишки» для django, которых нет в документации.

                      Итак, начнём издалека, а уж потом перейдём к деталям.

                      Читать дальше →
                    • IPv6 в Cisco или будущее уже рядом (Часть 2)

                        Публикую продолжение вот этой статьи.

                        Статические маршруты

                        Таблица маршрутизации протокола IPv6 по умолчанию содержит не только непосредственно подключённые сетки, но также и локальные адреса. Кроме того, в ней присутствует маршрут на групповые адреса.

                        R1#show ipv6 routing
                        IPv6 Routing Table - Default - 3 entries
                        Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
                               HA - Home Agent, MR - Mobile Router, R - RIP, I1 - ISIS L1
                               I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP
                               EX - EIGRP external
                        C   2001:DB8::/64 [0/0]
                             via GigabitEthernet0/0, directly connected
                        L   2001:DB8::1/128 [0/0]
                             via GigabitEthernet0/0, receive
                        L   FF00::/8 [0/0]
                             via Null0, receive
                        


                        Привычным способом задаются статические маршруты в IPv6. Единственное, что хотелось бы отметить, что при использовании link-local адресов кроме самого адреса следующего перехода необходимо указать и интерфейс.
                        Читать дальше →
                        • +14
                        • 18,3k
                        • 7
                      • Введение в D3

                        • Tutorial

                        D3.js (или просто D3) это JavaScript-библиотека для обработки и визуализации данных. Она предоставляет удобные утилиты для обработки и загрузки массивов данных и создания DOM-элементов. Эта заметка описывает работу с основными методами библиотеки, она подойдёт для изучения основ библиотеки и погружения в её логику и возможности.

                        Для понимания статьи пригодятся знания JS, HTML и CSS.

                        Читать дальше →
                        • +55
                        • 121k
                        • 7
                      • «ZeroMQ».Глава 2: Знакомство с сокетами

                        • Перевод
                        • Tutorial
                        Всем привет!
                        Продолжаю вольный перевод книги «ZeroMQ.Use ZeroMQ and learn how to apply different message patterns». Заранее прошу прощения, что так долго не публиковал продолжение, но как говорится: «Лень вперед нас родилась...». Ну что же, лирику в сторону, продолжим.

                        Содержание


                        После того, как мы рассмотрели основные структуры ZeroMQ в предыдущей главе, в этой мы рассмотрим сокеты, а именно:
                        • паттерн клиент-сервер(publish-subscribe)
                        • паттерн pipeline

                        Читать дальше →
                        • +19
                        • 20,7k
                        • 4
                      • Samba4 в роли AD + файловый сервер

                        • Tutorial
                            В этой статье я рассмотрю по шагам подготовку к использованию Samba4 в роли контроллера домена вкупе с дополнительным файловым сервером так же на базе Samba4. Что в итоге мы получим? Два настроенных сервера с samba4, первый в роли domain controller, второй в роли member server с файлами пользователей. Функционирования этой связки я добивался около месяца, за сим, не поделится конечным рецептом просто не имею права…



                            Немного предыстории: в компании используется файловый сервер на базе samba3.6 с LDAP Backend, который содержит список всех пользователей и групп с правами доступа. Права доступа на каталоги выставляются с помощью xattr_acl (Extended file attributes), в LDAP хранится список пользователей с соответствием группам доступа. Собственно требуется переехать с этой инфраструктуры на samba4…
                        Читать дальше →
                      • Движок на MySQL за 5 минут

                        Начиная с версии 5.1 в MySQL реализована поддержка динамически подключаемых плагинов. А дистрибутив содержит примерный скелет кода под названием – example. Он описывает интерфейс и структуру базового обработчика – handler, копия которого создается отдельно для каждого соединения с БД. Также ему передаётся указатель на дескриптор таблицы TABLE *table и вспомогательный вектор TABLE_SHARE *share, используемый для синхронизации с другими обработчиками. Разработку плагина можно осуществлять по модульному принципу, реализуя только необходимые функции в первую очередь и закрывая заглушками более сложные операции.
                        Поскольку шаблон example описывает только интерфейс и не выполняет никаких операций, то в этом примере мы добавим в него реализацию CRUD-операций на основе одно-связного списка.
                        Читать дальше →
                      • Настройка маленького кластера Hadoop 2.2.0 с нуля



                        В данной статье будет по шагам разобран процесс создания небольшого кластера Hadoop для опытов.

                        Несмотря на то, что в интернете на иностранных ресурсах есть полно материала про настройку/развертывание Hadoop, большинство из них либо описывают настройку ранних версий (0.X.X и 1.X.X), либо описывают только настройку в режиме single mode/pseudo distributed mode и лишь частично fully distributed mode. На русском языке материала практически нет вовсе.

                        Когда мне самому понадобился Hadoop, то я далеко не с первого раза смог все настроить. Материал был неактуален, часто попадались конфиги, которые используют deprecated параметры, поэтому использовать их нежелательно. А даже когда все настроил, то задавался многими вопросами, на которые искал ответы. Также встречались похожие вопросы у других людей.

                        Всем кому интересно, прошу пожаловать по кат.
                        Подробности
                      • Список бесплатных DNS-сервисов

                          Обновляю 4-летний список бесплатных сервисов для управления доменами

                          Primary + Secondary
                          Сервис Кол-во NS Кол-во доменов Типы записей TTL Доп. фичи
                          pdd.yandex.ru 2 50 AAAA и SRV + Есть API
                          cloudflare.com 2 неограниченное AAAA, SRV, SPF, LOC +
                          2ns.info 4 неограниченное AAAA и SRV + Есть экспорт. Показывает регистратора, дату регистрации домена, дату окончания регистрации, тИЦ. By leonid239
                          dns.he.net 5 50 все + NS доступны по IPv6. Свой DDNS-сервис
                          www.netbreeze.net/dns 3 1 AAAA и SRV + Есть API
                          entrydns.net 3 неограниченное AAAA и SRV + Есть свой DDNS-сервис, REST-api
                          Читать дальше →
                        • Анализ производительности блочных устройств с blktrace

                            blktrace

                            Операции ввода-вывода, как известно, принадлежат к числу критических ресурсов с точки зрения производительности в современных linux-системах. Выявление и анализ «узких мест» производительности в Linux-системах — дело достаточно сложное. Обычно для этой цели используются специализированные утилиты. В числе наиболее известных инструментов анализа производительности следует в первую очередь назвать утилиты, входящие в пакет sysstat (iostat, sar и т.п.). Однако в некоторых ситуациях информации получаемой с помощью этих утилит, бывает недостаточно. Например, с помощью iostat нельзя узнать, какой именно процесс совершает ту или иную операцию. Между тем такая информация бывает необходимой при решении некоторых специфических задач: например, для поиска и анализа «узких мест» в системах хранения данных.

                            Известный разработчик ядра Linux Йенс Аксбо в 2007 году создал blktrace — специальную утилиту, осуществляющую трассировку операций ввода-вывода и предоставляющую пользователю подробную информацию о них. В этой статье мы хотели бы подробно рассказать о возможностях blktrace.
                            Читать дальше →
                            • +22
                            • 8,1k
                            • 5
                          • Hadoop, часть 1: развертывание кластера

                              hadoop

                              Непрерывный рост данных и увеличение скорости их генерации порождают проблему их обработки и хранения. Неудивительно, что тема «больших данных» (Big Data) является одной из самых обсуждаемых в современном ИТ-сообществе.

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

                              Одним из самых известных и обсуждаемых проектов в области распределенных вычислений является Hadoop — разрабатываемый фондом Apache Software Foundation свободно распространяемый набор из утилит, библиотек и фреймворк для разработки и выполнения программ распределенных вычислений.

                              Мы уже давно используем Hadoop для решения собственных практических задач. Результаты нашей работы в этой области стоят того, чтобы рассказать о них широкой публике. Эта статья — первая в цикле о Hadoop. Сегодня мы расскажем об истории и структуре проекта Hadoop, а также покажем на примере дистрибутива Hadoop Cloudera, как осуществляется развертывание и настройка кластера.

                              Осторожно, под катом много трафика.
                              Читать дальше →
                            • Настройка Vim для работы с Python и Django



                                Vim — уникальный по своей гибкости редактор, который при должной настройке может едва ли не идеально удовлетворять все пожелания работающего с ним. Правда эта настройка может продолжаться месяцы, а то и годы, что является и достоинством, и недостатком vim’а. Существует множество статей и туториалов по использованию Vim для разработки на Python и Django, надеюсь мне удастся рассказать что-то новое. В своей статье я постараюсь по минимуму упоминать плагины общего назначения, вроде NERDTree или surround.vim и опишу несколько более специализированных расширений и настроек, которые существенно упростили процесс работы на Python.
                                Читать дальше →