Cassandra가 겹치는 범위 검사를 위해 최적화 된 솔루션을 제공 할 수있는 방법
-
26-12-2019 - |
문제
내 입력에서는 핵심 r1의 r1의 낮은 범위의 r1의 하한이고, r1의 상한.일부 Data.I의 입력 범위 R1이 이미 카산드라에 이미있는 다른 현재 범위와 겹치지 않아야하는지 확인한 후에만이 데이터를 삽입해야합니다.
그래서 각 삽입물 이전에
를 선택해야합니다 key | lowerbound | upperbound | data
------+------------+------------+------------------------------------------------------------------------
1024 | 1000 | 1100 | <blob>
1024 | 1500 | 1900 | <blob>
1024 | 2000 | 2900 | <blob>
1024 | 3000 | 3900 | <blob>
1024 | 4000 | 4500 | <blob>
Case1 Given Range R(S,E)=(1,999)
This is a positive case hence system should Insert the data
Case2: Given Range R(S,E)=(1001,1010)
this is a Negative case hence system should discard the data
.
하나의 범위 쿼리와 하나의 프로그래밍 방식의 검사 솔루션
에 대한 솔루션이 있습니다.이런 종류의 문제가 Cassandra에서 해결책을 가지고 있는지 알려주십시오.
더 나은 성능을 얻으려면 최적화 될 수 있습니다.해결책
문제에 대한 더 나은 솔루션이 없습니다. 이것은 유일한 방법입니다.미래의 가벼운 거래에서 이러한 상황에도 도움이 될 수 있지만 이제는 귀하가 가진 유일한 솔루션은 글쓰기 전에 읽는 것입니다.하나의 고려 사항 : 동시성 상황에서 이중 삽입을 피할 수 있는지 확인하십시오 (응용 프로그램에서 발생할 수있는 경우).
환호, Carlo
제휴하지 않습니다 StackOverflow