실험 데이터를 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을 변경했습니다.
이러한 변경을 통해 타임 스탬프와 값 모두에서 소수점 이하 여섯 자리 만 저장되었습니다. 내 기대에 따라 저장/볼 수있는 더 나은 전략은 무엇 일 수 있습니까?
그러나 "1970-01-01 00 : 00 : 02.48979187011719 + 0000"처럼 샘플링 속도 열 값을 표시해야한다는 엄격한 요구 사항이 있습니다.와 같은 사용자 정의 유형을 사용할 수 있습니까? 예 : <1970-01-01 00 : 00 : 02,0.48979187011719> 그러나 내 관심사는 다음과 같습니다. i) 기본 키로이 udt 열을 사용하고 싶습니다. ii) 사용자가 기반 쿼리를 필터링 할 수 있어야합니다. on timestamp 또는 udt의 십진수 부분 나는 cassandra의 udt 유형이이 두 가지 문제점을 안고 있다고 읽었습니다. 내가 틀렸다면 나를 바로 잡아라. 고맙습니다. –
당신은 같은 테이블을 만들 수 있습니다이 '(샘플링 ASC)에 의해 클러스터링 순서 표 test.temp ( myts 타임 스탬프, 샘플링 진수, 값 1의 진수, PRIMARY KEY (myts, 샘플링) 를) CREATE' – Horia