WhoDB - 가볍고 강력한 데이터베이스 관리 도구
(github.com/clidey)- 20MB이하로 가볍지만 강력한, 사용자 친화적 데이터베이스 관리 도구
- PostgreSQL, MySQL, SQLite3, MongoDB, Redis, MariaDB, ElasticSearch
- 복잡한 SQL 작성 대신 자연어로 데이터 쿼리 및 관리 가능 : Ollama, ChatGPT, Anthropic과 통합
- 프론트엔드 테이블 가상화 지원
- 데이터베이스 스키마를 그래프로 시각화
- 인터페이스에서 직접(인라인) 데이터 수정 및 결과 미리보기
- Scratchpad: Jupyter Notebook 스타일의 데이터베이스 쿼리 인터페이스
- Go로 개발되어 빠르며, Docker를 사용하여 쉽게 설치 가능
- 다른 도구와의 관계
- Adminer에서 영감을 받아 경량성과 사용 편의성을 기반으로 UX와 데이터 시각화를 강화한 툴을 목표로 개발
- DBeaver는 풍부한 기능을 제공하지만 리소스 요구량이 높은 반면, WhoDB는 가볍고 효율적이며 작은 환경에서도 잘 작동
프롬프트는 여기에 정의되어 있습니다: https://github.com/clidey/whodb/blob/main/core/src/common/chat.go 자연어를 통한 명령은 정말 간단한 수준으로 구현되어 있는데
ollama phi4로 연결해서 간단히 DB 구성 해서 명령내려봤는데 10개 정도의 명령이 제대로 실행됐네요. 이건 누구를 칭찬해야 될지 모르겠네요.
데모를 써 봤는데 개선점이 꽤 많이 보이네요. 강력하다고 자평하기에는 아직 갈 길이 많이 멀어 보입니다
- 테이블 뷰에서 셀 클릭시 셀 데이터가 복사됩니다. 커서 호버시 셀 내부 우측에 펜 아이콘이 나타나서 셀 클릭시 편집이 될 것으로 기대했는데 정작 동작은 그렇지 않습니다. 펜 아이콘을 정확히 눌러야 셀 편집모드로 전환됩니다.
- 셀 편집 모드가 모달로 표시되고 입력 textarea가 지나치게 크게 표시되어 입력 플로우를 유지하는 데에 어려움이 있습니다. 모달보다 인라인 편집 기능이 낫다고 생각합니다
- 행 단위로 데이터를 수정할 수 없습니다
- 정말 사소한 문제이긴 한데 다크모드 전환 스위치의 레이블이 스위치 상태에 의해 변경됩니다. 끈 상태는 Light Mode, 켠 상태는 Dark Mode로 표시됩니다. 토글 스위치의 레이블은 바뀌지 않는게 맞지 않나 싶습니다
일반적으로 sql 을 생성할땐 테이블 구조나 괸계, 필드 설명 등을 사용합니다 그래서 내 데이터가 학습될 일은 없을 듯해요 또한 OpenAI API는 요청 데이터로 학습하지 않는다라는 내용이 있어요 그럼에도 불안하시면 로컬 LLM 을 사용하시면 될 것 같네요👏
민감한 작업, 특히 데이터를 수정/삭제하거나 테이블 구조 변경같은 작업을 자연어로 LLM을 통해 하는건 아직은 매우 위험해 보여요.
결국 실행전 생성된 SQL을 검토해야할것 같아요.
원 댓글의 요지는 그게 아닌것같습니다.
운영중인 db에서는 select 만으로도 부하 및 lock등으로 인해서 장애가 발생할 수 있는데, llm을 통해서 도출된 쿼리를 바로 사용할때 리스크가 있다는 의미로 말씀하신것같슴니다.