카산드라에 존재하는 uuid version 1 테스트 코드이다. 



cql은 다음과 같이 사용한다.


cql> SELECT "uuid", DATEOF("uuid"), FROM "activities";


uuid | system.dateof(uuid)

---- + ----------------------------

11.. .   2017-05-30 01:13:21.813000+0000




http://docs.datastax.com/en/cql/3.3/cql/cql_reference/timeuuid_functions_r.html



실제 코드로 테스트해볼 수 있다. 



import java.util.Date;

import java.util.Map;

import java.util.UUID;



UUID uuid = com.datastax.driver.core.utils.UUIDs.timeBased(); 

String uuidStr = uuid.toString(); 

System.out.println(uuidStr); 




결과는 다음과 같다.


c4888d00-61f3-11e7-afc1-53e0e7faa58a

Thu Jul 06 11:35:26 KST 2017




uuid의 timestamp를 보고 싶다면 UNIXTIMESTAMPOF 함수를 사용한다. 



cql> SELECT "uuid", UNIXTIMESTAMPOF("uuid"), FROM "activities";

 system.unixtimestampof(id)

+----------------------------

              1401412401813

              1401411917725



UNIXTIMESTAMPOF 함수는 UUIDs.unixTimestamp()와 동일하다.


long timestamp = com.datastax.driver.core.utils.UUIDs.unixTimestamp(uuid) ; 

System.out.println(new Date(timestamp));


Posted by '김용환'
,