0

실험 데이터를 Cassandra에 삽입하고 싶습니다. 각 데이터의 소수점 이하 자릿수는 15 자입니다.십진수 정밀도로 타임 스탬프와 이중 열을 저장/표시하는 방법은 무엇입니까?

+------------------+-------------------+ 
| Sampling_Rate |  Value1  | 
+------------------+-------------------+ 
| 2.48979187011719 | 0.144110783934593 | 
+------------------+-------------------+ 

내가 신기원 시간으로 sampling_rate의을보고 싶습니다 (즉 1970-01-01 00 : 00 : 00 : 02.48979187011719 + 0000), 및 값 1을 다음과 같이 샘플 데이터 세트입니다 전체 정밀도 값을 저장하십시오. 이를 위해

, 나는 설명 테이블에 데이터를 삽입 :

CREATE TABLE project_fvag.temp (
    sampling_rate timestamp PRIMARY KEY, 
    value1 double) WITH bloom_filter_fp_chance = 0.01 
    AND caching = {'keys': 'ALL', 'rows_per_partition': 'NONE'} 
    AND comment = '' 
    AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'} 
    AND compression = {'chunk_length_in_kb': '64', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'} 
    AND crc_check_chance = 1.0 
    AND dclocal_read_repair_chance = 0.1 
    AND default_time_to_live = 0 
    AND gc_grace_seconds = 864000 
    AND max_index_interval = 2048 
    AND memtable_flush_period_in_ms = 0 
    AND min_index_interval = 128 
    AND read_repair_chance = 0.0 
    AND speculative_retry = '99PERCENTILE'; 

또한 float과 double 모두 정밀도 증가와 함께 cqlshrc 파일을 변경했습니다. 또한 datetimeformat을 변경했습니다.

이러한 변경을 통해 타임 스탬프와 값 모두에서 소수점 이하 여섯 자리 만 저장되었습니다. 내 기대에 따라 저장/볼 수있는 더 나은 전략은 무엇 일 수 있습니까?

답변

0

샘플링 값 : 타임 스탬프로 설정했기 때문에 cassandra는 밀리 초 정밀도로 저장합니다. 한 가지 방법은 10 진수로 저장하는 것입니다.

동일한 내용이 value1에 적용됩니다. value1에 대해 double 대신 decimal로 테이블을 다시 작성하십시오.

+0

그러나 "1970-01-01 00 : 00 : 02.48979187011719 + 0000"처럼 샘플링 속도 열 값을 표시해야한다는 엄격한 요구 사항이 있습니다. 와 같은 사용자 정의 유형을 사용할 수 있습니까? 예 : <1970-01-01 00 : 00 : 02,0.48979187011719> 그러나 내 관심사는 다음과 같습니다. i) 기본 키로이 udt 열을 사용하고 싶습니다. ii) 사용자가 기반 쿼리를 필터링 할 수 있어야합니다. on timestamp 또는 udt의 십진수 부분 나는 cassandra의 udt 유형이이 두 가지 문제점을 안고 있다고 읽었습니다. 내가 틀렸다면 나를 바로 잡아라. 고맙습니다. –

+0

당신은 같은 테이블을 만들 수 있습니다이 '(샘플링 ASC)에 의해 클러스터링 순서 표 test.temp ( myts 타임 스탬프, 샘플링 진수, 값 1의 진수, PRIMARY KEY (myts, 샘플링) 를) CREATE' – Horia