• Работа с геоданными?

    @DDwrt100 Автор вопроса
    Правильно ли я понял?
    1) для работы с геометрией нам необходимо специальное расширение базы данных данных.
    Это расширение содержит в себе методы для работы с геометрией?
    2) К базе данных нам необходимо добавить еще одну базу данных, которая содержит координаты области(пусть будет планеты)
    3) В случае если у меня просто числовые колонки широты и долготы , то мне необходимо их конвертировать в специальную яйчейку, которую назовем гео. А если у меня нет специального поля гео в базе данных, то мне нужно как то посчитать в нужный формат эти два столбца ?
  • Почему подключение к базе данных не работает на Windows?

    @DDwrt100 Автор вопроса
    MaxLich, субд стоят на отдельной машине. там ничего не менялось.
  • Почему при объявлении переменной, в любом языке программирования, резервируется весь размер памяти отведённый под тип данных?

    @DDwrt100
    ZakkMalin, может как то он внутри и оптимизирует, хотя если следовать базисам не должен.
    Тема обширная и можно долго разбирать как там все внутри считается.
    Что стоит понимать процессор это автомат, он не может принимать в себя все что угодно, различной длины.
    Он принимает строго стандиртизированные наборы данных(блоков), а дальше происходит магия абстракции.
    В текущей архитектуре вычислительной техники это построено так(ну там еще математика приплетена).
    И на данном уровне , любая гибкость типа переменных(читай блоков данных), это накладные расходы вычислителной мощности.
  • Почему при объявлении переменной, в любом языке программирования, резервируется весь размер памяти отведённый под тип данных?

    @DDwrt100
    ZakkMalin, число 65535 не храниться в переменной. Компьютер оперирует не 10 системой , а двоичной.
    При этом Short это набор битов, которые могут закодировать это число. Выделяя переменную мы выделаем количество "затворов" которые могут принять 0 или 1, достаточнное чтобы закодировать максимальное число 65353. На базовом уровне компьютер оперирует не числами, если уж совсем быть честным, а блоками из этих этих затворов, которые проходя через абстракцию могут быть представлены как числа.
  • Почему подключение к базе данных не работает на Windows?

    @DDwrt100 Автор вопроса
    Да конечно,
    public class ConfigDB {
    
        @Bean
        @Primary
        @ConfigurationProperties("spring.pg.datasource")
        public DataSourceProperties firstDataSourceProperties() {
            return new DataSourceProperties();
        }
    
    
        @Bean
        @ConfigurationProperties("spring.ch.datasource")
        public DataSourceProperties secondDataSourceProperties() {
            return new DataSourceProperties();
        }
    
    
        @Bean(name = "PG")
        @Primary
        @ConfigurationProperties("spring.pg.datasource.configuration")
        public DataSource firstDataSource() {
            return firstDataSourceProperties()
                    .initializeDataSourceBuilder()
                    .type(HikariDataSource.class)
                    .build();
        }
    
    
        @Bean(name = "CH")
        @ConfigurationProperties("spring.ch.datasource.hikari")
        public DataSource secondDataSource() {
            return secondDataSourceProperties()
                    .initializeDataSourceBuilder()
                    .type(HikariDataSource.class)
                    .build();
        }


    ip, логины беруться из aplication.properties

    spring.pg.datasource.url=***
    spring.pg.datasource.username=***
    spring.pg.datasource.password=***
    
    spring.ch.datasource.url=jdbc:clickhouse:/**
    spring.ch.datasource.driverClassName=com.github.housepower.jdbc.ClickHouseDriver**
    spring.ch.datasource.hikari.connectionTimeout=30000
    spring.ch.datasource.hikari.idleTimeout=600000
    spring.ch.datasource.hikari.maxLifetime=18000
    spring.ch.datasource.hikari.connection-test-query=SELECT 1
    spring.ch.datasource.hikari.initialization-fail-timeout=30000
    spring.ch.datasource.hikari.login-timeout=30000


    Я замаскировал ip и пользователей звездами.
  • Почему подключение к базе данных не работает на Windows?

    @DDwrt100 Автор вопроса
    Это класс , который собственно делает запрос к базе данных.

    При изучении трейсов , понятно, что все валиться при попытке отправить запрос.

    Он поднимает новый пул Hikari и шаг с запросом обваливается.
    2019-07-22 11:50:51.886  WARN 7568 --- [nio-8080-exec-1] com.zaxxer.hikari.HikariConfig           : HikariPool-2 - maxLifetime is less than 30000ms, setting to default 1800000ms.
    2019-07-22 11:50:51.886  INFO 7568 --- [nio-8080-exec-1] com.zaxxer.hikari.HikariDataSource       : HikariPool-2 - Starting...
    2019-07-22 11:50:51.918  INFO 7568 --- [nio-8080-exec-1] com.zaxxer.hikari.HikariDataSource       : HikariPool-2 - Start completed.
    2019-07-22 11:50:52.596  WARN 7568 --- [nio-8080-exec-1] o.s.jdbc.support.SQLErrorCodesFactory    : Error while extracting database name - falling back to empty error codes


    Собственно классы ничего из себя особенного не представляют.
    Сервис и слой DAO.
    @Service
    
    public class ClickHouseService {
    
        private ClickHouseDAO clickHouseDAO;
    
        @Autowired
        public ClickHouseService(ClickHouseDAO clickHouseDAO) {
            this.clickHouseDAO = clickHouseDAO;
        }
    
        public List<ru.concerteza.sla.ch.model.DataRecord> giveall() {
            String query = "SELECT * FROM sla.Tests";
            List<ru.concerteza.sla.ch.model.DataRecord> dbquery;
            return clickHouseDAO.query(query);
    
        }
    }


    И сам уровень дао
    @Service
    public class ClickHouseDAO {
    
    
        private JdbcTemplate ch;
    
        @Autowired
        @Qualifier("CH")
        public void ClickHouseDAO1(DataSource dataSource) {
            this.ch = new JdbcTemplate(dataSource);
    
        }
    
    
        public List<DataRecord> query(String query) {
    
            List<DataRecord> answer = ch.query(query, DataRecord.Mapper.INSTANCE);
    
            return answer;
        }
    }


    Мне выносит мозг, что этот самый код, спокойно запускается на Linux машине и отрабатывает.
    на Windows машине я имею проблемы. И я не понимаю в чем фишка.
  • Как сделать в JPA запрос условия в List?

    @DDwrt100 Автор вопроса
    Исрапил Ахмедов, Я что то сделал, трейсы перестали вываливаться =) Только не понял что, спасибо большое за помощь.
  • Как сделать в JPA запрос условия в List?

    @DDwrt100 Автор вопроса
    нет не помогло
    Что еще добавить
    вот что он формирует where (qualityTasksComparisonid is null) and (mobileOperatorCode in (?)) в запросах.
    По крайней мере последняя часть. Вопрос в последней части должен быть ?

    шлю я Json запрос
    { "OperatotIds" : [3] }

    Ловлю класс
    @JsonAutoDetect
    public class CreateTask implements Serializable {
        @JsonProperty(" OperatorIds")
        private List<Long>OperatorIds;
    
        public CreateTask() {
        }
    
    
        public List<Long> getOperatorIds() {
            return OperatorIds;
        }
    
        public void setOperatorIds(List<Long> OperatorIds) {
            thisOperatorIds = OperatorIds;
        }
    }
  • Как сделать в JPA запрос условия в List?

    @DDwrt100 Автор вопроса
    @Query(value = "FROM Task WHERE (Tasksid = null) AND  Operator IN :OperatorIds")
        Set<Task> qualityTaskWIthoutCOmparsionId(@Param("OperatorIds") List<Long>  OperatorIds);
  • Как сделать в JPA запрос условия в List?

    @DDwrt100 Автор вопроса
    не помогло , та же самая ошибка.
  • Библиотеки для работы с геоданными для Java?

    @DDwrt100 Автор вопроса
    freeExec, я никак не считаю. Для меня это новая тема. Поэтому некоторые моменты не столь очевидны.
  • Библиотеки для работы с геоданными для Java?

    @DDwrt100 Автор вопроса
    Понятно, значит этот функционал надо опускать на уровень базы данных.

    Если вам не сложно, можете объяснить, с чем связано падение производительности при выносе такой логики на уровень Java?
  • Как работает эта строчка кода?

    @DDwrt100 Автор вопроса
    ок все понятно. Спасибо.
  • Библиотеки для работы с геоданными для Java?

    @DDwrt100 Автор вопроса
    Сергей Горностаев, Сергей, можно пожалуйста чуть чуть развернуть Ваш ответ.

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

    Никогда не имел дело с геоданными, как правильно с ними работать ?
  • Как работает эта строчка кода?

    @DDwrt100 Автор вопроса
    честно говоря сам метод похож на стандартный
    public <T> Serializable insert(T entity){
            Session session = sessionFactory.getCurrentSession();
            return session.save(entity);
        }
  • Как работает эта строчка кода?

    @DDwrt100 Автор вопроса
    Это числовое значение, откуда может браться ? Это какой то внутренний счетчик Hibernate ? или значение базы данных?
  • В чем основное различие между trank портом и access портом?? кроме tagged это понятно?

    @DDwrt100
    by_EL, В принципе коммутататоры можно связать acess линками. Но такая структура будет крайне не гибкой. собственно через один линк можно будет пропустить один Vlan. Иногда используется если надо быстро расширить портовую емкость какой то подсети в одном месте, но решение так себе.

    Основная разница trunk тегированный трафик, куча Vlan. Access нетегированый трафик один влан.

    Что еще добавить из таких глобальных отличий, затрудняюсь ответить.
  • Как положить в ArrayList несколько различных значений?

    @DDwrt100 Автор вопроса
    Frozen Coder, Понятно, спасибо большое за помощь. Пойду дальше крутить мельницы =)
  • Как положить в ArrayList несколько различных значений?

    @DDwrt100 Автор вопроса
    Frozen Coder, угу, после вчерашних разговоров, я пришел к такой конструкции.
    Только тут проблема возникает, что "100" у нас может быть несколько.
  • Как положить в ArrayList несколько различных значений?

    @DDwrt100 Автор вопроса
    Frozen Coder, Ответ на вопрос зачем. Мне надо реализовать сложную выборку из базы данных. И у меня не получается все собрать одним перебором(несколько вложенных циклов for грубо говоря). И мне нужна была структура данных, которая бы относительно уровня выборки могла хранить упорядоченные данные.
    В идее должно плучиться что то выбери все элементы из массива где String имеет значение 100, и добавь их в класс отображения результатов.

    Честно говоря сижу уже около недели по разному кручу циклы =) Мне уже сниться эта задача =)))