Существуют значительные преимущества в использовании тикер-установки для передачи данных в RDB, а не в отдельном процессе определения цены.Это позволяет другим подписчикам получать данные о ставках, если ваши настройки изменятся в будущем, и тикерная установка создаст журналы, которые будут сохранять и воспроизводить данные в случае сбоя RDB.
Использование синхронных запросов к RDB будет работать, поскольку это только внутридневные данные, но если вы храните огромные объемы данных в день, вы можете заметить, что RDB временно блокируется при выполнении вашего запроса.Альтернативой может быть использование асинхронных запросов, таким образом он не блокируется на дескрипторе, так как ожидает возврата результата.
Если данные передаются на тикерплан, тогда внутри него должна быть определена схема, которая будетзатем читайте в свой RDB, чтобы схема была там же.Если вы используете таблицу с ключами в качестве записи, то в качестве первого столбца после того, как столбец с ключами ожидается, что тикерплан будет представлять собой временной столбец, произойдет сбой.В типичной настройке kdb + tick функция .u.upd
использует 16=type first first x;
, который проверяет столбец после ключевого столбца, если запись является таблицей с ключами, то происходит сбой, когда она достигает (enlist(count first x)#a),x
в той же функции.Чтобы обойти это, вам нужно будет изменить функцию обновления, чтобы включить проверку «type first x = 99h».Таким образом, он может ответвляться и обрабатывать загрузку соответствующим образом для ваших данных.