Offcanvas

������SQL

마이SQL을 쓰긴 애매할 때…'틈새' 데이터베이스 9가지

데이터베이스가 필요하다면 보통은 마이SQL(MySQL), 마리아DB(MariaDB), 포스트그레SQL(PostgreSQL), SQL라이트(SQLite), 몽고DB(MongoDB)와 같은 것 중 하나를 선택하면 된다. 그러나 이와 같은 '팔방미인형' 데이터베이스로 부족할 때가 있다. 어느 쪽을 선택하기도 애매한, 중간에 위치한 용도로 사용하기 위해 더 특화된 데이터베이스가 필요한 경우다. 메모리 분석부터 키-값 저장소와 시계열 시스템까지 다양한 분야에서 쓰이는 9가지 색다른 데이터베이스를 알아보자.     덕DB 'SQL OLAP 시스템'이라고 하면 보통 거대한 데이터 크런칭 시스템이나 끝없이 뻗어 있는 데이터 웨어하우스 클러스터가 연상된다. 분석 데이터베이스에 대한 덕DB(DuckDB)의 성격은 마이SQL과 포스트그레SQL에 대한 SQL라이트와 같다. 본격적인 OLAP 솔루션과 같은 수준의 규모로는 실행할 수 없지만 애초에 설계 목적은 로컬 데이터 집합에 대한 빠른 메모리 내 분석 처리를 제공하는 데 있다. 비록 규모는 더 작지만 덕DB 기능의 상당수는 대형 OLAP 제품의 기능에 대응한다. 데이터는 행이 아닌 열에 저장되고 쿼리 처리는 CPU 캐싱을 최대한 활용하기 위해 벡터화된다. 태블로(Tableau)와 같은 보고 솔루션에 대한 기본 연결은 지원하지 않지만 이러한 솔루션은 어렵지 않게 수동으로 실행할 수 있다. C++에 대한 바인딩 외에, 덕DB는 분석용으로 가장 일반적인 프로그래밍 환경인 파이썬과 R에 기본적으로 연결된다.   엣지DB '엣지'는 그래프 데이터베이스에서 긴밀하게 연결된 데이터 집합의 두 개체 또는 노드 간의 연결이나 관계(예를 들어 고객과 주문, 또는 주문과 제품)를 지칭하는 용어다. 엣지DB(EdgeDB)는 포스트그레SQL 코어와 여기서 제공하는 모든 속성(예를 들어 ACID 트랜잭션과 고도의 안정성)을 사용해 강한 필드 유형, SQL과 비슷한 쿼리 언어가 있는 이른바 객체-관계 데이터베이스를 구축한...

데이터베이스 마이SQL

2020.03.31

데이터베이스가 필요하다면 보통은 마이SQL(MySQL), 마리아DB(MariaDB), 포스트그레SQL(PostgreSQL), SQL라이트(SQLite), 몽고DB(MongoDB)와 같은 것 중 하나를 선택하면 된다. 그러나 이와 같은 '팔방미인형' 데이터베이스로 부족할 때가 있다. 어느 쪽을 선택하기도 애매한, 중간에 위치한 용도로 사용하기 위해 더 특화된 데이터베이스가 필요한 경우다. 메모리 분석부터 키-값 저장소와 시계열 시스템까지 다양한 분야에서 쓰이는 9가지 색다른 데이터베이스를 알아보자.     덕DB 'SQL OLAP 시스템'이라고 하면 보통 거대한 데이터 크런칭 시스템이나 끝없이 뻗어 있는 데이터 웨어하우스 클러스터가 연상된다. 분석 데이터베이스에 대한 덕DB(DuckDB)의 성격은 마이SQL과 포스트그레SQL에 대한 SQL라이트와 같다. 본격적인 OLAP 솔루션과 같은 수준의 규모로는 실행할 수 없지만 애초에 설계 목적은 로컬 데이터 집합에 대한 빠른 메모리 내 분석 처리를 제공하는 데 있다. 비록 규모는 더 작지만 덕DB 기능의 상당수는 대형 OLAP 제품의 기능에 대응한다. 데이터는 행이 아닌 열에 저장되고 쿼리 처리는 CPU 캐싱을 최대한 활용하기 위해 벡터화된다. 태블로(Tableau)와 같은 보고 솔루션에 대한 기본 연결은 지원하지 않지만 이러한 솔루션은 어렵지 않게 수동으로 실행할 수 있다. C++에 대한 바인딩 외에, 덕DB는 분석용으로 가장 일반적인 프로그래밍 환경인 파이썬과 R에 기본적으로 연결된다.   엣지DB '엣지'는 그래프 데이터베이스에서 긴밀하게 연결된 데이터 집합의 두 개체 또는 노드 간의 연결이나 관계(예를 들어 고객과 주문, 또는 주문과 제품)를 지칭하는 용어다. 엣지DB(EdgeDB)는 포스트그레SQL 코어와 여기서 제공하는 모든 속성(예를 들어 ACID 트랜잭션과 고도의 안정성)을 사용해 강한 필드 유형, SQL과 비슷한 쿼리 언어가 있는 이른바 객체-관계 데이터베이스를 구축한...

2020.03.31

칼럼 | 마이SQL과 리눅스 사례로 본 오픈소스 '성공 방정식'

오픈소스는 이제 프로그래밍 언어와 애플리케이션 플랫폼부터 머신러닝과 데이터 인프라까지 전 세계에서 가장 중요한 신기술 대부분의 동력이 됐다. 따라서 오픈소스 혁신이 더 필요하다. 문제는 오픈소스의 지속 가능성이다. 지난 몇 년 동안 이에 대해 많은 논의가 있었고, 일부 타당한 측면도 있었다.   그러나 가장 혁신적이고 지속 가능한 오픈소스는 단 한 명의 개인이나 기업에 전적으로 의존하는 경우가 거의 없다. 믿기 힘들다면, 가장 기본적인 오픈소스 프로젝트의 지난 수십 년을 살펴보자. 리눅스? 수많은 회사가 기여한다. 지난 10년 동안 인기가 급증한 포스트그레스큐엘(PostgreSQL)은 어떨까. 많은 기업의 기여자와 함께 진정한 커뮤니티의 노력으로 이런 성과를 만들었다. 더 최근의 쿠버네티스는 어떨까? 프로젝트를 처음 시작한 것은 구글이었지만 이제는 더 많은 회사가 개발에 기여하고 있다.   실제로 오픈소스가 작동하는 방식은 항상 같았다. 한 명 혹은 한 기업의 '희소성'이 아니라 불특정 다수가 참여하는 '풍부한' 사고방식에 기반을 두고 있다.   리눅스에서 배우기 오래전 2007년에 필자는 이러한 풍요 중심의 비즈니스 모델 아이디어에 대해 레드햇 사례를 언급한 바 있다. 코드는 무료고 풍부하지만, 이를 중심으로 한 서비스는 그렇지 않다. 따라서 레드햇과 다른 기여자가 소프트웨어를 무료로 제공할수록, 레드햇은 더 많은 혜택을 돌려받는다. 품질과 안정성에 대한 문지기(gatekeeper)로서 레드햇의 역할에 대한 요구가 더 커지기 때문이다.  레드햇의 사업 모델은 자유롭게 사용할 수 있는 오픈소스 소프트웨어의 '인증된 배포'를 제공하는 것이다. 기업이 원하는 특정한 구성에서 코드(그리고 연관된 모든 소프트웨어와 하드웨어에 대한 인증)를 확립하고 테스트하는 레드햇의 노력이 필수적이다.   중요한 점은, 만약 레드햇이 (현실과는 멀지만) 모든 리눅스 개발을 독점적으로 소유했다면, 지금의 레드햇 수익모델이 작동하지 않는...

오픈소스 마이SQL 리눅스

2020.02.27

오픈소스는 이제 프로그래밍 언어와 애플리케이션 플랫폼부터 머신러닝과 데이터 인프라까지 전 세계에서 가장 중요한 신기술 대부분의 동력이 됐다. 따라서 오픈소스 혁신이 더 필요하다. 문제는 오픈소스의 지속 가능성이다. 지난 몇 년 동안 이에 대해 많은 논의가 있었고, 일부 타당한 측면도 있었다.   그러나 가장 혁신적이고 지속 가능한 오픈소스는 단 한 명의 개인이나 기업에 전적으로 의존하는 경우가 거의 없다. 믿기 힘들다면, 가장 기본적인 오픈소스 프로젝트의 지난 수십 년을 살펴보자. 리눅스? 수많은 회사가 기여한다. 지난 10년 동안 인기가 급증한 포스트그레스큐엘(PostgreSQL)은 어떨까. 많은 기업의 기여자와 함께 진정한 커뮤니티의 노력으로 이런 성과를 만들었다. 더 최근의 쿠버네티스는 어떨까? 프로젝트를 처음 시작한 것은 구글이었지만 이제는 더 많은 회사가 개발에 기여하고 있다.   실제로 오픈소스가 작동하는 방식은 항상 같았다. 한 명 혹은 한 기업의 '희소성'이 아니라 불특정 다수가 참여하는 '풍부한' 사고방식에 기반을 두고 있다.   리눅스에서 배우기 오래전 2007년에 필자는 이러한 풍요 중심의 비즈니스 모델 아이디어에 대해 레드햇 사례를 언급한 바 있다. 코드는 무료고 풍부하지만, 이를 중심으로 한 서비스는 그렇지 않다. 따라서 레드햇과 다른 기여자가 소프트웨어를 무료로 제공할수록, 레드햇은 더 많은 혜택을 돌려받는다. 품질과 안정성에 대한 문지기(gatekeeper)로서 레드햇의 역할에 대한 요구가 더 커지기 때문이다.  레드햇의 사업 모델은 자유롭게 사용할 수 있는 오픈소스 소프트웨어의 '인증된 배포'를 제공하는 것이다. 기업이 원하는 특정한 구성에서 코드(그리고 연관된 모든 소프트웨어와 하드웨어에 대한 인증)를 확립하고 테스트하는 레드햇의 노력이 필수적이다.   중요한 점은, 만약 레드햇이 (현실과는 멀지만) 모든 리눅스 개발을 독점적으로 소유했다면, 지금의 레드햇 수익모델이 작동하지 않는...

2020.02.27

마이SQL·마리아DB의 '매력 만점' 신기능 7가지

지난 수년간 오픈소스 관계형 데이터베이스 관리 시스템인 마이SQL과 마리아DB는 새롭게 기능을 개선했다. 오랫동안 지속된 문제를 해결했고 전반적으로 성능을 향상하는 등 많은 변화가 있었다.   변화된 것이 너무 많아 마이 SQL과 마리아DB의 멋진 기능을 잊어버린 사용자가 많을 것이다. 여기서는 마이SQL, 마리아DB 또는 둘 모두에 추가된 신기능 7가지와 이를 사용해야 하는 이유를 살펴보자. JSON 지원 개발자 편의성과 탄력적인 확장성을 약속하면서 NoSQL 데이터베이스가 등장했을 때 많은 사람이 관계형 데이터베이스 기능을 개발 중인지 궁금해했다. 답은 간단하다. 전혀 그렇지 않았다. NoSQL 시스템은 편리하고 유연하지만 스키마(Scheme)와 테이블(Table)이 항상 자리를 지키고 있다. 게다가 많은 구식 관계형 데이터베이스, 마이SQL, 마리아DB는 NoSQL을 모방하고 JSON 지원을 표준 기능으로 추가했다. 그 덕분에 필요할 때 NoSQL과 함께 같은 데이터베이스 안에 일반적인 SQL도 사용할 수 있다. 예를 들어 마이SQL과 마리아DB의 JSON 지원을 통해 JSON 문서를 특수 설계된 테이블 칼럼에 삽입할 수 있다. 삽입된 JSON 데이터는 다른 데이터 칼럼에 사용한 것과 같은 종류의 설정을 이용해 자동으로 검증할 수 있다. 데이터를 JSON 문서나 단순한 스칼라(Scalar)로 검색할 수 있으며 생성하거나 가상의 칼럼을 이용해 JSON 색인과 비슷한 효과를 낼 수 있다. 그러나 여기에서 기억해야 할 것이 2가지 있다. 우선, 마이SQL과 마리아DB의 JSON 처리 기능 세트는 유사하지만 서로 간단히 대체할 수는 없다. 둘째, 네이티브 JSON 칼럼 데이터 유형의 마이SQL 및 마리아DB 이행도 다를 수 있다. 이 때문에 약간의 호환성 문제가 발생하며 두 데이터베이스 사이에서 데이터를 마이그레이션하거나 동기화할 때 이 부분을 찾아야 한다. 리소스 그룹(마이SQL만 해당) 모든 데이터베이스 작업은 중요하지만 더 긴급한 것이...

오픈소스 데이터베이스 DBMS 마리아DB 마이SQL

2019.06.28

지난 수년간 오픈소스 관계형 데이터베이스 관리 시스템인 마이SQL과 마리아DB는 새롭게 기능을 개선했다. 오랫동안 지속된 문제를 해결했고 전반적으로 성능을 향상하는 등 많은 변화가 있었다.   변화된 것이 너무 많아 마이 SQL과 마리아DB의 멋진 기능을 잊어버린 사용자가 많을 것이다. 여기서는 마이SQL, 마리아DB 또는 둘 모두에 추가된 신기능 7가지와 이를 사용해야 하는 이유를 살펴보자. JSON 지원 개발자 편의성과 탄력적인 확장성을 약속하면서 NoSQL 데이터베이스가 등장했을 때 많은 사람이 관계형 데이터베이스 기능을 개발 중인지 궁금해했다. 답은 간단하다. 전혀 그렇지 않았다. NoSQL 시스템은 편리하고 유연하지만 스키마(Scheme)와 테이블(Table)이 항상 자리를 지키고 있다. 게다가 많은 구식 관계형 데이터베이스, 마이SQL, 마리아DB는 NoSQL을 모방하고 JSON 지원을 표준 기능으로 추가했다. 그 덕분에 필요할 때 NoSQL과 함께 같은 데이터베이스 안에 일반적인 SQL도 사용할 수 있다. 예를 들어 마이SQL과 마리아DB의 JSON 지원을 통해 JSON 문서를 특수 설계된 테이블 칼럼에 삽입할 수 있다. 삽입된 JSON 데이터는 다른 데이터 칼럼에 사용한 것과 같은 종류의 설정을 이용해 자동으로 검증할 수 있다. 데이터를 JSON 문서나 단순한 스칼라(Scalar)로 검색할 수 있으며 생성하거나 가상의 칼럼을 이용해 JSON 색인과 비슷한 효과를 낼 수 있다. 그러나 여기에서 기억해야 할 것이 2가지 있다. 우선, 마이SQL과 마리아DB의 JSON 처리 기능 세트는 유사하지만 서로 간단히 대체할 수는 없다. 둘째, 네이티브 JSON 칼럼 데이터 유형의 마이SQL 및 마리아DB 이행도 다를 수 있다. 이 때문에 약간의 호환성 문제가 발생하며 두 데이터베이스 사이에서 데이터를 마이그레이션하거나 동기화할 때 이 부분을 찾아야 한다. 리소스 그룹(마이SQL만 해당) 모든 데이터베이스 작업은 중요하지만 더 긴급한 것이...

2019.06.28

칼럼 | 결국은 마리아DB가 마이SQL을 이긴다

돌아보면 처음부터 마리아DB(MariaDB)가 탄생하는 그런 상황이 와서는 안 되는 것이었다. 마이SQL(MySQL)과 마리아DB 모두를 만든 몬티 와이드니어스는 한때 오라클을 위해 마이SQL 상용 버전 개발 작업을 했지만, 이후 마이SQL의 본래 정신으로 되돌아가 마리아DB를 내놓았다. 현재 마리아DB는 매우 인기있는 데이터베이스다. 어느 정도인가 하면 DB-엔진(DB-Engines)이 집계한 총 343개 데이터베이스 소프트웨어 중 14위를 차지할 정도다. H베이스(Hbase), 아마존 다이나모DB(DynamoDB) 등 널리 알려진 거의 모든 데이터베이스보다 더 인기를 얻고 있다. 심지어 마이SQL의 인기가 정체 혹은 줄고 있는 사이 마리아DB는 꾸준히 상승하고 있다. 마리아DB의 순위가 얼마나 놀라운 것인지 실감이 되지 않는다면, 마리아DB의 순위가 수직상승한 기간을 가늠해 보는 것으로 충분하다. 2009년 처음 발표된 이후 2013년 9월 34위에 이름을 올렸고 2016년 2월 23위, 2017년 2월 20위까지 치고 올라갔다. 그리고 앞서 언급한 것처럼 현재는 14위다. 마리아DB가 이처럼 급상승한 이유는 무엇일까? 아마도 오라클을 먼저 말하는 게 옳을 것이다. 오라클은 마이SQL에 상당한 투자를 계속하고 있지만, 마이SQL 개발 프로젝트에 참여해 온 오픈소스 개발자 대부분은 현재 @oracle.com 이메일을 사용하지 않는다. 즉 개발에서 손을 뺐다. 레드햇 엔터프라이즈 리눅스 같은 주요 리눅스 배포판도 일찌감치 마이SQL에서 마리아DB로 전환했다. 오픈소스의 자유 정신은 모든 사용자에게 중요하지 않을 수 있지만, 리눅스 업체에는 가장 중요한 가치다. 따라서 이들 업체가 마이SQL 대신 빠르게 마리아DB로 전환한 것은 이해가 되는 대목이다. 결국 현재 마리아DB는 개발자가 리눅스 배포판을 설치했을 때 처음 접하는 기본 데이터베이스 자리, 즉, 그동안 마이SQL이 누렸던 바로 그 자리를 차지하고 있다. 그 사이 마이SQL 프...

오라클 오픈소스 마리아DB 마이SQL

2018.09.06

돌아보면 처음부터 마리아DB(MariaDB)가 탄생하는 그런 상황이 와서는 안 되는 것이었다. 마이SQL(MySQL)과 마리아DB 모두를 만든 몬티 와이드니어스는 한때 오라클을 위해 마이SQL 상용 버전 개발 작업을 했지만, 이후 마이SQL의 본래 정신으로 되돌아가 마리아DB를 내놓았다. 현재 마리아DB는 매우 인기있는 데이터베이스다. 어느 정도인가 하면 DB-엔진(DB-Engines)이 집계한 총 343개 데이터베이스 소프트웨어 중 14위를 차지할 정도다. H베이스(Hbase), 아마존 다이나모DB(DynamoDB) 등 널리 알려진 거의 모든 데이터베이스보다 더 인기를 얻고 있다. 심지어 마이SQL의 인기가 정체 혹은 줄고 있는 사이 마리아DB는 꾸준히 상승하고 있다. 마리아DB의 순위가 얼마나 놀라운 것인지 실감이 되지 않는다면, 마리아DB의 순위가 수직상승한 기간을 가늠해 보는 것으로 충분하다. 2009년 처음 발표된 이후 2013년 9월 34위에 이름을 올렸고 2016년 2월 23위, 2017년 2월 20위까지 치고 올라갔다. 그리고 앞서 언급한 것처럼 현재는 14위다. 마리아DB가 이처럼 급상승한 이유는 무엇일까? 아마도 오라클을 먼저 말하는 게 옳을 것이다. 오라클은 마이SQL에 상당한 투자를 계속하고 있지만, 마이SQL 개발 프로젝트에 참여해 온 오픈소스 개발자 대부분은 현재 @oracle.com 이메일을 사용하지 않는다. 즉 개발에서 손을 뺐다. 레드햇 엔터프라이즈 리눅스 같은 주요 리눅스 배포판도 일찌감치 마이SQL에서 마리아DB로 전환했다. 오픈소스의 자유 정신은 모든 사용자에게 중요하지 않을 수 있지만, 리눅스 업체에는 가장 중요한 가치다. 따라서 이들 업체가 마이SQL 대신 빠르게 마리아DB로 전환한 것은 이해가 되는 대목이다. 결국 현재 마리아DB는 개발자가 리눅스 배포판을 설치했을 때 처음 접하는 기본 데이터베이스 자리, 즉, 그동안 마이SQL이 누렸던 바로 그 자리를 차지하고 있다. 그 사이 마이SQL 프...

2018.09.06

마이SQL 관리자를 위한 오픈소스 추천 툴 5가지

데이터베이스 관리자(DBA)에게 데이터베이스 실행 성능을 최상으로 유지하는 일은 접시 돌리기와 비슷하다. 민첩성, 집중력, 빠른 대응, 냉철한 두뇌가 필요하고 가끔은 위기 상황을 알리는 구경꾼의 외침도 필요하다. 데이터베이스는 거의 모든 애플리케이션의 성공적인 운영을 위한 핵심 요소다. 따라서 조직의 데이터를 책임지는 DBA라면 데이터베이스 관리 프로세스를 능률화하고 일상적인 유지관리 작업을 간소화하는 신뢰할 만한 툴을 반드시 갖춰야 한다. DBA에게는 원활한 시스템 운영을 위한 유용한 툴이 필요하다. 그렇다면 MySQL 관리자를 위한 검증된 툴은 무엇일까? 필자가 선정한 MySQL 관리자를 위한 최고의 오픈소스 툴 5가지를 살펴보고 일상적인 MySQL 관리 작업 측면에서 각각의 가치에 대해 알아보자. 각 툴에는 깃허브(GitHub) 리포지토리 링크와 현재 기준 깃허브 별점을 첨부했다. Mycli Mycli 프로젝트는 MySQL 명령줄 자동 완성 및 구문 하이라이트 기능을 제공한다. 관리자에게 가장 인기 있는 MySQL 툴 중 하나다. 많은 MySQL DBA는 점프 호스트, 이중 요소 인증과 같은 보안 제약으로 인해 명령줄로 시스템에 접근할 수밖에 없다. 이러한 경우 MySQL 워크벤치(Workbench), Monyog 등의 편리한 GUI 툴을 사용할 수 없다. 명령줄에서는 대부분의 시간을 검정색 바탕에 흰 글씨의 터미널 화면을 보면서 보낸다. 그래서 Mycli의 가장 좋은 점 중 하나는 풍부한 구문 하이라이트 기능이다. 이 기능을 통해 예를 들어 WHERE 절에서 함수 및 연산자를 쿼리 문자열과 시각적으로 구분할 수 있다. 1줄짜리 짧은 쿼리에서는 별 효용성이 없겠지만, 두 개 이상 테이블을 대상으로 JOIN 연산을 수행하는 쿼리에서는 큰 효과를 발휘한다. 인덱싱된 열을 사용해서 JOIN하기? WHERE 절에서 선행 와일드카드를 사용해 필터링하기? Mycli는 여러 줄의 쿼리와 구문 하이라이트를 지원하므로 쿼...

데이터베이스 MySQL 마이SQL DBA

2017.12.18

데이터베이스 관리자(DBA)에게 데이터베이스 실행 성능을 최상으로 유지하는 일은 접시 돌리기와 비슷하다. 민첩성, 집중력, 빠른 대응, 냉철한 두뇌가 필요하고 가끔은 위기 상황을 알리는 구경꾼의 외침도 필요하다. 데이터베이스는 거의 모든 애플리케이션의 성공적인 운영을 위한 핵심 요소다. 따라서 조직의 데이터를 책임지는 DBA라면 데이터베이스 관리 프로세스를 능률화하고 일상적인 유지관리 작업을 간소화하는 신뢰할 만한 툴을 반드시 갖춰야 한다. DBA에게는 원활한 시스템 운영을 위한 유용한 툴이 필요하다. 그렇다면 MySQL 관리자를 위한 검증된 툴은 무엇일까? 필자가 선정한 MySQL 관리자를 위한 최고의 오픈소스 툴 5가지를 살펴보고 일상적인 MySQL 관리 작업 측면에서 각각의 가치에 대해 알아보자. 각 툴에는 깃허브(GitHub) 리포지토리 링크와 현재 기준 깃허브 별점을 첨부했다. Mycli Mycli 프로젝트는 MySQL 명령줄 자동 완성 및 구문 하이라이트 기능을 제공한다. 관리자에게 가장 인기 있는 MySQL 툴 중 하나다. 많은 MySQL DBA는 점프 호스트, 이중 요소 인증과 같은 보안 제약으로 인해 명령줄로 시스템에 접근할 수밖에 없다. 이러한 경우 MySQL 워크벤치(Workbench), Monyog 등의 편리한 GUI 툴을 사용할 수 없다. 명령줄에서는 대부분의 시간을 검정색 바탕에 흰 글씨의 터미널 화면을 보면서 보낸다. 그래서 Mycli의 가장 좋은 점 중 하나는 풍부한 구문 하이라이트 기능이다. 이 기능을 통해 예를 들어 WHERE 절에서 함수 및 연산자를 쿼리 문자열과 시각적으로 구분할 수 있다. 1줄짜리 짧은 쿼리에서는 별 효용성이 없겠지만, 두 개 이상 테이블을 대상으로 JOIN 연산을 수행하는 쿼리에서는 큰 효과를 발휘한다. 인덱싱된 열을 사용해서 JOIN하기? WHERE 절에서 선행 와일드카드를 사용해 필터링하기? Mycli는 여러 줄의 쿼리와 구문 하이라이트를 지원하므로 쿼...

2017.12.18

마이SQL 8.0 베타 공개··· 유니코드·JSON 등 개선

마이SQL은 많은 웹 애플리케이션 스택에 표준 요소로 사용되는 유명 오픈소스 데이터베이스다. 최근 마이SQL 8.0 버전의 첫 RC 버전이 공개됐다. 주요 기능은 다음과 같다. - 유니코드 9.0용 퍼스크 클래스 지원 - 윈도우 함수와 회귀 SQL 문법 지원 - 네이티브 JSON 데이터와 문서 스토어 기능 지원 강화 8.0 버전을 내놓으면서 마이SQL은 기존 5.5버전에서 숫자를 많이 건너뛰었다. 6.0버전은 좋은 평가를 받지 못했고 7.0은 마이SQL 클러스터링 버전이었다. 마이SQL은 8.0 발표 일정을 못박지 않았지만 기본적으로 매 18~24개월마다 새로운 버전을 내놓는다. 가장 최근의 발표가 2015년 10월 21일에 나온 마이SQL 5.7이었으므로, 마이SQL 8.0의 최종 버전은 오는 10월 경 나올 것으로 보인다. 표준 유니코드 관련 문제 해결 이번 마이SQL 8.0 버전의 가장 큰 변화이자 논쟁거리는 기본값으로 유니코드를 적용하는 것이다. 마이SQL은 유니코드 관련해서 꽤 오랫동안 골치를 앓았다. 마이SQL 8.0에서 이 문제 중 상당수가 해결될 것으로 보인다. 먼저 마이SQL 8.0은 더이상 기본 인코딩으로 latin1을 사용할 수 없다. 대신 utf8mb4을 기본 캐릭터로 추천한다. utf8mb4은 현재 비판을 받고 있는 utf8mb3 캐릭터 세트보다 더 빠르고 더 유연한 데이터 정렬을 지원한다. 또한, 향상된 유니코드는 넌웨스턴(non-Western) 문자 세트는 물론 이모티콘도 지원할 예정이다. 윈도우 함수 지원 마이SQL 8.0은 윈도우 함수를 지원한다. 쿼리에서 개별 열에 접근을 허용하면서도 여러 열에 걸쳐 총량을 계산한다. 기존 마이SQL에서도 데이터베이스의 윈도우 함수 지원 없이 마이SQL 내에서 이 작업을 처리할 수 있었지만 불편하고 느렸다. 마이SQL은 이를 해결하기 위해 표준 OVER SQL 키워드를 통해 윈도우 함수를 추가했다. 마이SQL의 경쟁 소프트웨어인 포스트그래SQL(Postg...

MySQL 마이SQL

2017.09.29

마이SQL은 많은 웹 애플리케이션 스택에 표준 요소로 사용되는 유명 오픈소스 데이터베이스다. 최근 마이SQL 8.0 버전의 첫 RC 버전이 공개됐다. 주요 기능은 다음과 같다. - 유니코드 9.0용 퍼스크 클래스 지원 - 윈도우 함수와 회귀 SQL 문법 지원 - 네이티브 JSON 데이터와 문서 스토어 기능 지원 강화 8.0 버전을 내놓으면서 마이SQL은 기존 5.5버전에서 숫자를 많이 건너뛰었다. 6.0버전은 좋은 평가를 받지 못했고 7.0은 마이SQL 클러스터링 버전이었다. 마이SQL은 8.0 발표 일정을 못박지 않았지만 기본적으로 매 18~24개월마다 새로운 버전을 내놓는다. 가장 최근의 발표가 2015년 10월 21일에 나온 마이SQL 5.7이었으므로, 마이SQL 8.0의 최종 버전은 오는 10월 경 나올 것으로 보인다. 표준 유니코드 관련 문제 해결 이번 마이SQL 8.0 버전의 가장 큰 변화이자 논쟁거리는 기본값으로 유니코드를 적용하는 것이다. 마이SQL은 유니코드 관련해서 꽤 오랫동안 골치를 앓았다. 마이SQL 8.0에서 이 문제 중 상당수가 해결될 것으로 보인다. 먼저 마이SQL 8.0은 더이상 기본 인코딩으로 latin1을 사용할 수 없다. 대신 utf8mb4을 기본 캐릭터로 추천한다. utf8mb4은 현재 비판을 받고 있는 utf8mb3 캐릭터 세트보다 더 빠르고 더 유연한 데이터 정렬을 지원한다. 또한, 향상된 유니코드는 넌웨스턴(non-Western) 문자 세트는 물론 이모티콘도 지원할 예정이다. 윈도우 함수 지원 마이SQL 8.0은 윈도우 함수를 지원한다. 쿼리에서 개별 열에 접근을 허용하면서도 여러 열에 걸쳐 총량을 계산한다. 기존 마이SQL에서도 데이터베이스의 윈도우 함수 지원 없이 마이SQL 내에서 이 작업을 처리할 수 있었지만 불편하고 느렸다. 마이SQL은 이를 해결하기 위해 표준 OVER SQL 키워드를 통해 윈도우 함수를 추가했다. 마이SQL의 경쟁 소프트웨어인 포스트그래SQL(Postg...

2017.09.29

모바일 앱 개발자 주의 사항 '백엔드 보안 확보'

개발자는 애플리케이션 코드에 보안을 적용하고 애플리케이션에서 데이터를 처리하는 방법을 보호해야 하지만, 이른바 하스피털가운(HospitalGown) 보안 문제가 보여주는 것처럼 백엔드 서버와 데이터 저장소가 어떻게 구성됐는지도 알아야 한다. 애플리케이션 보안은 단순히 개발자의 문제가 아니다. IT인력과 보안팀도 인프라 및 구축 및 보안 제어 이행에서 실행할 역할이 있다. IT관리자가 앱의 백엔드 서버를 위한 보안 기본 사항을 잊으면 개발자의 훌륭한 보안 결정을 갉아먹게 된다. 모바일 보안기업 앱소러티(Appthority)의 연구원들은 최근 (기업 IT에서 제공하고 관리하는 모바일 기기뿐 아니라 BYOD 시나리오의 개인용 장치를 포함하여) 기업 기기에 설치된 앱을 분석하고 백엔드 서버에 보안 통제가 없어서 데이터가 노출되고 있는 1,000개 이상의 앱을 발견했다. 수집된 데이터를 마이닝하고 분석하기 위해 사용자 데이터와 분석 툴을 저장하는 데이터베이스를 관리하는 서버는 방화벽이 없었고 인증이 필요 없었으며 인터넷에서 공개적으로 접근할 수 있었다. 앱소러티의 보안 연구 책임자 세스 하디에 따르면, 앱소러티는 1,000개의 앱이 2만 1,000개 이상의 개방된 엘라스틱서치(Elasticsearch) 서버에 연결돼 있었으며 약 43TB의 데이터가 노출됐다. 노출된 데이터에는 비밀번호, 위치, 이동 및 결제 세부사항, 이메일과 전화번호 등의 기업 프로필 데이터, 유통사 고객 데이터 등의 PII(Personally Identifiable Information)가 포함되어 있었다. 연구원들은 분석 보고서에서 이러한 유형의 정보는 사기 및 크리덴셜 기반 공격에 사용하거나 피싱 등의 2차 공격에 사용할 수 있다. 데이터는 여전히 구멍이 난 서버에 있었고 ‘승인되지 않은 당사자들이 복사하거나 다운로드할 위험에’ 여전히 노출되어 있었기 때문에 사용자가 장치에서 앱을 삭제한다 하더라도 데이터 노출은 끝났지 않았다고 밝혔다. 승인되지...

CSO 카우치DB 엘라스틱서치 MongoDB CouchDB 카우치베이스 농기계 하스피털가운 HospitalGown 앱소러티 레디스 Redis 랜섬웨어 사물인터넷 마이닝 데이터베이스 피싱 개발 MySQL CISO 코드 BYOD 몽고DB 랜섬 마이SQL CouchBase

2017.06.14

개발자는 애플리케이션 코드에 보안을 적용하고 애플리케이션에서 데이터를 처리하는 방법을 보호해야 하지만, 이른바 하스피털가운(HospitalGown) 보안 문제가 보여주는 것처럼 백엔드 서버와 데이터 저장소가 어떻게 구성됐는지도 알아야 한다. 애플리케이션 보안은 단순히 개발자의 문제가 아니다. IT인력과 보안팀도 인프라 및 구축 및 보안 제어 이행에서 실행할 역할이 있다. IT관리자가 앱의 백엔드 서버를 위한 보안 기본 사항을 잊으면 개발자의 훌륭한 보안 결정을 갉아먹게 된다. 모바일 보안기업 앱소러티(Appthority)의 연구원들은 최근 (기업 IT에서 제공하고 관리하는 모바일 기기뿐 아니라 BYOD 시나리오의 개인용 장치를 포함하여) 기업 기기에 설치된 앱을 분석하고 백엔드 서버에 보안 통제가 없어서 데이터가 노출되고 있는 1,000개 이상의 앱을 발견했다. 수집된 데이터를 마이닝하고 분석하기 위해 사용자 데이터와 분석 툴을 저장하는 데이터베이스를 관리하는 서버는 방화벽이 없었고 인증이 필요 없었으며 인터넷에서 공개적으로 접근할 수 있었다. 앱소러티의 보안 연구 책임자 세스 하디에 따르면, 앱소러티는 1,000개의 앱이 2만 1,000개 이상의 개방된 엘라스틱서치(Elasticsearch) 서버에 연결돼 있었으며 약 43TB의 데이터가 노출됐다. 노출된 데이터에는 비밀번호, 위치, 이동 및 결제 세부사항, 이메일과 전화번호 등의 기업 프로필 데이터, 유통사 고객 데이터 등의 PII(Personally Identifiable Information)가 포함되어 있었다. 연구원들은 분석 보고서에서 이러한 유형의 정보는 사기 및 크리덴셜 기반 공격에 사용하거나 피싱 등의 2차 공격에 사용할 수 있다. 데이터는 여전히 구멍이 난 서버에 있었고 ‘승인되지 않은 당사자들이 복사하거나 다운로드할 위험에’ 여전히 노출되어 있었기 때문에 사용자가 장치에서 앱을 삭제한다 하더라도 데이터 노출은 끝났지 않았다고 밝혔다. 승인되지...

2017.06.14

ITW Survey | 국내 마이SQL 사용자 57% "마이SQL 미래 불투명"

국내 무료 DBMS 사용자 10명 중 6명 가량은 마이SQL을 사용하는 것으로 나타났다. 마이SQL은 대표적인 오픈소스 DBMS이자 현재 전세계적으로 가장 널리 사용되는 무료 DBMS다. 그러나 이러한 '마이SQL 천하'가 계속될 수 있을지는 미지수다. 마리아DB라는 다크호스가 급부상하고 있기 때문이다. DBMS(DataBase Management System)는 비교적 고가의 소프트웨어 속한다. 이 때문에 많은 기업과 기관, 개인사용자들이 무료 혹은 오픈소스 DBMS를 사용한다. 이렇게 사용할 수 있는 무료 DBMS는 마이SQL, MS SQL 서버 익스프레스, 포스트그리SQL, 아파치 더비, 파이어버드 SQL 등 매우 다양하다. 한국IDG(대표 박형미)는 IT월드 홈페이지(www.itworld.co.kr)에서 온라인 설문조사 방식으로 국내 무료 DBMS 사용실태를 조사했다. 2월 8일부터 3월말까지 약 2달 동안 진행됐고 총 1,163명이 설문에 참여했다.                            <현재 사용하고 있는 무료 DBMS는?> 먼저 현재 사용하고 있는 무료 DBMS가 무엇인지 물었다. 예상대로 마이SQL이 전체의 57.1%로 가장 많았다. 마이SQL은 전세계적으로 가장 널리 사용되는 오픈소스 DBMS이고 특히 최근 들어 윈도우 환경에 대한 개선이 집중적으로 이루어져 현재는 크로스 플랫폼 DBMS로 명실상부 자리를 잡았다는 평가를 받고 있다. 마이SQL에 이어 MS SQL 서버 익스프레스(12.7%), 포스트그리SQL(6.4%)가 2~3위를 찾지했고 마리아DB(0.8%), 아파치 더비(0.8%), 파이어버드 SQL(0.8%) 사용자는 매우 적었다. 이러한 DBMS가 주로 사용되는 곳은 실제 상용 서비스보다는 개발 부문이었다. 절반 가량인...

DBMS MS SQL 서버 익스프레스 마리아DB 마이SQL 포스트그리SQL

2013.04.22

국내 무료 DBMS 사용자 10명 중 6명 가량은 마이SQL을 사용하는 것으로 나타났다. 마이SQL은 대표적인 오픈소스 DBMS이자 현재 전세계적으로 가장 널리 사용되는 무료 DBMS다. 그러나 이러한 '마이SQL 천하'가 계속될 수 있을지는 미지수다. 마리아DB라는 다크호스가 급부상하고 있기 때문이다. DBMS(DataBase Management System)는 비교적 고가의 소프트웨어 속한다. 이 때문에 많은 기업과 기관, 개인사용자들이 무료 혹은 오픈소스 DBMS를 사용한다. 이렇게 사용할 수 있는 무료 DBMS는 마이SQL, MS SQL 서버 익스프레스, 포스트그리SQL, 아파치 더비, 파이어버드 SQL 등 매우 다양하다. 한국IDG(대표 박형미)는 IT월드 홈페이지(www.itworld.co.kr)에서 온라인 설문조사 방식으로 국내 무료 DBMS 사용실태를 조사했다. 2월 8일부터 3월말까지 약 2달 동안 진행됐고 총 1,163명이 설문에 참여했다.                            <현재 사용하고 있는 무료 DBMS는?> 먼저 현재 사용하고 있는 무료 DBMS가 무엇인지 물었다. 예상대로 마이SQL이 전체의 57.1%로 가장 많았다. 마이SQL은 전세계적으로 가장 널리 사용되는 오픈소스 DBMS이고 특히 최근 들어 윈도우 환경에 대한 개선이 집중적으로 이루어져 현재는 크로스 플랫폼 DBMS로 명실상부 자리를 잡았다는 평가를 받고 있다. 마이SQL에 이어 MS SQL 서버 익스프레스(12.7%), 포스트그리SQL(6.4%)가 2~3위를 찾지했고 마리아DB(0.8%), 아파치 더비(0.8%), 파이어버드 SQL(0.8%) 사용자는 매우 적었다. 이러한 DBMS가 주로 사용되는 곳은 실제 상용 서비스보다는 개발 부문이었다. 절반 가량인...

2013.04.22

회사명:한국IDG 제호: ITWorld 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아00743 등록일자 : 2009년 01월 19일

발행인 : 박형미 편집인 : 박재곤 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2022 International Data Group. All rights reserved.

10.4.0.6