?

Log in

No account? Create an account

...

или внеочередные заметки


Using plantuner for debugging indexes in PostgreSQL
trekking, Himalaya
obartunov
Many years ago we developed Plantuner to facilitate the process of debugging indexes - we wanted to specify which index out of bunch of them to use. The trick is to hide all indexes and uncover for optimizer the specific one.

Read more...Collapse )

Free json datasets
trekking, Himalaya
obartunov
This is a technical post about json[b] datasets I used in presentations (http://www.sai.msu.su/~megera/postgres/talks/). We will make them available in http://sqlfiddle.postgrespro.ru/#!21/,
which one can use to play with our SQL/JSON (SQL-2016 standard) implementation in PostgreSQL.

Read more...Collapse )

ICU в постгресе
trekking, Himalaya
obartunov
Решил проверить, как работает ICU в постгресе под маком и линуксом. В частности, меня интересовала возможность использования abbreviated keys, которую включили в 10-ке как раз вместе с поддержкой ICU. Если кратко, то CREATE INDEX под MAC OS X High Sierra для текста с кириллицей ускорился в 23 раза, а под Linux всего 1.4. Для английского текста под маком ускорение было около 10 раз.

Read more...Collapse )

collprovider показывает источник локали - 'c' - libc, 'i' - icu.

Замечание 2: Пост Гейгана про то, что можно сделать с ICU - https://goo.gl/Y4KsWe

Вывод такой, что основной выигрыш от использования ICU - это стабильная локаль. Хорошо бы кто-нибудь прогнал скрипт под Windows.
Tags: ,

Про конкуренцию и Оракл
trekking, Himalaya
obartunov
Оракл как СУБД является хорошей базой и многие постгресисты пришли из Оракла, но как компания Оракл мне не нравится, во-первых, потому что в 1988 году Эллисон заявил в интервью журналу по базам данных Datamation, "что Oracle в Россию доставят ракеты с ядерными боеголовками", во-вторых, потому что в 2015 году они разослали подметное письмо своим крупным клиентам с наездами на нашу компанию и постгрес. Есть у айтишного сообщества много других претензий к Ораклу, но лично мне кажется, что одного первого пункта уже достаточно, чтобы мне не любить компанию Оракл.

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



Read more...Collapse )
Tags: , ,

Fixed ! Bug in indexing scalars with jsquery
trekking, Himalaya
obartunov
Nikita Glukhov recently identified and fixed a bug in jsquery (https://github.com/postgrespro/jsquery). Indexing of scalars was broken, please upgrade jsquery !

The bug could be demonstrated in this example (query returns different results for seqscan and when using index):


create table test(js jsonb);
insert into test values ('1');
select count(*) from test where js @@ '$ = 1';
 count
-------
     1
(1 row)

create index test_path_value_idx on test using gin(js jsonb_path_value_ops);
CREATE INDEX
set enable_seqscan = off;
SET
select count(*) from test where js @@ '$ = 1';
 count
-------
     0
(1 row)

explain select count(*) from test where js @@ '$ = 1';
                                       QUERY PLAN
----------------------------------------------------------------------------------------
 Aggregate  (cost=12.02..12.03 rows=1 width=8)
   ->  Bitmap Heap Scan on test  (cost=8.00..12.01 rows=1 width=0)
         Recheck Cond: (js @@ '$ = 1'::jsquery)
         ->  Bitmap Index Scan on test_path_value_idx  (cost=0.00..8.00 rows=1 width=0)
               Index Cond: (js @@ '$ = 1'::jsquery)
(5 rows)

Новый словарь русского языка для полнотекстового поиска в PostgreSQL
trekking, Himalaya
obartunov
Костя Книжник (Postgres Professional) "подружил" морфологию Коваленко с полнотекстовым поиском в постгресе - https://github.com/postgrespro/rusmorph.

Если кратко, то rusmorph можно использовать для полнотекстового поиска.

Read more...Collapse )
Tags: ,

Slides "NoSQL Postgres"
trekking, Himalaya
obartunov
Slides (full version) of talk "NoSQL Postgres" I presented at Stachka conference are available - http://www.sai.msu.su/~megera/postgres/talks/jsonb-stachka-2017-full.pdf



Slides covers the following topics:
1. SQL/JSON
2. Jsonb compression
3. Full text search for json[b] data
4. YCSB benchmark (one node) for PostgreSQL, MongoDB and MySQL
Tags: , ,

Приятная беседа в Иннополисе
trekking, Himalaya
obartunov
На прошлой неделе в четверг (6 апреля 2017) я слетал на один день в Иннополис, чтобы поговорить со студентами Иннополиса про постгрес, нашу компанию и опенсорс, и убедить их попробовать поработать с нами (слайды). Кроме меня перед студентами выступали еще несколько компаний, вот так проходила так называемая ярмарка компаний.



Сразу скажу, что мне поездка понравилась, несмотря на небольшой джет-лаг после возвращения с PGConf.US, я сумел донести студентам свои мысли, что они сами подтвердили во время экспресс-собеседования после выступления. Я думал про двух-трех возможных кандидатов на разработчика ядра субд, а уехал с примерно двадцатью резюме, из которых пять студентов уже отписались. Мы всеръез рассматриваем возможность открытия центра разработки в Иннополисе, но одним из сдерживающих факторов является отсутствие руководителя этого центра. Пока мы решаем эту и другие формальные задачи, студенты должны закончить обсуждение, а потом мы их вызовем в Москву на собеседование, по результатам которого мы будем оформлять их на работу стажерами. Однако, уже сейчас они могут выбрать себе задачу "на подумать" и на собеседовании говорить уже о результатах. Список задач есть в моей презентации, там же я привел и список ресурсов, которые помогут ребятам войти в проблему.

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

[Я вспомнил атмосферу главного здания МГУ, где мы, студенты-аспиранты и молодые сотрудники жили в замкнутой среде кампуса, где было все необходимое для занятий наукой, спортом, можно было ходить в кино, театр, где можно было встретить студента в тапочках и спортивных трусах, который шел в бассейн, и высокую японскую делегацию.]
Tags: ,

Список ресурсов для начинающих разработчиков PostgreSQL
trekking, Himalaya
obartunov
Update:

Оставить "след" в постгресе
https://obartunov.livejournal.com/201282.html


Самое главное - молодой человек имеет право на ошибку, не надо бояться пробовать себя !
На самом деле, разработка ядра постгреса занимает небольшую долю от всей активности в сообществе. Если вы хотите:
* Быть причастным к большому проекту, большому сообществу
* Реализовать себя как разработчиком
* Влияние на развитие проекта
* Быть независимым от компании, заработать репутацию в сообществе
* Иметь возможность жить и работать в удобном месте, например, у себя на родине
* Испытывать удовлетворение — help the World !
, то всегда можно найти себе занятие по возможности и быть полезным сообществу.

На картинке внизу вместо постгреса можно написать любой другой опенсорсный проект.



Ну а внизу рецепт для разработчиков постгреса:


Очень непричесанный список ресурсов для тех, кто решил разрабатывать PostgreSQL на C. Надеюсь, что когда-нибудь дойдут руки ( или кто поможет ) довести его до приличного вида.


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


Read more...Collapse )

SQL/JSON in PostgreSQL is online now
trekking, Himalaya
obartunov
It is possible to play with future SQL/JSON features:

1. Web interface to Postgres 10 + SQL/JSON - http://sqlfiddle.postgrespro.ru/#!21/
2. SQL to play with - https://github.com/postgrespro/sqljson/blob/sqljson/src/test/regress/expected/sql_json.out
3. You may compile sql/json branch yourself - https://github.com/postgrespro/sqljson/

Also, we are working on SQL/JSON primer and need your help ! Please, let me know (obartunov@postgrespro.ru), if you want to help us writing the primer.
Tags: , ,