Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

spot price 의 소숫점 적절한 값으로 확인 필요 #463

Open
kmu-leeky opened this issue Feb 12, 2024 · 4 comments
Open

spot price 의 소숫점 적절한 값으로 확인 필요 #463

kmu-leeky opened this issue Feb 12, 2024 · 4 comments
Assignees

Comments

@kmu-leeky
Copy link
Member

현재 스팟 인스턴스 가격이 소수점 이 아래 까지 나와서 조금 만 변해도 새로운 기록으로 인식되는데 timestream db 로 입력시에는
소수점 자리수를 줄여서 불필요한 업데이트를 막는것도 좋아보임.
예를 들어 소수점 2째 자리 정도에서 반올림 하는건 어떨런지?
현재 : 0.1578 은 0.16 으로

@red0sena
Copy link
Contributor

해당 내용으로 코드를 업데이트 하다 보니 다음과 같은 문제점이 떠올랐습니다.

  • 현재 변화는 직전에 수집한 데이터와 현재 데이터를 비교함
  • SpotPrice는 한번에 크게 변화하지 않음
  • 만약 매 수집마다 0.001 씩 계속 변화한다면 계속 변화를 감지하지 못할 수 있음

스팟 가격 변화 분포
2e515552-6d7f-499e-b0e5-afdd1c3c802e
위 그래프는 AWS의 2024/02/13 05:30 데이터와 2024/02/13 05:40 의 데이터의 SpotPrice의 변화 폭을 절대값으로 구하여 CDF로 나타내었습니다.
Y축은 분포이고 X축은 변화 폭($) 입니다.
그래프를 보면 95% 이상이 0.01 이하의 SpotPrice 변화를 보입니다.

해결 방법은 현재처럼 직전의 데이터를 비교하는것이 아닌
SpotPrice가 소수점 둘째자리까지 변화할 때까지 이전 데이터를 유지하고 기다렸다가 변화하면 그때 이전 데이터를 교체하는 방식으로 할 수 있을 것 같습니다.
이 방법은 구현 방법을 조금 생각해 보아야 할 것 같습니다.

@kmu-leeky
Copy link
Member Author

그런가? 그냥 바로 적용해버려도 괜찮지 않을까?
예를 들어 0.1345 가 이전 시점 데이터 이고 다음 시점 데이터가 0.1345 라고 하더라도 그냥 0.13 으로 해버리고 변화로 기록 (거의 모든 데이터가 변화 기록) 하고 나서 그 후는 그냥 소수점 2째자리까지 기록.
이렇게 했을때 문제가 있을까?

@red0sena
Copy link
Contributor

제가 이해를 잘 못한것 같습니다. 저는 절대값으로 0.01 이상의 변화만 변화하였다고 감지하고 새로운 데이터로 입력하는 것으로 생각하였습니다.

교수님 말씀대로 반올림 후 비교하면 문제가 없을것 같습니다. 해당 내용으로 진행하도록 하겠습니다.

@kmu-leeky
Copy link
Member Author

오케이. 그러면 특정 시점 부터 가격을 그냥 소수점 2째자리만 표현되게끔 하고 이전의 변화 시점을 detect 하는 알고리즘은 그대로 사용하도록 하자.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants