
데이터베이스라고 하면 SQL 같은 서버 데이터베이스를 떠올릴텐데 그렇지는 않다. 클라이언트에 저장되는 로컬 미니 데이터베이스라 생각하면 된다. 제목에서 상상한 것과 달라 실망스러운가? 설마 localStorage를 데이터베이스라고 부르는 것은 아닐테고. 하지만 실망하기에는 이르다. 당당히 트랜잭션(transaction)을 지원하는 데이터베이스를 품었다.
아직은 편집 단계에 머물러 있는 레퍼런스이지만 관심을 갖기를 바라는 의미에서 IndexedDB를 소개하려고 한다. 인사 정도는 할 수 있는 수준의 편집은 마무리되었다. 알다시피 오늘날 웹은 콘텐츠를 표현하고 정보를 전달하는 매개체로써 역할만 하지 않는다. 다양한 디지털 산출물을 만들어 낼 수 있는 무설치 소프트웨어를 배포하는 수단으로써 이미 증명되고 있다. 데이터베이스의 등장은 자연스러운 수순이 아닐까 생각한다. 쉬운 활용으로 예를 든다면 IndexdDB를 이용해 네트워크가 불가능한 지역인 경우 작업 데이터를 로컬에 저장해 두고 네트워크가 연결되면 서버로 데이터를 보내는 전천후 프로그래밍이 더 쉬워졌다. 혹시 몰랐다면 관심을 가져보도록 하자.
(덧붙임)
표준화가 완료된 IndexedDB API의 출시는 2011년에 크롬(Chrome)과 파이어폭스(Firefox)에서 먼저 지원하면서 시작되었다. 역사를 좀 더 살펴보자면 IndexedDB 이전에 애플(Apple)에서 제안한 Web SQL Database가 논의 대상이었다. 하지만 특정 SQL 기술에 종속되고 표준화가 어렵다는 이유 등을 들어 모질라(Mozilla)와 일부 벤더에서 반대가 있었다. 이후 2009년 오라클(Oracle)이 처음 제안한 지금의 IndexedDB 논의가 시작되었다. 역사를 살펴보면 IndexedDB는 현재 10년을 넘긴 API인 것을 알 수 있다. 다이제스트에서 소개하는 이유는 최신 API가 아니라 관심을 갖기를 바라는 의미이므로 오해가 없도록 하기 바란다.
웹에서 사용되는 이미지의 확장자는 대표적으로 gif, jpg, png 등이 있다는 것은 이미 모두 알고 있는 사실이다. 그리고 관심을 가지고 있었다면 최근에 몇 가지 새로운 확장자가 등장을 했다는 것도 알고 있을 것이다. 2010년 구글에서 개발한 WebP와 2021년 JPEG(Join Photographic Exparts Group) 그룹에서 개발한 JPEG XL이라는 포맷이다. 그런데 WepP와 JPEG XL 간의 묘한 기술 주도권 싸움이 있는 모양이다. 그리고 웹브라우저 시장 지배력이 매우 강한 크롬을 보유한 구글(Google)로 곱지 않은 시선이 모아지는 분위기이다. 웹 프론트엔드 기술 작가겸 개발자인 '데글런 치들로(Declan Chidlow)'씨가 블로그에 포스팅한 '
12월, 이제 한달도 못 남은 2025년도입니다. 데브딕 개편 작업으로 쉼없이 달려온 시간이다 보니 1년이라는 시간이 이렇게 빨리 지나갈 수 있나라는 생각을 합니다.