DolphinDB Release Notes
Бинарный файл Linux64 | Бинарный файл Windows64 |
Версия:
В запросе представлен список версий программного обеспечения DolphinDB с указанием даты выпуска. 1.00.16 Release date: 2020.04.14
Linux64 binary | Linux64 ABI=1 binary | Windows64 binary |
1.00.17 Release date: 2020.04.24
Linux64 binary | Linux64 ABI=1 binary | Windows64 binary |
1.00.18 Release date: 2020.05.23
Linux64 binary | Linux64 ABI=1 binary | Windows64 binary |
1.00.19 Release date: 2020.06.05
Linux64 binary | Linux64 ABI=1 binary | Windows64 binary |
1.00.20 Release date: 2020.06.15
Linux64 binary | Linux64 ABI=1 binary | Windows64 binary |
1.00.21 Release date: 2020.06.22
Linux64 binary | Linux64 ABI=1 binary | Windows64 binary |
1.00.22 Release date: 2020.07.02
Linux64 binary | Linux64 ABI=1 binary | Windows64 binary |
1.00.23 Release date: 2020.07.20
Linux64 binary | Linux64 ABI=1 binary | Windows64 binary |
New feature
Поддержка высокой доступности потоковой передачи на основе протокола Raft.
Новые функции:
dayOfYear, dayOfMonth, quarterOfYear, monthOfYear, weekOfYear, hourOfDay, minuteOfHour, secondOfMinute, weekday, yearBegin, yearEnd, businessYearBegin, businessYearEnd, monthBegin, monthEnd, semiMonthBegin, semiMonthEnd, businessMonthBegin, businessMonthEnd, quarterBegin, quarterEnd, quarterBusinessBegin, quarterBusinessEnd, week, lastWeekOfMonth, weekOfMonth
,isUpper, isLower, isTitle, isSpace, isAlpha, isNumeric, isDigit, isAlNum, isDecimal
,ewmMean, ewmStd, ewmVar, ewmCov, ewmCorr
,isMonotonic, isMonotonicIncreasing, isMonotonicDecreasing, quantile, quantileSeries
,nunique
вычисляет количество уникальных элементов в векторе,interpolate
,sql
в руководстве пользователя.getOS
, getOSBit
, parseExpr
и dayOfWeek
(1.00.1),cancelJob
и cancelConsoleJob
могут отменять задачи, которые нельзя разложить на подзадачи в циклах for (1.00.1),replay
добавляет параметр absoluteRate
, который поддерживает воспроизведение данных с указанной скоростью поступления данных. generation (1.00.4)Добавлена функция fill!
(1.00.5).
Добавлены математические функции: sinh
, cosh
, tanh
, asinh
, acosh
, atanh
, deg2rad
, rad2deg
(1.00.7).
Добавлена функция линейного программирования linprog
(1.00.7).
Добавлена функция hashBucket
для расчёта индекса раздела данных, предназначенных для записи, что удобно для параллельной записи (1.00.8).
Добавлена функция capacity
для получения вместимости вектора, то есть количества элементов, которое он может вместить, исходя из текущего распределения памяти (1.00.9).
Добавлен keyedTable
. Когда в добавленные данные есть такое же значение первичного ключа в keyedTable, они перезапишут данные с таким же первичным ключом (1.00.10).
Добавлено 3 новых параметра для функции linprog
: lb
, ub
и method
. lb
представляет нижнюю границу переменной; ub
представляет верхнюю границу переменной; method
представляет алгоритм оптимизации и в настоящее время поддерживает «simplex» и «interior-point» (1.00.11).
Улучшения:
scheduleJob
может вызывать функции, определённые в модулях DolphinDB.
Функции isMonotonic
и isMonotonicIncreasing
теперь возвращают true для слабо возрастающих векторов; функция isMonotonicDecreasing
теперь возвращает true для слабо убывающих векторов (1.00.2).
Помимо вектора и матрицы, функции nullFill!
, bfill!
, ffill!
и lfill!
могут принимать таблицы в памяти в качестве входного параметра и поддерживать замену значений NULL во всех столбцах всей таблицы (1.00.2).
Улучшен механизм агрегатора временных рядов для поддержки обработки данных, упорядоченных внутри каждой группы, но не во всей таблице (1.00.3).
Масштаб выравнивания окна механизма агрегатора временных рядов был расширен для поддержки минутного уровня (1.00.3).
Улучшены функции импорта текстовых файлов: loadText
, ploadText
, loadTextEx
, textChunkDS
и extractTextScheama
(1.00.6):
loadTextEx
. Импортированные данные обрабатываются, а затем добавляются в таблицу базы данных.Изменены функции sum3
и sum4
. При применении к матрице sum3
и sum4
вычисляют статистику каждой строки вместо всей матрицы (1.00.7).
Изменены функции percentile
и mpercentile
. Теперь они используют метод интерполяции, чтобы соответствовать Python pandas, вместо метода ближайшего ранга. Метод интерполяции имеет 5 вариантов: «linear», «lower», «higher», «midpoint» и «nearest» (1.00.7).
Повышена производительность параллельных операций (запроса и добавления) для общих таблиц в памяти (1.00.9).
Увеличена эффективность использования памяти вектором и матрицей (1.00.9).
Проверяется количество строк матрицы. Теперь нельзя создать матрицу с нулевыми строками (1.00.9).
Функция createTimeSeriesAggregator
теперь поддерживает 2 новых параметра: 'updateTime' и 'useWindowStartTime'. 'updateTime' может запускать вычисления через интервалы, более короткие, чем те, которые указаны параметром 'step'. 'useWindowStartTime' указывает, следует ли использовать время начала или время окончания скользящих окон в качестве временного столбца в выходной таблице (1.00.10).
Улучшена десериализация для операторов 'delete', удалив требование, чтобы предложение 'where' оператора 'delete' было объектом выражения (1.00.10).
Функция getSessionMemoryStat
теперь может выводить IP-адрес и номер порта клиента (1.00.10).
Улучшена функция loadText
. При импорте текстового файла только с заголовком строки и указанной схемой возвращается пустая таблица вместо выдачи исключения (1.00.11).
Улучшен агрегатор временных рядов для потоковых данных. Если в данных есть значения NULL, в... *Временной столбец или большие промежутки между двумя соседними временными метками не влияют на производительность. (1.00.11)
Улучшен алгоритм распознавания типов данных функции loadText. Избегается неправильное распознавание числовых типов как строковых или символьных типов из-за случайных вхождений символов, представляющих нулевые значения, таких как null, N / A и т. д. (1.00.13)
Улучшена функция isDuplicated, чтобы она могла принимать подмассив, который используется в разделённых или in-memory таблицах. (1.00.13)
Функция createPartitionedTable теперь может использовать потоковую таблицу или таблицу mvcc в качестве модели таблицы. (1.00.13)
Улучшено десериализация кода. То есть при десериализации кода, если он ссылается на общую таблицу, которая не существует, больше не генерируется исключение, а общая таблица получается путём вызова функции objByName, так что десериализацию можно продолжить. (1.00.13)
Можно получить пустой подмассив, указав одно и то же значение для начальной и конечной позиции подмассива в функции subarray. Например: subarray(x, 0:0). (1.00.15)
В функции subarray начальная или конечная позиция подмассива теперь может быть пустой. Для примеров: subarray(x, 2 :) или subarray(x,: 5). (1.00.15)
Параметр «input» функции iterate может содержать NULL значения. NULL значение рассматривается как 0 при расчёте. (1.00.15)
Повышена производительность функции iif. В большинстве случаев производительность может быть удвоена. (1.00.15)
Функция loadText поддерживает файлы с возвратом каретки ('\r') в качестве разрывов строк. (1.00.15)
При использовании пустой строки в качестве IP-адреса больше не возникает исключение, но возвращается пустой IP-адрес. (1.00.15)
Когда функции char, short, int, long, float и double анализируют строки, если входная строка пуста или не является числовым значением, возвращается нулевое значение соответствующего типа данных, а не 0. (1.00.15)
В процессе использования функции restore данные, если возникает ошибка, генерируется исключение. Ранее это только регистрировалось. (1.00.15)
Функция migrate добавляет поддержку восстановления всех баз данных и таблиц в папке резервных копий одновременно. (1.00.15)
Если последний символ параметра каталога базы данных функций dropDatabase и existsDatabase — это косая черта или обратная косая черта, он будет автоматически удалён. (1.00.15)
Если вход функции rank — пустой вектор, она возвращает пустой вектор вместо генерации исключения. (1.00.16)
Когда параметр 'forceDelete' функции dropPartition установлен в true, удаление раздела разрешено, даже если количество копий указанного раздела равно 0. (1.00.16)
Генерируется исключение, если параметр 'partitionPaths' функции dropPartition указывает условия фильтрации и содержит NULL значение. (1.00.16)
Добавлено ограничение, согласно которому функции, связанные с операциями базы данных DFS (включая addValuePartitions, addRangePartitions, append!, createPartitionedTable, createTable, database, dropDatabase, setColumnComment, setRetentionPolicy и tableInsert), могут выполняться только на узлах данных. (1.00.16)
Если ветвь 'if' или ветвь 'else' оператора if/else содержит недопустимые компоненты, генерируется исключение. (1.00.16)
Операторы обновления и удаления SQL теперь поддерживают скалярные логические выражения, такие как 1 = 1 или 1 = 0. (1.00.18)
В таблице, возвращаемой getStreamingStat.subWorkers о рабочих узлах подписчиков, каждая строка представляет тему подписки. (1.00.18)
При отмене подписки на потоковую таблицу (unsubscribeTable) все сообщения темы в очереди сообщений потока выполнения будут удалены. (1.00.18)
Если оператор SQL включает несколько разделов таблицы, запрещено использовать функции, результаты которых чувствительны к порядку строк, такие как mavg, isDuplicated и т.д., в предложении where. (1.00.18)
В операторе SQL «контекст по» или «группировать по», если в расчёте отдельной группы возникает ошибка из-за данных (например, расчёт…). Инверсия сингулярной матрицы приводит к тому, что результат группы устанавливается в Null и оператор успешно выполняется. Система больше не генерирует исключение для прерывания выполнения. (1.00.18)
При очистке постоянных данных с помощью функции clearTablePersistence
система больше не препятствует доступу других функций (таких как getStreamingStat
) к менеджеру персистентности. (1.00.18)
Улучшена проверка параметров функции dropPartition
. Если пути раздела содержат повторяющиеся значения, будет выдано сообщение об ошибке. (1.00.19)
Некоторые имена параметров в функциях: nunique
, isDuplicated
, ewmMean
, ewmStd
, ewmVar
, ewmCovar
, ewmCorr
, knn
, multinomialNB
, gaussianNB
, zTest
, tTest
и fTest
были скорректированы в соответствии с соглашениями об именовании параметров в DolphinDB. (1.00.19)
Функция run
была улучшена путём добавления необязательного параметра newSession
. Если установлено значение true (по умолчанию — false), скрипт выполняется в новом сеансе, а переменные исходного сеанса не удаляются. (1.00.19)
Операторы обновления и удаления SQL теперь поддерживают скалярные логические выражения, такие как 1 = 1 или 1 = 0. (1.00.19)
Повышена стабильность секционированных таблиц. В частности, решена проблема несогласованности версий, вызванная многократным удалением таблиц в разделе базы данных. (1.00.20)
Последний столбец соединения aj
теперь поддерживает ещё три типа данных: uuid, ipaddr и int128. (1.00.20)
Добавлена возможность резервного копирования и восстановления размерных таблиц. (1.00.20)
Проверки добавлены при использовании aj
или wj
хотя бы одной секционированной таблицы. Столбцы соединения, кроме последнего, должны включать все столбцы секционирования. (1.00.20)
Когда агрегатор потоковых временных рядов получает новые данные, проверяется количество столбцов в новых данных. (1.00.20)
Можно использовать псевдонимы таблиц во вложенных соединениях. (1.00.20)
Можно использовать псевдонимы для размерных таблиц в соединениях. (1.00.20)
Запрещено напрямую обращаться к полям в таблице для общей таблицы в памяти и таблицы mvcc через <tableName>.<colName>
. Можно использовать имя поля в качестве индекса для доступа к полям таблицы, например t["col1"]
. (1.00.21)
Запрещается добавлять новые поля через оператор обновления в общую секционированную таблицу в памяти. (1.00.21)
Включается TCP_KEEPALIVE при создании TCP-соединений между узлами в кластере DolphinDB. (1.00.21)
Минимальный размер кэша потоковой таблицы уменьшен с 100 000 строк до 1000 строк. (1.00.22)
Минимально допустимое значение параметра «throttle» функции subscribeTable
уменьшено с 1 секунды до 0,001 секунды. (1.00.22)
Функцию dictUpdate!
можно применять к словарю с вектором ANY в качестве значения словаря. (1.00.22)
Добавлена проверка параметров к функции loadTable
. При загрузке таблицы DFS не разрешается указывать разделы для загрузки. (1.00.22)
Оператор SQL UPDATE теперь требует, чтобы объект, который нужно обновить, был таблицей. (1.00.23)
Функции преобразования временного типа теперь поддерживают кортеж в качестве входных данных. К ним относятся функции: date
, month
, year
, hour
, minute
, second
, time
, datetime
, datehour
, timestamp
, nanotime
, nanotimestamp
, weekday
, dayOfWeek
, dayOfYear
, dayOfMonth
, quarterOfYear
, monthOfYear
, weekOfYear
, hourOfDay
, minuteOfHour
, secondOfMinute
, millisecond
, microsecond
, nanosecond
. (1.00.23)
Повышена стабильность распределённой базы данных. В частности, повышена стабильность разрешения транзакций при несогласованности версий фрагментов; снижена вероятность задержки передачи пульса. (1.00.23)
Параметр «groupingCol» функции contextby
может быть пустым массивом. (1.00.23)
Исправление ошибок:
Исправлена ошибка, приводящая к сбою системы при обновлении таблицы после выполнения функции reorderColumns!
.
Исправлена ошибка, вызывающая сбой системы при использовании операторов SQL update или delete для секционированных таблиц в памяти с локальными переменными. (1.00.1)
Устранена проблема утечки памяти на узлах Raft-последователей. **Содержат больше строк, чем ожидалось. (1.00.18)
Исправлена ошибка, из-за которой функция wsum
возвращала 0, когда оба параметра содержали только значения Null. Теперь она возвращает Null. (1.00.18)
Исправлена ошибка: когда в функции sql
указаны оба параметра «csort» и «limit», сгенерированный оператор SQL не может найти столбцы, указанные параметром «csort». (1.00.19)
Исправлена ошибка: при использовании алгоритма хеширования для выполнения агрегатных функций в группах в операторах SQL, если результат содержит значения Null, система не устанавливает флаг значения Null. Поэтому, если результаты дополнительно фильтруются функцией isNull
, система не может обнаружить значения Null. (1.00.19)
Исправлена ошибка: если алгоритм хеширования используется для выполнения агрегатной функции wsum
в групповых расчётах SQL, и оба входа функции wsum
равны Null, результатом должен быть Null вместо 0. (1.00.19)
Исправлена ошибка: выполнение getStreamingStat
при наличии нескольких потоковых исполнителей приводит к сбою системы. Это ошибка, появившаяся в версии 1.00.18. (1.00.19)
Устранена утечка памяти, вызванная выделением более 2 ГБ непрерывной памяти. (1.00.20)
Исправлена ошибка: когда одновременно выполняется несколько пакетных заданий, вызывающих mr
или imr
, и возникает исключение (например, раздел заблокирован другой транзакцией и не может быть записан), это может привести к сбою системы. (1.00.20)
Исправлена ошибка: когда агрегатор временных рядов выполняет групповые вычисления с useSystemTime=true, если в окнах нет данных, результаты вычислений генерируются ошибочно. (1.00.20)
Исправлена ошибка во встроенной параллельной хеш-таблице. Эта ошибка может вызвать сбой системы при создании и доступе к общим переменным параллельно. (1.00.20)
Исправлена ошибка: база данных DFS с несколькими уровнями каталогов (например, dfs://stock/valueDB
) не может быть должным образом заархивирована и восстановлена. (1.00.21)
Исправлена ошибка: в равном соединении, если тип данных соединяемого столбца — STRING в левой таблице и SYMBOL в правой таблице, а в правой таблице есть только одна строка, результат будет неверным, поскольку он всегда возвращает пустую таблицу. (1.00.21)
Исправлена ошибка: при объединении таблицы DFS и таблицы измерений, если выполняются все следующие условия: (1) ни одна запись не удовлетворяет условиям соединения; (2) в предложении select используется подстановочный знак (*); (3) имя таблицы DFS и псевдоним таблицы, используемые при объединении, различаются; (4) в обеих таблицах есть столбец с одинаковым именем, тогда система выдаст исключение о том, что не может найти столбец с таким же именем в обеих таблицах. (1.00.21)
Исправлена ошибка: результаты ошибочны, когда большой словарь сериализуется асинхронно. (1.00.22)
Исправлена ошибка: после включения высокой доступности для узла контроллера, если транзакция включает слишком много разделов, так что длина сообщения RAFT превышает 64 КБ, метаданные будут усечены при воспроизведении сообщения RAFT после перезапуска системы. (1.00.23)
Поддержка синхронизации модулей DolphinDB с удаленными серверами.
Исправлена проблема, из-за которой сохранение пароля не действовало.
Решена проблема, из-за которой синхронизация модулей не работала в среде операционной системы Microsoft Windows. (1.00.10)
Добавлен интерфейс мониторинга производительности веб-сервера для однорежимного сервера dolphindb. (1.00.10)
Плагины, включая AWS S3, ZLIB, MYSQL, ODBC и HDF5, упакованы в папку «server/plugins» для этого выпуска.
ODBC Plugin: метод odbc::append предоставляет дополнительный параметр «insertIgnore». Для целевых баз данных, поддерживающих синтаксис «вставить игнорировать», если указан параметр «insertIgore», повторяющиеся данные по первичному ключу будут игнорироваться.
OPC Plugin: добавлена поддержка китайских тегов. Китайские теги должны использовать кодировку UTF-8. (1.00.21)
JAVA
Оптимизирована стабильность повторного подключения в потоковой передаче.
Добавлена функция hashBucket
для расчёта индекса раздела данных, которые будут записаны, что удобно для...
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )