SQL и базы данных: основы (индексы, ключи, нормализация), примеры SQL запросов, работа с таблицами CREATE, DROP, EDIT; использование SELECT (join, distinct, enlosed, like, sum, etc); балансировка/масштабирование (шардирование, репликация), TMDB (time series database)

  • http://sqlfiddle.com/ – очень удобный сайт по экспериментам с SQL (запросы, создание страниц и проч.)
  • https://dbfiddle.uk/Gx3c6fmQ – аналогично, с примером
основные инструменты SQL/NoSQL; big data; analytics
    • хранение
      • mysql/oracle/postres (более в почете сейчас последний, в том числе для bigdata в виде greenplum и TSDB в виде TimescaleDB)
      • OpenTSDB (Time Series Database)
      • redis
      • s3
      • elk – часто используется для логов
      • clickhouse
      • log stash
    • визуализация
      • Kibana
    • поиск по данным
      • ElasticSearch
Отдельные статьи
Time series database

В основном на основе статьи из habr

A time series database (TSDB) is a software system that is optimized for storing and serving time series through associated pairs of time(s) and value(s).
  Читать дальше

Linux: работа с утилитой grep (egrep, zgrep, rgrep, etc)

  • У особо душных зачастую вызывает недоумение – зачем открывать через cat файл, который потом передается в grep. Отвечаю – часто ты открываешь сначала файл чтобы посмотреть в целом что там есть, а уже после первого просмотра передаешь в grep. У многих такой паттерн вошел в привычку – вот пример обучения по Linux LPIC-1 🙂 препод максимально опытный админстратор Linux (с начала 90х)

У grep 1001 alias, вот список из man.  Читать дальше

Coding: Ruby

RUBY: установка
  • Методы установки Ruby
    • mise – самая современная альтернатива, причем поддерживает множество языков (как asdf, но еще лучше по ряду аспектов)
    • RBENV – стандарт для новых проектов Ruby
    • RVM (https://get.rvm.io) – в основном рекомендуется для Legacy проектов Ruby 
через rbenv
apt update
apt install -y git curl build-essential libssl-dev \
libreadline-dev zlib1g-dev libyaml-dev libffi-dev

git clone https://github.com/rbenv/rbenv.git
  Читать дальше

Основы VCS на примере Git, patch/diff

  • https://git-scm.com/ – тут крутые entry видео, документация и прочее
  • с помощью ChatGPT Deep Research можно изучить любой GitHub проект
  • (GitHub, coding best practices) Google держит миллиарды строк кода в одном репозитории
    Google хранит весь код в монорепозитории Piper: около 2 млрд строк и 86 ТБ истории.
  Читать дальше

Системы тест кейсов/управления тестами: Allure TestOps, Zephyr Scale, TestRail (TMS)

  • МТС юзает Allure TestOps для автоматизации функциональных сценариев, API и здесь же автоматизация методик нагрузочного
  • Мвидео и сбер юзают Zyphir Scale (плагин для jira), интегрируется с jenkins, запускаются автотесты с очтетами
  • Мвидео где-то юзает и TestRail
  • Кто-то хвалит Test IT (импортозамещение)
  • Те кто построил изначально разработку на продуктах MS используют azure devops/tfs
zephyr scale

A scalable, performant test management solution inside Jira with advanced test planning, reporting, and reusability features

allure testops

Хорошая система тест кейсов (как функциональные, так и нагрузочные) с отчетами, которая легко интегрируется

    • в CI (gitlab, jenkins, tfs/azure, etc)
    • в код

 

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

Linux: обновление приложений, ОС и драйверов в UBUNTU/Debian, установка системы

  • Аналог статьи про CentOS
  • Debian 10 в web VM: https://webvm.io/
  • (ubuntu/debian, OS loading) В ubuntu есть lifepatching, который позволяет обновить ядро и systemd без перезагрузки как системы, так и сервисов!
  • (Centos, Ubuntu) PackageKit — открытый и свободный набор приложений для обеспечения высокоуровнего интерфейса для различных пакетных менеджеров.
  Читать дальше

Linux: работа с текстом (fmt, sed, awk, tr, cut, cat/tac, tee, column, uniq, sort, paste)

GREP в отдельной статье

fmt
  • примеры есть в cheat.sh
  • вариаций форматирования много

Форматирование данных на входе – к примеру по умолчанию fmt осуществит форматирование, которое приведет к лучшему чтению:

    • объединение слов в одну строку если слов мало в каждой строке
    • или наоборот, вместо одной длиной строки сделает несколько коротких
root@serv:~# cat >sw
Hello
world
and
not
world
root@serv:~# fmt sw
Hello world and not world

root@spr:~# cat >sw
Hello world and not world Hello world and not world Hello world and not world Hello world and not world Hello world and not world Hello world and not world
root@spr:~# fmt sw
Hello world and not world Hello world and not 
world Hello world and not world Hello world 
and not world Hello world and not world 
Hello world and not world


paste

paste with delimiter (paste с отличным от default delimiter):

paste -d ';' load.csv
  Читать дальше

Wireless/Radio (Wi-Fi, WiFi, Satellite), WiMax, мощность радио сигнала (дБ, RSSI), низкие и высокие частоты

  • (Wifi, IoT, security) Изоляция умной техники дома (защита от взлома хостов домашней сети с уязвимого устройства умного дома) возможна на роутере без отдельного ssid через функционал Изоляция Wi-Fi сети по SSID. По сути функционал реализует private vlan для Wi-Fi и ping перестали ходить между хостами в сети после настройки на роутере ZTE.
  Читать дальше

Отрисовка и построение сетевых топологий

Ручная 

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

Network/Linux: Shaping, Policing, Impairment, Traffic Control. Ограничение полосы пропускания (Linux: tc, wondershaper; Network: Cisco, Mellanox), внесение задержек и потерь в сетевой трафик

Влияние потери и задержек на Throughput подробно описано в отдельной статье.

Пример кейсов использования impairment:

    • эмуляция гео-распределенной сети
    • эмуляция wireless/satellite/mobile
    • приближение к real world
    • тестирование edge case сценариев

При этом в сетевом тестировании с impairment нужно обращаться “аккуратно”.

EANTC Carsten Rossenhoevel
The benchmarking methodology could be complemented with synthetic loss/delay, but this is out of scope of this draft ((netsecopen)). 
  Читать дальше