O Simple Log Service oferece funções de conversão de unidades para transformar tamanhos de dados e intervalos de tempo entre diferentes unidades de medida.
O Log Service fornece as seguintes funções de conversão de unidades.
Para usar strings em instruções analíticas, coloque-as entre aspas simples (''). Strings sem aspas ou entre aspas duplas ("") são interpretadas como nomes de campos ou colunas. Por exemplo:
'status'
representa a string status, enquanto
status
ou
"status"
indica o campo de log status.
|
Categoria |
Função |
Sintaxe |
Descrição |
SQL |
SPL |
|
Funções de conversão de tamanho de dados |
convert_data_size(x) |
Converte automaticamente um tamanho de dados para a unidade legível mais adequada. Por exemplo, converte 1024 KB para 1 MB e 1024 MB para 1 GB. Retorna uma string. |
√ |
× |
|
|
convert_data_size(x, unit) |
Converte um tamanho de dados para a unidade especificada. Retorna uma string. |
√ |
× |
||
|
format_data_size(x, unit) |
Formata um tamanho de dados em bytes como uma string na unidade especificada. Retorna uma string. |
√ |
× |
||
|
parse_data_size(x) |
Analisa uma string que representa um tamanho de dados e retorna o valor em bytes. Retorna um decimal. |
√ |
× |
||
|
to_data_size_B(x) |
Converte um tamanho de dados para seu valor em bytes. Retorna um double. |
√ |
× |
||
|
to_data_size_KB(x) |
Converte um tamanho de dados para seu valor em kilobytes (KB). Retorna um double. |
√ |
× |
||
|
to_data_size_MB(x) |
Converte um tamanho de dados para seu valor em megabytes (MB). Retorna um double. |
√ |
× |
||
|
to_data_size_GB(x) |
Converte um tamanho de dados para seu valor em gigabytes (GB). Retorna um double. |
√ |
× |
||
|
to_data_size_TB(x) |
Converte um tamanho de dados para seu valor em terabytes (TB). Retorna um double. |
√ |
× |
||
|
to_data_size_PB(x) |
Converte um tamanho de dados para seu valor em petabytes (PB). Retorna um double. |
√ |
× |
||
|
Funções de conversão de intervalo de tempo |
format_duration(x) |
Formata um intervalo de tempo, fornecido em segundos, em uma string legível. |
√ |
× |
|
|
parse_duration(x) |
Analisa uma string de duração, como uma no formato |
√ |
× |
||
|
to_days(x) |
Converte um intervalo de tempo para seu valor em dias. Retorna um double. |
√ |
× |
||
|
to_hours(x) |
Converte um intervalo de tempo para seu valor em horas. Retorna um double. |
√ |
× |
||
|
to_microseconds(x) |
Converte um intervalo de tempo para seu valor em microssegundos. Retorna um double. |
√ |
× |
||
|
to_milliseconds(x) |
Converte um intervalo de tempo para seu valor em milissegundos. Retorna um double. |
√ |
× |
||
|
to_minutes(x) |
Converte um intervalo de tempo para seu valor em minutos. Retorna um double. |
√ |
× |
||
|
to_most_succinct_time_unit(x) |
Converte automaticamente um intervalo de tempo para a unidade legível mais concisa. Retorna uma string. |
√ |
× |
||
|
to_nanoseconds(x) |
Converte um intervalo de tempo para seu valor em nanossegundos. Retorna um double. |
√ |
× |
||
|
to_seconds(x) |
Converte um intervalo de tempo para seu valor em segundos. Retorna um double. |
√ |
× |
Função convert_data_size
Converte um tamanho de dados para outra unidade, seja automaticamente ou para uma unidade de destino específica.
Syntax
-
Converte um tamanho de dados para a unidade ideal, determinada automaticamente pelo sistema.
convert_data_size(x) -
Converte um tamanho de dados para uma unidade específica.
convert_data_size(x, unit)
Parameters
|
Parâmetro |
Descrição |
|
x |
O tamanho dos dados, que deve ser uma string. |
|
unit |
A unidade de destino. Valores válidos: KB, MB, GB, TB, PB, EB, ZB e YB. |
Return value type
Retorna uma string.
Examples
-
Exemplo 1: Converter 1200 KB para outra unidade.
-
Instrução de consulta e análise
* | SELECT convert_data_size('1200KB') O resultado é
1.17MB.
-
-
Exemplo 2: O campo body_bytes_sent representa o número de bytes enviados ao cliente. Este exemplo converte o valor do campo para KB.
-
Instrução de consulta e análise
* | select convert_data_size(format_data_size(body_bytes_sent, 'KB')) A coluna
_col0exibe os tamanhos de dados convertidos, como 1.74KB, 11.38KB, 4.12KB e 1.19KB. A consulta usa primeiroformat_data_sizepara converter o valor debody_bytes_sentem uma string em KB e, em seguida, processa o resultado comconvert_data_size.
-
Função format_data_size
Formata um valor em bytes como uma string em uma unidade especificada.
Syntax
format_data_size(x, unit)
Parameters
|
Parâmetro |
Descrição |
|
x |
O tamanho dos dados em bytes. Deve ser um bigint. |
|
unit |
A unidade de destino para a conversão. Valores válidos: KB, MB, GB, PB, TB, EB, ZB e YB. |
Return value type
Retorna uma string.
Examples
-
Exemplo 1: O campo body_bytes_sent representa o número de bytes enviados a um cliente. Este exemplo converte o valor do campo para kilobytes (KB).
-
Campo de amostra
body_bytes_sent:4619 -
Instrução de consulta e análise
* | select format_data_size(body_bytes_sent, 'KB') A coluna
_col0nos resultados da consulta e análise contém valores como 7.33 KB, 2.19 KB, 4.16 KB e 4.84 KB.
-
-
Exemplo 2: Este exemplo calcula a soma do campo body_bytes_sent e depois converte o total para gigabytes (GB).
-
Campo de amostra
body_bytes_sent:4619 -
Instrução de consulta e análise
* | select format_data_size(sum(body_bytes_sent), 'GB') A coluna _col0 retorna 0.73 GB, que é a soma formatada dos valores do campo
body_bytes_sent.
-
parse_data_size
Analisa uma string de tamanho de dados e retorna o valor equivalente em bytes.
Syntax
parse_data_size(x)
Parameters
|
Parâmetro |
Descrição |
|
x |
O tamanho de dados a ser analisado. Deve ser uma string. |
Return value type
Retorna um valor do tipo decimal.
Examples
Converter 1024 KB para seu valor equivalente em bytes.
-
Instrução de consulta
*| SELECT parse_data_size('1024KB') A consulta retorna
1048576, o equivalente a 1024 KB em bytes.
Função to_data_size_B
Converte um tamanho de dados para bytes.
Syntax
to_data_size_B(x)
Parameters
|
Parâmetro |
Descrição |
|
x |
O tamanho dos dados. Este parâmetro deve ser uma string. |
Return value type
Retorna um valor double.
Examples
Converter 1024 KB para seu valor equivalente em bytes.
-
Instrução de consulta e análise
* | select to_data_size_B('1024KB') O resultado da consulta e análise é
1048576.0, o equivalente a 1024 KB em bytes.
to_data_size_KB
Converte um tamanho de dados para kilobytes (KB).
Syntax
to_data_size_KB(x)
Parameters
|
Parâmetro |
Descrição |
|
x |
O tamanho dos dados. Este valor deve ser uma |
Return value type
O valor retornado é um double.
Examples
O campo body_bytes_sent representa o número de bytes enviados ao cliente. Este exemplo converte o valor do campo para KB.
-
Instrução de consulta e análise
* | select to_data_size_KB(format_data_size(body_bytes_sent, 'KB')) A coluna
_col0nos resultados da consulta e análise contém os valores 3.52, 4.25, 3.2 e 1.69.
Função to_data_size_MB
Converte um tamanho de dados para megabytes (MB).
Syntax
to_data_size_MB(x)
Parameters
|
Parâmetro |
Descrição |
|
x |
O tamanho dos dados, que deve ser uma string. |
Return value type
Esta função retorna um valor double.
Examples
O campo body_bytes_sent representa o número de bytes enviados ao cliente. Este exemplo converte o total para megabytes (MB).
-
Instrução de consulta e análise
* | select to_data_size_MB(format_data_size(sum(body_bytes_sent), 'KB')) A consulta retorna
814.49, que é a soma debody_bytes_sentconvertida para megabytes (MB).
Função to_data_size_GB
Converte um tamanho de dados para gigabytes (GB).
Syntax
to_data_size_GB(x)
Parameters
|
Parâmetro |
Descrição |
|
x |
O tamanho de dados a ser convertido. O valor deve ser uma string. |
Return value type
Um valor double.
Examples
O campo body_bytes_sent representa o número de bytes enviados ao cliente. Este exemplo converte o total para gigabytes (GB).
-
Instrução de consulta e análise
* | select to_data_size_GB(format_data_size(sum(body_bytes_sent), 'KB')) A consulta retorna
0.79. Este valor representa o total de bytes enviados em gigabytes (GB).
Função to_data_size_TB
Converte um tamanho de dados para terabytes (TB).
Syntax
to_data_size_TB(x)
Parameters
|
Parâmetro |
Descrição |
|
x |
O tamanho dos dados, especificado como uma string. |
Return value type
Retorna um valor double.
Examples
O campo body_bytes_sent representa o número de bytes enviados a um cliente. Este exemplo converte o total para terabytes (TB).
-
Instrução de consulta
* | select to_data_size_TB(format_data_size(sum(body_bytes_sent), 'KB')) A consulta retorna uma única coluna,
_col0, com o valor0.01, que representa a soma debody_bytes_sentem terabytes (TB).
Função to_data_size_PB
Converte um tamanho de dados para petabytes (PB).
Syntax
to_data_size_PB(x)
Parameters
|
Parâmetro |
Descrição |
|
x |
O tamanho dos dados. O valor deve ser uma string. |
Return value type
Retorna um double.
Examples
Converter 1.048.576 GB para petabytes (PB).
-
Instrução de consulta e análise
*| SELECT to_data_size_PB('1048576GB') Os resultados da consulta e análise retornam
1.0, indicando que 1.048.576 GB equivalem a 1,0 PB.
Função format_duration
Formata um intervalo de tempo em segundos em uma string legível.
Syntax
format_duration(x)
Parameters
|
Parâmetro |
Descrição |
|
x |
O intervalo de tempo a ser formatado. O valor deve ser um double. |
Return value type
Retorna o intervalo de tempo formatado como uma string.
Examples
Formata 235 segundos como 3 minutes, 55 seconds.
-
Instrução de consulta
* | SELECT format_duration(235) A coluna _col0 retorna
3 minutes, 55 seconds.
parse_duration
Analisa uma string de intervalo de tempo no formato 0 00:00:00.000.
Syntax
parse_duration(x)
Parameters
|
Parâmetro |
Descrição |
|
x |
O intervalo de tempo a ser analisado. O valor deve ser uma string. |
Return value type
Retorna um valor interval.
Examples
Converter 1.340 milissegundos no formato 0 00:00:01.340.
-
Instrução de consulta
* | SELECT parse_duration('1340ms') A consulta retorna
0 00:00:01.340, que representa 1.340 milissegundos no formato padrão de intervalo de tempo.
Função to_days
Converte um intervalo de tempo para dias.
Syntax
to_days(x)
Parameters
|
Parâmetro |
Descrição |
|
x |
O intervalo de tempo. Este parâmetro deve ser um varchar. |
Return value type
Um valor double.
Examples
Converter 192848s para dias.
-
Instrução de consulta
*| SELECT to_days('192848s') A coluna
_col0retorna2, indicando que 192848 segundos equivalem a 2 dias.
Função to_hours
Converte um intervalo de tempo para horas.
Syntax
to_hours(x)
Parameters
|
Parâmetro |
Descrição |
|
x |
O intervalo de tempo a ser convertido. Deve ser um varchar. |
Return value type
Retorna um double.
Examples
Converter um intervalo de tempo de 1,2 dia para horas.
-
Instrução de consulta e análise
* | SELECT to_hours('1.2d') O valor nos resultados da consulta e análise é
28.8.
Função to_microseconds
Converte um intervalo de tempo para microssegundos.
Syntax
to_microseconds(x)
Parameters
|
Parâmetro |
Descrição |
|
x |
O intervalo de tempo, que deve ser do tipo varchar. |
Return value type
Retorna um double.
Examples
Converter 3600 nanossegundos para microssegundos.
-
Instrução de consulta e análise
* | SELECT to_microseconds('3600ns') O resultado da consulta e análise é
3.6na coluna_col0.
to_milliseconds
Converte um intervalo de tempo para milissegundos.
Syntax
to_milliseconds(x)
Parameters
|
Parâmetro |
Descrição |
|
x |
O intervalo de tempo. Este parâmetro deve ser do tipo varchar. |
Return value type
Retorna um double.
Examples
Converter 1,2 segundo para milissegundos.
-
Instrução de consulta e análise
* | SELECT to_milliseconds('1.2s') Resultados da consulta e análise: A coluna
_col0retorna o valor1200, indicando que 1,2 segundo equivale a 1.200 milissegundos.
Função to_minutes
Converte um intervalo de tempo para minutos.
Syntax
to_minutes(x)
Parameters
|
Parâmetro |
Descrição |
|
x |
O intervalo de tempo. Este parâmetro deve ser do tipo varchar. |
Return value type
O valor retornado é um double.
Examples
Converter 1,2 hora para minutos.
-
Instrução de consulta e análise
* | SELECT to_minutes('1.2h') A instrução retorna
72.
to_most_succinct_time_unit
Converte automaticamente um intervalo de tempo para sua unidade mais concisa.
Syntax
to_most_succinct_time_unit(x)
Parameters
|
Parâmetro |
Descrição |
|
x |
O intervalo de tempo. Este parâmetro deve ser do tipo varchar. |
Return value type
O valor retornado é do tipo varchar.
Examples
Converter 1.340 ms para um intervalo de tempo em segundos.
-
Instrução de consulta e análise:
* | SELECT to_most_succinct_time_unit('1340ms') Resultados da consulta e análise:
1.34s
Função to_nanoseconds
Converte um intervalo de tempo para nanossegundos.
Syntax
to_nanoseconds(x)
Parameters
|
Parâmetro |
Descrição |
|
x |
O intervalo de tempo a ser convertido. O valor deve ser do tipo varchar. |
Return value type
Retorna um valor do tipo double.
Examples
Converter 125 milissegundos para seu valor equivalente em nanossegundos.
-
Instrução de consulta
* | SELECT to_nanoseconds('125ms') A consulta retorna
125000000.
Função to_seconds
Converte um intervalo de tempo para segundos.
Syntax
to_seconds(x)
Parameters
|
Parâmetro |
Descrição |
|
x |
O intervalo de tempo a ser convertido. Este parâmetro é um varchar. |
Return value type
O valor retornado é um double.
Examples
Converter 1340 milissegundos para segundos.
-
Instrução de consulta
* | SELECT to_seconds('1340ms') O resultado da consulta e análise é
1.34.