Типы колонок

Тип колонки (тип данных) в PolyAnalyst определяет, какой тип данных содержится в данной колонке, а также ограничивает операции, которые могут применяться к значениям данной колонки. Из-за этих ограничений важно правильно указать тип данных во время импорта и при создании новых колонок в таблице данных.

Например:

  • Можно хранить числа в колонках с другими символами, поскольку числа — это разновидность символов. Однако хранить буквенные символы в колонках числового типа нельзя, поскольку "A" — это не число.

  • Вы можете определить среднее арифметическое для значений числовой колонки, но не для значений колонки, содержащей другие символы.

  • В зависимости от типа колонки меняется порядок сортировки значений. Если значение "0100" рассматривать как цепочку символов, то оно меньше значения "2". Если считать эти значения числами, "2" меньше "0100".

Типы колонок в PolyAnalyst

  • Числовые: Содержат любые действительные числа, такие как числа с десятичными долями или без них, положительные и отрицательные числа. Максимальные и минимальные значения числовых данных находятся в пределах +/-\(10^{100}\). Числовые значения имеют тот же формат, что и числовые значения, которые хранятся в распространенных базах данных. Это наиболее точная форма хранения чисел, позволяющая сохранять до пятнадцати значимых цифр.

  • Целочисленные: Как и числа, хранятся в двойной точности, но дробная часть значений не сохраняется.

  • Целочисленные ID: Содержат любые целые числа (без десятичных символов, положительные или отрицательные). Максимальные и минимальные значения целых чисел находятся в пределах  +/- \(2^{58}\). Целочисленные значения не могут хранить действительные значения.

  • Строковые: Цепочки символов. Максимальное количество уникальных строковых значений — \(2^{40}\). Данные такого типа также называются "категориальными", "символьными" и "номинальными". На практике строковые данные не предназначены для хранения более 256 символов. Если приходится работать с большим количеством символов, лучше использовать текстовый тип данных. Строковые данные предназначены для хранения номинальных дискретных значений, которые используются в качестве имен, например, названия городов и стран. Текстовые значения обычно содержат предложения и абзацы текстовых данных, и несмотря на то, что строковые данные тоже способны на это, в таких случаях лучше использовать текстовые данные.

  • Дата/время: Содержат значения даты и времени.

  • булевые: Содержат значения "истина" и "ложь"; в PolyAnalyst обычно используется формат "да"/"нет".

  • Текстовые: Содержат крупные текстовые значения (цепочки, содержащие более 256 символов). Максимальный размер текстового значения — 40 мегабайт (примерно 20 миллионов символов). PolyAnalyst просто игнорирует всю информацию за пределами максимального порога, при этом данные при импорте могут быть усечены.

  • Строковые ID: Колонки со строковыми идентификаторами похожи на текстовые колонки тем, что в каждой строке колонки строковые идентификаторы являются уникальными. В колонках со строковыми идентификаторами удобно хранить данные, но для них действует ограничение в 256 символов. К колонкам со строковыми ID лингвистические операции не применяются. Ни одна строка не равна другой строке, даже если две строки содержат те же символы. Можно сравнить строковые идентификаторы со строковыми данными, но невозможно сравнить один строковой идентификатор с другим строковым идентификатором. Колонки со строковыми идентификаторами ограничены и не могут использоваться в таких узлах, как Многомерная матрица. Однако их можно использовать в таких узлах, как Агрегирование или Уникальные записи. Обратите внимание на то, что на обработку строковых ID требуется больше времени по сравнению с данными типа "строка" (поскольку сравниваются символы, а не хешированные числовые идентификаторы). Для каждой колонки со строковыми данными PolyAnalyst должен сохранять хешированный идентификатор сразу после его создания. Колонки со строковыми идентификаторами этого не требуют, их можно создать быстрее, сэкономив время на импорте/экспорте.

    Каждая строка в колонке строковых идентификаторов считается уникальной. Даже если некоторые из этих строковых данных являются одинаковыми, они все равно рассматриваются как уникальные, поскольку они имеют уникальный внутренний ID. Если вы хотите сохранить колонку со строковыми ID, нет необходимости проверять уникальность каждого значения. Даже если значения дублируются, все они будут сохранены. Однако, когда какое-то значение используется в PolyAnalyst (например, при расчете статистики или на одном из этапов работы алгоритма), значение колонки в каждой записи всегда рассматривается как уникальное, независимо от того, что значение может присутствовать в других записях.

Иконки типов данных при просмотре

Тип данных каждой колонки обозначается иконкой перед именем колонки в заголовке строки.

data type numeric

Число

data type integer

Целое число

data type boolean

Да/Нет

data type string

Строка

data type date time

Дата/Время

data type string id

Строковый ID

data type integer id

Целочисленный ID

data type text

Текст