Как стать автором
Обновить
43
Карма
0
Рейтинг

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

NULL-значения в PostgreSQL: правила и исключения

Время прочтения 8 мин
Просмотры 12K
Блог компании Postgres Professional PostgreSQL *SQL *

Навскидку многим кажется, что они знакомы с поведением NULL-значений в PostgreSQL, однако иногда неопределённые значения преподносят сюрпризы. Предлагаем вашему вниманию расшифровку доклада Алексея Борщева с PGConf.Russia 2022 — он был полностью посвящён особенностям NULL-значений в Postgres.

NULL простыми словами

Что такое SQL база данных? Согласно одному из определений, это просто набор взаимосвязанных таблиц. А что такое NULL? Обратимся к простому бытовому примеру: все мы задаём друг другу дежурный вопрос: «Как дела?». Часто мы получаем в ответ: «Да ничего...» Вот это «ничего» нам и нужно положить в базу данных — NULL, неопределённое, некорректное или неизвестное значение.

Читать далее
Всего голосов 35: ↑34 и ↓1 +33
Комментарии 22

Чем PostgreSQL лучше других SQL баз данных с открытым исходным кодом. Часть 1

Время прочтения 8 мин
Просмотры 267K
Разработка веб-сайтов *MySQL *PostgreSQL *SQL *
Перевод
Сегодня давайте поговорим о преимуществах Postgres перед другими системами с открытым кодом. Эту тему мы обязательно раскроем более подробно на PG Day'16 Russia, до которой осталось всего два месяца.

Возможно, вы спрашиваете себя: «Почему PostgreSQL?» Ведь есть и другие варианты реляционных баз данных с открытым исходным кодом (в рамках этой статьи мы рассматривали MySQL, MariaDB и Firebird), так что же Постгрес может предложить такого, чего нет у них? В слогане PostgreSQL заявляется, что это «Самая продвинутая база данных с открытым исходным кодом в мире». Мы приведем несколько причин, почему Постгрес делает такие заявления.

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


Читать дальше →
Всего голосов 55: ↑46 и ↓9 +37
Комментарии 86

Чем PostgreSQL лучше других SQL баз данных с открытым исходным кодом. Часть 2

Время прочтения 10 мин
Просмотры 62K
Разработка веб-сайтов *MySQL *PostgreSQL *SQL *
Перевод
Друзья, представляем вашему вниманию вторую часть перевода «Чем PostgreSQL лучше?». Надеемся, она вызовет такое же горячее обсуждение в комментариях, как и первая часть. А также с радостью продолжим с вами дискуссию лично на PG Day'16 Russia, до которой осталось совсем немного!

В слогане PostgreSQL заявляется, что это «Самая продвинутая база данных с открытым исходным кодом в мире». В первой части этой серии мы рассмотрели хранение данных — модель, структуры, типы и ограничения по размеру, — чтобы дать вам несколько причин, почему Постгрес подтверждает свои слова делом. Во второй части мы поговорим о манипуляциях с данными и поиске, включая индексирование, виртуальных таблицах и возможностях запросов. В этой серии мы выясняем, что выгодно отличает PostgreSQL от других баз данных с открытым исходным кодом, а именно — от MySQL, MariaDB и Firebird.


Читать дальше →
Всего голосов 49: ↑47 и ↓2 +45
Комментарии 32

Путешествие запроса Select через внутренности Постгреса

Время прочтения 9 мин
Просмотры 27K
Разработка веб-сайтов *MySQL *PostgreSQL *SQL *
Перевод
До конференции PG Day'16 Russia остались считанные дни, расписание можно посмотреть на нашем сайте. Мы трудимся в поте лица, но тем не менее успеваем готовить для вас переводы самых интересных материалов о PostgreSQL. Сегодня представляем вашему вниманию перевод статьи Pat Shaughnessy о поведении запроса Select.

Готовясь летом к этой презентации, я решил изучить некоторые части исходного кода PostgreSQL на C. Я запустил очень простой запрос select и наблюдал, что Постгрес с ним делает, с помощью LLDB, отладчика C. Как Постгрес понял мой запрос? Как он нашел данные, которые я искал?



Этот пост — неформальный журнал моего путешествия через внутренности PostgreSQL. Я опишу пройденный мной путь и то, что я видел в процессе. Я использую серию простых концептуальных диаграмм, чтобы объяснить, как Постгрес выполнил мой запрос. В случае, если вы понимаете C, я также оставлю вам несколько ориентиров и указателей, которые вы можете поискать, если вдруг решите покопаться во внутренностях Постгреса.

Исходный код PostgreSQL восхитил меня. Он оказался чистым, хорошо задокументированным и простым для понимания. Узнайте сами, как Постгрес работает изнутри, присоединившись ко мне в путешествии в глубины инструмента, которым вы пользуетесь каждый день.
Читать дальше →
Всего голосов 34: ↑33 и ↓1 +32
Комментарии 24

Информатика за индексами в Постгресе

Время прочтения 9 мин
Просмотры 18K
MySQL *PostgreSQL *SQL *Разработка для интернета вещей *
Туториал
Перевод
Друзья, PG Day'16 Russia успешно завершилась, мы перевели дух и уже думаем над тем, как сделать грядущие мероприятия еще более интересными и полезными для вас. Продолжаем публиковать интересные, на наш взгляд, материалы о Постгресе и общаться с вами в комментариях. Сегодня представляем перевод статьи Pat Shaughnessy о том, что из себя представляют индексы в PostgreSQL.

Все мы знаем, что индексы — одна из самых мощных и важных функций серверов реляционных баз данных. Как быстро найти значение? Создать индекс. Что нужно не забыть сделать при объединении двух таблиц? Создать индекс. Как ускорить SQL запрос, который начал медленно работать? Создать индекс.


Но что такое эти индексы? И как они ускоряют поиск по базе данных? Чтобы выяснить это, я решил прочитать исходный код сервера базы данных PostgreSQL на C и проследить за тем, как он ищет индекс для простого текстового значения. Я ожидал найти сложные алгоритмы и эффективные структуры данных. И я их нашёл. Сегодня я покажу вам, как выглядят индексы внутри Постгреса, и объясню, как они работают.

Что я не ожидал найти — что я впервые обнаружил, читая исходный код Постгреса — так это теорию информатики в основе того, что он делает. Чтение исходного кода Постгреса превратилось в возвращение в школу и изучение того предмета, на который у меня никогда не хватало времени в молодости. Комментарии на C внутри Постгреса объясняют не только, что он делает, но и почему.
Читать дальше →
Всего голосов 56: ↑55 и ↓1 +54
Комментарии 18

Эволюция отказоустойчивости в PostgreSQL

Время прочтения 5 мин
Просмотры 11K
Разработка веб-сайтов *MySQL *PostgreSQL *SQL *
Туториал
Перевод
Мы активно готовимся к PG Day'17, расширяем тематику конференции, поэтому в скором времени вас ждет большое количество интереснейших постов не только о PostgreSQL, но и о других широко используемых базах данных. Сегодня хотим предложить вашему вниманию перевод статьи Gulcin Yildirim, которая послужила основой для ее доклада на PG Conf Europe'16.

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



PostgreSQL — это потрясающий проект, который развивается с удивительной скоростью. В этой серии постов мы сосредоточимся на эволюции возможностей отказоустойчивости в PostgreSQL на протяжении всех его версий.
Читать дальше →
Всего голосов 16: ↑12 и ↓4 +8
Комментарии 23

Как заставить PostgreSQL считать быстрее

Время прочтения 15 мин
Просмотры 20K
Блог компании Southbridge Администрирование баз данных *
Туториал
Перевод

Источник фотографии


Все умеют считать, но не все умеют считать быстро. В этой статье мы подробно рассмотрим методы оптимизации count в PostgreSQL. Существуют приемы, которые могут позволить ускорить подсчет количества строк на порядки.


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


  • требуется ли точное количество строк или оценочного значения будет достаточно;
  • следует ли учитывать дубликаты или интересуют только уникальные значения;
  • нужно ли посчитать все строки таблицы или необходимо выбрать только удовлетворяющие определенному условию.

Мы проанализируем решения для каждой конкретной ситуации, а также сравним их скорость и потребление ресурсов. Разобрав ситуацию с централизованной БД, мы воспользуемся Citus, чтобы продемонстрировать параллельное выполнение count в распределенной базе данных.

Читать дальше →
Всего голосов 29: ↑28 и ↓1 +27
Комментарии 5

React.js: собираем с нуля изоморфное / универсальное приложение. Часть 1: собираем стек

Время прочтения 22 мин
Просмотры 193K
JavaScript *Node.JS *ReactJS *
Туториал
Из песочницы
image

Лицо моей жены, когда она вычитывала эту статью


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


Я хочу с нуля реализовать, пожалуй, наиболее востребованный сценарий: у нас есть серверная часть, которая предоставляет REST API. Часть его методов требует, чтобы пользователь веб-приложения был авторизован.

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

Объясняя необъяснимое

Время прочтения 11 мин
Просмотры 52K
Разработка веб-сайтов *PostgreSQL *SQL *
Перевод
Друзья, мы с радостью продолжаем публикацию интересных материалов, посвященных самым разнообразным аспектам работы с PostgreSQL. Сегодняшний перевод открывает целую серию статей за авторством Hubert Lubaczewski, которые наверняка заинтересуют широкий круг читателей.



Одна из первых вещей, которую слышит новоиспеченный администратор баз данных – «используй EXPLAIN». И при первой же попытке он сталкивается c непостижимым:

                                                        QUERY PLAN
---------------------------------------------------------------------------------------------------------------------------
 Sort  (cost=146.63..148.65 rows=808 width=138) (actual time=55.009..55.012 rows=71 loops=1)
   Sort Key: n.nspname, p.proname, (pg_get_function_arguments(p.oid))
   Sort Method: quicksort  Memory: 43kB
   ->  Hash Join  (cost=1.14..107.61 rows=808 width=138) (actual time=42.495..54.854 rows=71 loops=1)
         Hash Cond: (p.pronamespace = n.oid)
         ->  Seq Scan on pg_proc p  (cost=0.00..89.30 rows=808 width=78) (actual time=0.052..53.465 rows=2402 loops=1)
               Filter: pg_function_is_visible(oid)
         ->  Hash  (cost=1.09..1.09 rows=4 width=68) (actual time=0.011..0.011 rows=4 loops=1)
               Buckets: 1024  Batches: 1  Memory Usage: 1kB
               ->  Seq Scan on pg_namespace n  (cost=0.00..1.09 rows=4 width=68) (actual time=0.005..0.007 rows=4 loops=1)
                     Filter: ((nspname <> 'pg_catalog'::name) AND (nspname <> 'information_schema'::name))

Что бы это могло значить?
Читать дальше →
Всего голосов 33: ↑31 и ↓2 +29
Комментарии 23

Как получить Blue Card или вид на жительство в Германии и сколько это стоит

Время прочтения 4 мин
Просмотры 11K
Блог компании itRabota Учебный процесс в IT Образование за рубежом
Поскольку вопрос получения разрешения на работу всегда очень важен, мне удалось по знакомству выйти на немецкую фирму, которая оказывает услуги релокации специалистам, приезжающим на работу в Германию. Предлагаю вашему вниманию следующую информацию включая примерные сроки и тарифы, Сроки и тарифы примерные, потому что как правило все случаи индивидуальны и очень часто окончательное решение за должностным лицом, которое рассматривает заявление.
Читать дальше →
Всего голосов 12: ↑8 и ↓4 +4
Комментарии 16

50+ лучших дополнений к Bootstrap

Время прочтения 5 мин
Просмотры 201K
Блог компании DataArt Разработка веб-сайтов *CSS *JavaScript *HTML *


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

Для статьи я подобрал наиболее полезные дополнения «на все случаи жизни».
Читать дальше →
Всего голосов 123: ↑111 и ↓12 +99
Комментарии 25

Краткая история бессмертия

Время прочтения 13 мин
Просмотры 83K
Научная фантастика
image

Физика не стоит на месте. В последнем эксперименте на Большом адронном коллайдере лептоны были подвергнуты интенсивной бомбардировке флуктуирующими протонами. В результате зафиксирован обрыв глюонной струны, сопровождаемый двойным излучением ранее неизвестного типа. Ученые затрудняются его идентифицировать.
Читать дальше →
Всего голосов 341: ↑216 и ↓125 +91
Комментарии 111

Размеры экранов

Время прочтения 2 мин
Просмотры 531K
Смартфоны Планшеты
Туториал
Планшеты и смартфоны оснащаются экранами с разными соотношениями сторон и разной плотностью пикселей, однако эти параметры редко указываются в технических характеристиках.

Попробуем разобраться со всеми хитростями, связанными с этими параметрами. Начнём с планшетов.
Вот соотношение размеров экранов, использующихся в большинстве современных планшетов.



Обратите внимание, насколько экран 8" с соотношением сторон 4:3 визуально больше широкого экрана 7". А широкий экран 10.1" на сантиметр меньше экрана 9.7" по высоте.

Я свёл в таблицу параметры экранов, чаще всего использующихся в планшетах.



Текст на экранах с низким PPI (количеством точек на дюйм) читается не комфортно. Я бы не стал покупать планшет с экраном, имеющим PPI ниже 150. Даже 164 PPI экрана iPad mini многим кажутся недостаточными. Отлично воспринимаются экраны с PPI больше 200.

Для меня было большим открытием, что экран 9.7" 1024x768 имеет даже меньшее PPI, чем экран 7" 800x480.

Читать дальше →
Всего голосов 157: ↑147 и ↓10 +137
Комментарии 69

Haier привезет бюджетные смартфоны в Россию

Время прочтения 2 мин
Просмотры 49K
Чулан
Компания Haier, известная на рынке России своими холодильниками (прославившаяся тем, что директор в эпоху становления бренда заставил рабочих разбить целую партию бракованных холодильников, вычтя эти деньги из их зарплаты), а старожилы могут помнить и обычные недорогие мобильники этой компании в начале 2000-х — решила вернуться в Россию со смартфонами. Бюджетного сегмента. С демпингующими расценками.

image

Старт продаж 5 смартфонов, имеющих «заводские» наименования Haier HW-W801, G20, V6M, One X и V11 запланирован уже на конец 2012 года. Самый дорогой, с экраном 4.5" 1280х720, будет стоить 8000 рублей, а самые бюджетные модели за 4000р будут далеко не с QVGA-экранами, как это принято сегодня.

Под катом — фотки и перечень основных характеристик каждого из смартфонов.

Читать дальше →
Всего голосов 44: ↑40 и ↓4 +36
Комментарии 34

Утекла информация о необычной камере от Sony

Время прочтения 1 мин
Просмотры 44K
Фототехника
В сети обнаружился снимок новой камеры от Sony — Sony RX-1. Утверждают, что камера будет оснащаться полноразмерной матрицей, имея при этом довольно компактные размеры.

image

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

29-дюймовый монитор от LG

Время прочтения 1 мин
Просмотры 23K
Мониторы и ТВ
В январе в продажу поступит вот такая вот штуковина от LG:


Монитор EA93

29 дюймов
2560*1080
21:9
IPS
Угол обзора: 178°
2 встроенных динамика

Порты
DVI, DisplayPort, HDMI
2хMHL
3хUSB 3.0
Выход на гарнитуру

Есть функция разделения экрана с автоматическим изменением размера уже открытых окон при изменении одного из них.



В принципе, EA93 вполне может заменить 2 монитора, для тех, кто привык работать в таком ритме. Можно смотреть видео с разрешением 2560*1080.

Точная цена этой модели пока неизвестна, но продаваться она начнет одновременно с младшим братом — EA83, 27 дюймов.

EA83 можно будет купить за 800$.

via
Всего голосов 54: ↑53 и ↓1 +52
Комментарии 87

Стив Джобс как тест Роршаха

Время прочтения 7 мин
Просмотры 19K
IT-компании


В 1997 году, вскоре после возвращения в Apple на должность гендиректора, Стив Джобс решил, что транспортная компания доставляет им компоненты недостаточно быстро. Перевозчик в ответ заявил, что не может доставлять быстрее, да и не должен: зафиксированные в договоре сроки соблюдались. Джобс велел разорвать контракт. И добавил, что если попробуют судиться, то никогда больше не получат ни цента.
Читать дальше →
Всего голосов 194: ↑131 и ↓63 +68
Комментарии 98

«Киев-20» — флагман украинской фототехники

Время прочтения 3 мин
Просмотры 19K
Фототехника
Из песочницы
image

Итак, в этой статье речь пойдет пленочном фотоаппарате Киев-20, также мы немного погрузимся в историю его создания, и конечно, куда без описания и техничских характеристик.
Читать дальше →
Всего голосов 62: ↑49 и ↓13 +36
Комментарии 97

Карманный роутер Sapido RB-1632

Время прочтения 2 мин
Просмотры 29K
Компьютерное железо


Не могу не поделиться восторгом от недавно купленного устройства.

Роутер, несмотря на свои размеры, имеет множество функций. Помимо стандартных Ethernet -> Wi-Fi, может выступать wifi-клиентом, имеет USB-хост для подключения модема и смартфонов, может одновременно создавать несколько Wi-Fi сетей с разными настройками и прочее. Питается при помощи USB либо от адаптера.
Читать дальше →
Всего голосов 91: ↑82 и ↓9 +73
Комментарии 45

Виджет комментариев вконтакте для вашего сайта и хранение количества комментариев на сервере

Время прочтения 3 мин
Просмотры 32K
Социальные сети и сообщества
Из песочницы
Двигаясь в ногу со временем, я решил разместить на своем сайте виджет комментариев «Вконтакте». Немного терпения, гугла и документации вполне достаточно для того чтобы достичь результата. Разместить сам виджет не составляет никакого труда, вконтакте предоставляет простой интерфейс генерирующий код для сайта. Мне хотелось в некоторых местах отображать количество комментариев. Тут и возникли сложности, как обычно это бывает, дьявол кроется в мелочах. Я попробую разложить по полочкам то, о чём умалчивает документация.
Читать дальше →
Всего голосов 10: ↑6 и ↓4 +2
Комментарии 6

Информация

В рейтинге
Не участвует
Откуда
Минск, Минская обл., Беларусь
Зарегистрирован
Активность