전체 글
-
MariaDB 10의 NoSQL 기능과 MySQL의 Json 관련 UDFMaria DB 2016. 1. 18. 22:21
MariaDB 10에서는 Dynamic Column이라는 이름으로 NoSQL적인 기능을 제공하고 있다. 개념 자체는 간단한데 BLOB 컬럼에 JSON을 저장한 뒤, JSON에서 특정 컬럼의 값을 조회한다던가 특정 컬럼을 추가/삭제하는 기능을 제공한다.간단한 예는 MariaDB Blog와 Manual에서 볼 수 있다. 과거에 조사할 때는 Index 를 걸 수는 없는 것으로 기억한다. (지금도 그런 듯 하다)기능 자체는 간단하고 Index scan도 사용할 수 없지만, 특정 용도에서는 유용하게 사용될 수 있을 것 같다.MariaDB Dynamic Column 사용법간단한 사용 방법을 보자. 아래 예제는 mysql> 이라고 보이지만, client만 mysql일 뿐 실제는 MariaDB 10에서 실행한 결과이다..
-
마리아 DB 시장 조사MySQL_Section/운영 2016. 1. 18. 22:06
RDBMS의 엔진 순위- DB 엔진 순위는 매 달 업데이트 되며, 2015년 05월 전체 14위를 하고 있습니다. 전년도 대비 3단계 오르면 계속해서 상승 곡선을 그리고 있습니다.(DB-Engines : http://db-engines.com/en/ranking/relational+dbms) 2. 마리아 DB 국내외 사용 회사마리아DB 사용 회사 (국외)구글, 페이스북, 유튜브, 야후, 바이두, 위키피디아, 트위터, 링크드인, 아마존, 위드프레스 마리아DB 사용 회사 (국내)KT, 카카오, 삼성, SKT, 티켓몬스터, 네오위즈게임, 다음, 네이버 3. 라이선스 정책마리아DB는 GPL v2.0 라이선스로 배포되고 있으므로 이를 자사의 비공개 상용SW에 포함하여 패키지로 판매할 경우에는 GPL 의무사항에 따..
-
Txt 파일내에 있는 해당 데이터(단어)를 추출하여 Data Count 수행Perl 2015. 3. 25. 13:05
#!/usr/bin/perluse strict;use warnings;print "===============================\n";print " Perl_TEST(File Input & Count Data)\n";print "===============================\n\n";# ~.txt 파일을 open 해서 한 객체에 넣는다.open (INFO, 'test1.txt' );# 객체의 내용에 대하여 배열에 넣는다.my @lines = ;# 배열에 공백을 제거한다.@lines = trim(@lines);# Uniq 하게 추출된 단어들단 uniqq 배열에 넣는다.my @uniqq = uniqElements(@lines);# 객체를 닫는다, 이후부터는 배열만 가지고 이어간다.clo..
-
튜플(Tuple) 과 백쿰(VACUUM)Postgresql / PPAS/운영 2015. 1. 28. 23:17
PostgreSQL 은 다른 데이터베이스 시스템은 테이블(Table)에 데이터를 레코드(Record) 혹은 로우(Row)라고 한다. 그런데, PostgreSQL 에서는 튜플(Tuple)이라는 것이 존재합니다. 이 튜플은 PostgreSQL 에서 매우 중요한 요소 입니다. 이에 대해서 간략하게 알아 보도록 하겠습니다. 1. 통계정보 확보.먼저 이 튜플을 알기 위해서는 PostgreSQL 이 제공하는 통계정보를 알아 볼 필요가 있다. 이 통계정보에는 로우 갯수와 튜플 갯수등을 볼 수 있고 로우에 변화에 따라서 이들이 어떻게 변하는지를 추적할 수 있으며 이를 토대로 튜플이 과연 무엇인지를 알 수 있게 된다. 샘플 테이블을 만들자.testdb2=> CREATE TABLE tuple_test ( id NUMERI..
-
[PostgreSQL] LOCK TABLE table_name IN APostgresql / PPAS/Lock 2015. 1. 28. 16:42
기본적인 사용법은 다음과 같다.BEGIN WORK;LOCK TABLE table_name IN ACCESS EXCLUSIVE MODE;SELECT * FROM table_name WHERE id=10;Update table_name SET field1=test WHERE id=10;COMMIT WORK;ACCESS SHAREACCESS EXCLUSIVE 락 모드와 충돌이 난다. SELECT 와 ANALYZE 명령어가 사용될때 이 잠금 모드가 사용된다. 일반적으로 오직 읽기를 수행하거나, 갱신이 없는 명령어를 수행할때는 이 모드를 획득한다고 보면 된다.ROW SHAREEXCLUSIVE, ACCESS EXCLUSIVE 모드와 충돌이 난다. SELECT FOR UPDATE 명령시에 타겟이 되는 테이블에 이 잠..
-
[Postgresql] 오브젝트 변경 작업Postgresql / PPAS/운영 2015. 1. 20. 19:13
ALTER-- 컬럼 추가ALTER TABLE books ADD publication date;-- 컬럼 삭제ALTER TABLE books DROP publication;-- 컬럼 default값 추가ALTER TABLE books ALTER COLUMN id SET DEFAULT nextval('books_idx');-- 컬럼 default값 제거ALTER TABLE books ALTER id DROP DEFAULT;-- 컬럼 NOT NULL 세팅ALTER TABLE books ALTER COLUMN id SET NOT NULL;-- 컬럼 NOT NULL 제거ALTER TABLE books ALTER COLUMN id DROP NOT NULL;-- 테이블 이름 변경ALTER TABLE books REN..
-
LINUX 에서 NODE.JS 설치하기Java/jsp 2015. 1. 16. 14:39
오늘은 Linux 환경에서 Node.js 를 설치하기 위한 절차를 간략하게 정리해보도록 하겠습니다. Linux 환경에 Node.js를 설치하기 위한 방법으로는 binaray 를 이용한 방법과 compile을 이용한 방법이 있는데 여기에서는 compile을 이용한 방법에 대해서 설명하겠습니다.1. 선행조건Node.js 를 Linux 환경에 설치하기 위해서는 먼저, C/C++ compiler 와 OpenSSL libraries 가 준비되어 있어야 합니다. 만약 두 가지가 설치되어있지 않다면 아래와 같이 설치할 수 있다.12345# Redhat 계열 (ex. CentOS)sudo yum install gcc gcc-c++ openssl-devel curl make # Ubuntusudo apt-get inst..
-
MySQL 5.6 join IssueMySQL_Section/query 2015. 1. 5. 12:43
OverviewMySQL 오픈 소스 진영은 더이상 단순 데이터 처리에만 강한 DBMS이기를 거부합니다. 이제는 대용량 처리에 적합하도록 탈바꿈 중입니다.지금까지 MySQL에서는 단일 쓰레드로 Nested Loop 방식으로 쿼리를 처리하였기 때문에, 조인 건 수가 대형화될 수록 성능이 급속도로 악화되었습니다.MariaDB는 5.3버전부터 DB 엔진과 스토리지 엔진 간의 데이터 전송이 개선되었고, 조인 시 추가적인 블록 기반의 조인 알고리즘을 제공합니다. 물론 MySQL도 5.6버전부터는 관련 기능을 어느정도 지원합니다.변화하는 MariaDB에 대해 몇 가지 소개하도록 하겠습니다.Disk access optimization1) Index Condition PushdownMySQL/MariaDB는 구조적으로 ..