Cassandra 데이터 정렬 문제 - 1

AIMLFW를 통해 모델을 학습시키는데, 성능이 예상에 크게 미치지 못하는 문제가 계속 생겼다. 분명 로컬에서 수행한 코드와 동일한 코드를 AIMLFW를 통해 수행했는데, 성능이 훨씬 떨어지는 것이었다.

Debug-Pod를 통해 코드(get_data.ipynb)를 실행해보니 feature store sdk에서 받아오는 데이터와 InfluxDB에 넣은 데이터가 다르다는 것을 확인할 수 있었다. InfluxDB에서 데이터를 받아올 때는 동일한 데이터를 받아왔는데, feature store sdk에서 받아올 때는 다른 데이터를 받아왔다.

Feature store sdk는 Cassandra에서 데이터를 받아오는데, 아직 Cassandra에 대한 공부가 부족하지만 Cassandra에서 문제가 있지 않을까 하고 생각했다. 우선 문제를 해결하기 위해 Cassandra를 웹으로 확인할 수 있는 오픈소스인 cassandra-web을 통해 Cassandra를 확인해보았다.

cassandra-web --hosts '10.105.247.115' --port '9042' --username 'cassandra' --password 'OOcrm4pqFi'

확인해보니 __Id라는 인덱스 칼럼이 있는데, feature store sdk에서 받아올 때 이 __Id를 기준으로 받아오는 것이 아니라 무작정 위에서부터 받아오는 것이었다. 그래서 우선은 feature store sdk에서 받아올 때 __Id를 기준으로 정렬하는 코드를 추가했다.

결과적으로, AIMLFW를 통해 모델을 학습시킬 때, 로컬에서 학습시킨 것과 동일한 성능이 나오는 것을 확인했다.

Gerrit Review
Cassandra 데이터 정렬 문제 - 2