Pull to refresh
162
-11

java / open source

Send message

Спасибо за совет! Не просто только с заголовком...

Задач которые можно решить похожим способом много! Можно использовать векторную базу для поиска домов которые похожи по инфраструктуре на указанный в запросе.

Куркино судя по карте также находится дальше чем в 2км от входа в метрополитен.

Думаю, да. Но не уверен ) Что потенциально это интересно - уверен.

Попробую, если что народ потом найдет.

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

Что прямо сейчас - не знаю.

Я вот сомневаюсь только, что слишком нишево...

@gatoazulмне пока от PostgreSQL некогда отвлекаться на специализированные решения. Опять же все зависит от задач, которые решает Milvus и что там не получится реализовать. Но может кто-нибудь из data science откликнится на комментарий и сравнит решения от разных вендоров.

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

Знаком с людьми из QuestDB и из ClickHouse и изучал исходники этих проектов. Но такая работа единичная на рынке, а желающих обычно стоит очередь.

Есть что почитать про ваш графовую реализацию?

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

@Igor_Leкак думаешь тема pgvector будет интересна сообществу, если развивать её?

Однако в Java пока нет стабильного способа читать данные произвольного
размера напрямую из памяти, поэтому эта реализация использует несколько
ByteBuffer-ов.

Года 3 назад удобно работал в Java программе с непрерывным регионом памяти на сотни гигабайт через VirtualMemory обертку из QuestDb. mmap и никаких ByteBuffer.

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

А на практике я видел легаси на Struts2 framework, Coherence кластеры связанные в спагети из его процессоров и несколько проектов реинжениринга которые умерли раньше системы которую пытались модернизировать, видел код состоящий из всех возможных паттернов, очень хорошо покрытый тестами всех возможных в компании перед банкротством, слышал в лифте разговор интервьюверов которые не понимали зачем они задают вопросы про последний стандарт C++, надувают щеки перед кандидатом и собеседуют в много этапов и с алгоритмами как в гугл, если их легаси система собирается только под 32разрядную x86.

И не разу не видел чтобы кто-то реализовывал с нуля в проекте свою сортировку или графовый алгоритм эффективнее чем он есть в доступных библиотеках.

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

Если вы в этом уверены, то можете обновить данные в OpenStreetMap для дома.

Аэропорт - район, где много ВУЗов. В остальном ничего примечательного.

Вы недооцениваете район Аэропорт

улица Усиевича 27 к1 - вся инфраструктура из статьи есть в окрестностях и totalscore=125.43

В окрестностях 2км пешком:

  • 51 детсада (kindergarten)

  • 30 школ (school)

  • 4 коледжа(college)

  • 11 университет (university)

  • 3 языковые школы (language_school)

  • 2 музыкальных школы (music_school)

  • 11 секций (training)

  • sports_centre=4 спортивных центра

  • 7 дома творчества/общественных заведений (community_centre)

  • 224 игровых площадки (playground)

  • 19 поликлиник (clinic)

Целевая аудитория этого дома вряд ли читает Хабр.

osmworld=# create table building_with_and_date as select building_id,building_type,start_date from duckdb_building group by 1,2,3;
SELECT 41084
Time: 8158,811 ms (00:08,159)
osmworld=# select count(*) from building_with_and_date where start_date<=1940;
 count 
-------
   206
(1 row)

Итого в базе 206 домов старше 1940 года постройки (из 30тыс. в этой статье) и распределение для них по годам выглядит так:
select start_date,count(*) from building_with_and_date where start_date<=1940 group by 1 order by 1;
start_date | count 
------------+-------
        197 |     1
       1670 |     1
       1756 |     1
       1773 |     1
       1800 |     1
       1810 |     1
       1812 |     1
       1818 |     2
       1825 |     1
       1827 |     1
       1833 |     2
       1840 |     2
       1846 |     1
       1850 |     2
       1860 |     4
       1869 |     1
       1870 |     1
       1871 |     1
       1875 |     2
       1880 |     6
       1885 |     1
       1887 |     1
       1890 |     5
       1898 |     1
       1899 |     1
       1900 |     6
       1902 |     1
       1903 |     2
       1904 |     3
       1905 |     4
       1906 |     3
       1907 |     2
       1908 |     4
       1909 |     3
       1910 |     4
       1911 |     2
       1912 |     6
       1914 |     7
       1915 |     3
       1917 |    12
       1925 |     3
       1926 |     2
       1927 |     7
       1928 |    19
       1929 |     5
       1930 |     4
       1931 |     6
       1932 |     4
       1933 |     2
       1934 |     5
       1935 |    13
       1936 |    13
       1937 |     5
       1938 |     6
       1939 |     4
       1940 |     4
(56 rows)

в случае до революционного здания пишут 1914. 1940 - если довоенный.

По этим данным не вижу чтобы ваше предположение соответствовало действительности.

Конечно, но только для тех кто предпочитает жить в доме построенном до 1940 года.

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

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

будут подгоняться для прохождения формльных требований (даже вопреки здравому смыслу)

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

будет куча репортов о мнимых ложноположительных срабатываниях фильтра

И студент уйдет на очередное чтение документации, пока не разберется сам. Если не разберется чтобы пройти формальный фильтр - значит считается что задание не выполнял и материал не читал.

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

Помню я автономные агенты и утопию семантической паутины из 2005 от Тим Бернерс-Ли. Папа веб мечтал о светлом будущем Интернет, а оно не выгодно капиталистам.

Information

Rating
Does not participate
Location
Россия
Registered
Activity