MongoDB

MongoDB는 학계와 전문 분야 모두에서 인기를 얻고 있습니다. 이 데이터베이스 시스템을 사용하면 구조화되지 않은 데이터를 매우 간단하게 저장할 수 있습니다. 일반적으로 이러한 유형의 데이터베이스는 쉽게 액세스 할 수있는 환경에 있어야합니다.
MongoDB의 전체 기사 ...

필터 표시
호스팅 필터
Host Me Host Filter

운영 시스템

디스크 공간

RAM 메모리

디스크 유형

CPU 코어

종류

신뢰 지표 Dream VPS
점수-8.6
Dream VPS Logo
Dream VPS

드림 VPS

STARTER
$3.75 /월간 간행물

리뷰 7


서버 위치


Dream VPS Servers in Hong Kong홍콩 Dream VPS Servers in Santa Clara Dream VPS Servers in New York미국 Dream VPS Servers in London영국 Dream VPS Servers in Amsterdam네덜란드 Dream VPS Servers in Frankfurt독일 Dream VPS Servers in Israel이스라엘
비교
점수-0
Heroku Logo
Heroku

Heroku

Hobby
$7 /월간 간행물


서버 위치


Heroku Servers in United States미국
비교
점수-0
Infra Networking Logo
Infra Networking

인프라 네트워킹

ALFA
$4.19 /월간 간행물


서버 위치


Infra Networking Servers in Jakarta인도네시아 Infra Networking Servers in Dallas미국 Infra Networking Servers in Dublin아일랜드 Infra Networking Servers in London영국 Infra Networking Servers in Frankfurt am Main독일 Infra Networking Servers in Singapore싱가포르 Infra Networking Servers in Amsterdam네덜란드 Infra Networking Servers in Uruguay우루과이
비교

MongoDB 데이터베이스 호스팅

 

MongoDB

 

최근 몇 년 동안 MongoDB는 학계와 전문 분야 모두에서 인기를 얻고 있습니다. 이 데이터베이스 시스템을 사용하면 구조화되지 않은 데이터를 매우 간단하게 저장할 수 있습니다.

 

일반적으로 이러한 유형의 데이터베이스는 쉽게 액세스 할 수있는 환경에 있어야합니다.이 데이터베이스를 사용하는 응용 프로그램은 일반적으로 물리적으로 먼 위치에서이를 수행해야하기 때문입니다. 이러한 요구를 감안할 때이 기사에서는 웹 호스팅 서비스를 사용하여 MongoDB에서 기본 작업을 저장하고 수행하는 방법을 제시합니다. 이 주제에 대한 논의는 클라우드에서 MongoDB 데이터베이스를 생성하고 관리하는 방법을 알고 자하는 사람들에게 유용합니다. 이러한 유형의 데이터베이스를 관리하기위한 솔루션을 제공하기 위해이 문서에서는 관리를위한 그래픽 도구도 제공합니다. 이 기사 전체에서 Java 프로그래밍 언어를 사용하여 웹 애플리케이션을 개발하는 기술에 중점을 둘 것입니다.

 

데이터베이스에 액세스하기 위해 무료 호스트에서 호스팅되는 웹 서비스가 개발됩니다. 서비스를 테스트하기 위해 Java 언어로 된 콘솔 애플리케이션이 개발됩니다. 마지막으로이 기사는 MongoDB 웹 서비스 및 데이터베이스를 테스트하고 모니터링하는 방법을 보여줍니다.

 

NoSQL이라는 용어는 SQL뿐만 아니라 SQL 만 의미합니다. 처음에는 다른 의미가 제안되었지만 커뮤니티에서 가장 많이 채택한 것은 이것입니다. NoSQL 데이터베이스는 대용량 데이터의 저장 및 처리를 용이하게하여 높은 확장 성을 허용하는 구조를 제공합니다.

 

현재 약 150 개의 서로 다른 NoSQL 데이터베이스가 있습니다. MongoDB는 방대한 문서와 관련 커뮤니티로 인해 새로운 팔로워를 확보하고 있습니다.

 

MongoDB 이동은 2009 년 초에 시작되었으며 그 이후로 스키마없는 지원, 쉬운 복제, 간단한 API, 다른 언어 용 드라이버, 조작 도구, 함수 업데이트 등과 같은 더 많은 기능과 기능이 MongoDB에 추가되었습니다.

 

NoSQL 데이터베이스 그룹은 대량의 데이터를 관리하고 확장 성 기능, REST 프로토콜, MapReduce (BOX 1 읽기) 및 기타 고성능 기능을 채택하는 애플리케이션 지향 데이터베이스로 구성됩니다.

 

상자 1 : MapReduce

 

MapReduce는 여러 컴퓨터 (클러스터)에 분산 된 데이터 세트에 대한 병렬 처리를 지원하기 위해 Google에서 도입 한 프로그래밍 모델입니다. 이 모델의 작동은지도와 축소라는 두 가지 기능을 기반으로합니다. 데이터가 클러스터 된 검색 통합을 수행하기 위해 요청자는 자신의 검색을 여러 컴퓨터에 동시에 보냅니다.

 

이때 요청자와 클러스터간에 매핑 (map)이 이루어지고 검색 결과 데이터를 그룹화 (축소)하여 검색 결과를 생성하여 요청자에게 전달한다.

 

약어 REST는 Representational state transfer를 나타냅니다. HTTP 호출 만 사용하는 분산 데이터 조작 (CRUD) 시스템에서 널리 사용되는 기술입니다. 이러한 유형의 호출은 프로그래밍을 단순화하고 프로그래머에게 저수준 작업을 추상화하여 웹 서비스에서 다양한 루틴을 구현할 수 있도록합니다. 기본적으로 데이터 삽입 (POST), 데이터 쿼리 (GET), 데이터 업데이트 (PUT) 및 데이터 삭제 (DELETE)에 대한 호출이 수행됩니다.

 

MongoDB

 

NoSQL로 시작할 때 가장 먼저 생각해야 할 것은 비교입니다. 우리가 이야기하는 데 실패 할 수 없었기 때문에 우리는 관계형 은행과 관련하여 주요 용어를 비교합니다.

MongoDB에서 각 문서는 동일한 컬렉션의 다른 문서와 완전히 구별 될 수 있지만 관계형 모델에서는 그렇지 않습니다. 일반적으로 데이터는 BSON (Binary JSON) 형식으로 작성됩니다.

 

다음 섹션에 제시된 단계를 따르려면 MongoDB를 로컬 컴퓨터에 설치할 필요가 없습니다.

 

로컬 컴퓨터에 설치하는 것은 더 빠르고 간단한 테스트를위한 것입니다. 독자가 자신의 컴퓨터에 MongoDB를 설치하고 조작하려는 경우 유용 할 수있는 몇 가지 초기 명령이 있습니다. 서비스 (데몬)를 실행하려면 다음 명령을 고려해야합니다 ./mongo. 서비스가 실행되면 명령 인터프리터 : / mongo를 시작할 수 있습니다. 데이터베이스 나열을위한 기본 명령은 다음과 같습니다. show DBS 또는 show databases. 데이터베이스 사용을 선택하려면 (존재하지 않는 경우 데이터베이스가 sqlMagazine으로 생성됨) : sqlMagazine을 사용하십시오. 대문자와 소문자가 다르다는 사실을 인식하는 것이 중요하므로이 세부 사항에주의하십시오.

 

MongoDB 도구

 

많은 명령을 내린 후 우리는 이미 전진 할 기반을 확보했습니다. 명령을 아는 것은 응용 프로그램을 개발하는 데 필수적이지만 관리를 위해 좋은 동맹 인 다른 그래픽 도구가 있습니다. 예를 들어 그림 1과 2는 MongoHub 소프트웨어에서 캡처되었습니다.

 

RockMongo 및 MongoVUE와 같은 MongoDB에 액세스하는 다른 도구가 있습니다. RockMongo 도구에는 PHP 구성에서 MongoDB 모듈을 활성화하는 것 외에도 다른 서비스 (PHP 및 Apache)가 필요합니다. 이 도구는 OpenShift의 표준으로 채택되었으므로 이에 대한 지식이 있으면 좋습니다.

 

MongoVUE 도구는 Microsoft Windows 운영 체제가 설치된 컴퓨터 전용입니다. 좋은 기능을 제공합니다.

 

Apple 운영 체제 사용자 (Mac OS 10.6.x 이상)의 경우 MongoHub 도구가 있습니다. 이 도구에 대한 특정 웹 사이트가 있지만.

 

응용 프로그램을 호스팅 할 계정 만들기

 

목표는 웹에서 데이터베이스를 사용할 수있게하고 웹에있는 응용 프로그램이나 다른 컴퓨터에 설치된 응용 프로그램에서 데이터베이스에 액세스 할 수 있도록하는 것입니다. 데이터베이스 호스팅을 위해 선택한 서비스는 OpenShift였습니다. 여기에서 사용자는 최대 3 개의 애플리케이션을 생성 할 수 있으며, 각 애플리케이션에서 Java, PHP, Phyton, Ruby 애플리케이션 등 여러 서비스를 생성 할 수 있습니다.

 

동일한 계정으로 더 많은 애플리케이션을 만들거나 다른 서비스 및 확장 성 리소스를 고용하려는 경우 유료 계정을 만들어야합니다. OpenShift는 PaaS라는 약어로 식별되는 서비스로서의 플랫폼을 제공합니다. 계정을 만드는 데 필요한 단계를 살펴 보겠습니다.

 

처음에 사용자는 OpenShift 포트 주소로 이동하여 옵션을 선택해야합니다. 그림과 같이 등록 화면이 나타납니다.

 

mongodb

 

데이터를 입력하고 & ldquo; 가입 & rdquo;을 클릭하세요. 등록을 확인하기 위해 이메일이 전송됩니다.이 이메일의 링크를 클릭하여 등록을 활성화하고 응용 프로그램을 만들려면 a가되어야합니다.

 

OpenShift 계정에 액세스 할 때 원하는 서비스를 생성 할 수 있으며 명령 줄로 애플리케이션에 액세스하는 방법도 제공되며 JBoss를 사용합니다.Developer Studio IDE 및 기타 다양한 리소스. 이 단계를 단계별로 용이하게하기 위해 로컬에서 개발 한 후 애플리케이션을 자동으로 생성합니다.

일부 설정은 OpenShift 계정에서 지정해야합니다. 계정에 액세스 한 후 & ldquo; 설정 & rdquo; 그림과 같이 섹션.

 

mongodb

 

텍스트 상자 & ldquo; 도메인 이름 & rdquo; 원하는 도메인의 이름을 입력해야합니다.이 테스트에서는 & ldquo; SQL magazine & rdquo;을 입력합니다. 이 이름 (최대 문자 수는 16 자)은 자유롭게 선택할 수 있지만 Java 프로젝트에서 사용되기 때문에 중요합니다. 그런 다음 & ldquo; 저장 & rdquo; 선택권.

 

이 단계를 완료하면 & ldquo; 응용 프로그램 & rdquo; 탭을 클릭하고 & ldquo; 지금 첫 번째 애플리케이션 만들기 & rdquo; 선택권. 우리가 만들 수있는 다양한 서비스 목록이 나타납니다. & ldquo; JBoss Application Server 7 & rdquo;을 선택하겠습니다. 그런 다음 응용 프로그램 이름을 선택하는 창이 표시됩니다.

 

이 이름은 자유롭게 선택할 수 있지만 즉시 필요하므로 기억하기 쉬운 이름이어야합니다. 이 테스트에서는 & ldquo; MongoDB & rdquo;를 입력합니다.

 

다음 단계는 & ldquo; 응용 프로그램 만들기 & rdquo;를 클릭하는 것입니다. 이 프로세스는 몇 초 또는 몇 분이 걸릴 수 있으며 프로세스가 완료 될 때까지 기다립니다. 이제 & ldquo; 응용 프로그램 & rdquo; 탭을 클릭하고 생성 된 애플리케이션을 클릭합니다.

 

이 시점에서 MongoDB를 애플리케이션에 추가 할 것입니다. 이렇게하려면 응용 프로그램을 클릭하십시오.이 예제에서는 & ldquo; mongodb & rdquo; 그런 다음 & ldquo; MongoDB 2.4 추가 & rdquo;를 클릭합니다. 정보 및 안내가있는 창을 열면 & ldquo; 애플리케이션 개요 페이지로 이동 & rdquo; 링크가 표시됩니다. 클릭해야하는 메시지가 표시되면 & ldquo; MongoDB 2.4 추가 & rdquo;를 클릭 할 수 있습니다.

 

그런 다음 & ldquo; 카트리지 추가 & rdquo;를 클릭합니다. 이 프로세스는 몇 초가 걸릴 수도 있습니다. 그러면 데이터베이스에 액세스하기위한 중요한 정보가있는 화면이 나타납니다.이 정보는 다음 단계에서 사용될 것이므로 기록하는 것이 중요합니다. 정보는 사용자 이름, 암호 및 데이터베이스 이름입니다.

 

현재 우리는 이미 우리가 처리 할 수있는 서버 (JBoss Application Server)와 NoSQL 데이터베이스 (MongoDB)를 가지고 있습니다. 이제이 은행에 액세스하기위한 웹 서비스와이 웹 서비스에 액세스하기위한 프로젝트를 작성하십시오.

 

응용 프로그램 개발

 

기본적으로 두 개의 응용 프로그램과 하나의 데이터베이스가 있습니다. 첫 번째 응용 프로그램은 데이터베이스에 대한 요청을 담당합니다. 이 응용 프로그램은 웹 서비스의 기능을 테스트하기위한 매우 간단한 예입니다. 두 번째 응용 프로그램 (웹 서비스)은 첫 번째 응용 프로그램에서 요청을 수신하고 데이터베이스에 액세스합니다.

 

첫 번째 응용 프로그램으로 이동하겠습니다. 필수 구성 요소는 Eclipse Kepler와 두 개의 API 라이브러리 (Application Program Interface) Jersey (jersey-client 및 jersey-core)입니다. 여기에 설명 된 단계별 과정을 용이하게하고 단순화하기 위해 Eclipse Kepler에서 Java 애플리케이션을 만들 것입니다.

 

단계별 설명을위한 이미지는 Mac OS 10.9.3 운영 체제를 사용하여 얻었지만 독자는 Microsoft Windows 또는 Linux 배포판을 사용할 수 있습니다.

 

Eclipse 액세스 내에서 : File, New, Project. 다음 창에서 & ldquo; Java Project & rdquo; & ldquo; 다음 & rdquo;을 클릭합니다. 그런 다음 프로젝트 이름을 입력하고 & ldquo; 마침 & rdquo; 옵션을 선택합니다.

이제 프로젝트에서 클래스를 만들어야합니다. 이렇게하려면 & ldquo; src & rdquo ;, & ldquo; New & rdquo ;, & ldquo; Class & rdquo;를 마우스 오른쪽 버튼으로 클릭하십시오.

 

다음 화면에서 클래스 이름을 입력하고 & ldquo; 기본 메서드 만들기 & rdquo; 옵션을 선택해야합니다. & ldquo; public static void main (String [] args) & rdquo ;, & ldquo; Finish & rdquo;를 클릭합니다.

이 자바 프로젝트는 웹에서 호스팅 될 MongoDB 데이터베이스에 정보를 기록하는 것을 목표로합니다. 사용되는 호스팅 유형은 데이터베이스에 대한 외부 액세스를 허용합니다. 즉, 모든 응용 프로그램이 데이터베이스 서버에 액세스 할 수 있지만 로컬 시스템의 포트를 리디렉션해야합니다.

 

제어 할 수없는 컴퓨터 나 로컬 포트에 계속 액세스해야하는 컴퓨터, 심지어 모바일 장치의 경우에도 매우 복잡한 작업이 될 수 있으므로 포트 리디렉션은 최선의 방법이 아닙니다. 이런 식으로 우리의 Java 프로젝트는 웹 서비스를 통해 데이터베이스에 액세스합니다.

 

코드를 입력하기 전에 웹 서비스에 사용할 두 개의 라이브러리를 추가해 보겠습니다. 우리가 사용할 두 라이브러리는 Jersey 1.18 API에서 가져온 것입니다. 프로젝트에 추가하려면 다운로드 후 프로젝트 폴더에 복사하고 프로젝트 이름을 마우스 오른쪽 버튼으로 클릭하고 속성을 선택하면됩니다.

 

"Properties"창에서 "Java Build Path"옵션을 선택한 다음 "Libraries"를 선택합니다. 그런 다음 & ldquo; 외부 Jar 추가 & rdquo;를 클릭하십시오.

 

이제 프로젝트에 Jersey API를 추가 했으므로 약간의 코딩을 할 수 있습니다.

 

이 초기 코드 스 니펫에서는 URL 클라이언트를 생성하고 있습니다. 첫 번째 줄 (3 및 4)에는 & ldquo; Jersey & rdquo; 도서관. 9 행과 10 행에서는 웹 서비스 URL에 연결할 개체를 만듭니다. 웹 서비스 URL은 rest 및 post라는 단어와 함께 OpenShift 계정의 전체 이름으로 구성되어 웹 서비스에 rest라고하는 메소드 위치와 post라는 메소드가 있음을 나타냅니다. 다음으로, 데이터베이스로 보낼 정보를 만들어 보겠습니다.

 

이 목록에 제시된 코드 조각의 목적은 MongoDB 데이터베이스로 전송 될 JSON 표준을 따르는 문자열을 조합하는 것입니다. 마지막으로 서버로 보낼 파일입니다. 이제 Java 프로젝트의 마지막 코드 스 니펫으로 이동하겠습니다.

 

이 코드 스 니펫은 프로젝트에 대한 또 다른 가져 오기가 필요합니다.

 

클라우드로 보내기

 

이제 웹 서비스를 OpenShift로 보낼 수 있습니다. Eclipse 내에서 JBoss 퍼스펙티브를 선택하고 OpenShift Application을 클릭하십시오.

 

등록시 정의 된 계정 자격 증명 (이메일 및 비밀번호)이 요청됩니다. 계정 정보를 입력하고 "다음"을 클릭하십시오. 처음 연결할 때 SSH 키를 생성하라는 메시지가 표시됩니다.

 

옵션 & ldquo; 기존 애플리케이션 사용 & rdquo ;. 이 옵션을 선택하면 이전에 생성 한 애플리케이션을 선택하는 화면이 표시됩니다. 응용 프로그램을 선택하고 "다음"을 클릭합니다.

 

다음 화면에서 서버로 보낼 프로젝트를 만들 것인지 아니면 기존 프로젝트를 사용할 것인지 묻는 메시지가 표시됩니다. 이 경우 새로 개발 된 웹 서비스 인 기존 프로젝트를 사용합니다. 이렇게하려면 & ldquo; 새 프로젝트 만들기 & rdquo ;, & ldquo; 탐색 & rdquo; jboss-as-helloworld-rs 프로젝트를 선택합니다.

 

프로세스를 마무리하십시오. SSH 키 사용을 확인하라는 메시지가 표시되면 & ldquo; 예 & rdquo;를 클릭합니다. 다시 & ldquo; 예 & rdquo; 웹 서비스 전송을 확인합니다. 이 단계 후에 웹 서비스를 게시 할 수 있습니다. 이를 수행하려면 Eclipse로 이동하여 "서버"탭을 열고 클릭하여 서버 탭을 펼치십시오.이 경우 "mongodb at OpenShift"가 있습니다. 웹 서비스 jboss-as-helloworld-rs의 이름이 나타나면 마우스 오른쪽 버튼으로 클릭하고 & ldquo; Full Publication & rdquo; 또는 & ldquo; 전체 게시 & rdquo ;.

 

애플리케이션이 이미 OpenShift 서버에 빌드되었는지 확인하십시오. 이렇게하려면 브라우저로 이동하여 & ldquo; 응용 프로그램 & rdquo;에서 OpenShift 계정에 액세스하십시오. 탭을 클릭하고 응용 프로그램을 클릭하십시오. 이 자습서의 예에서 & ldquo; mongodb & rdquo;를 클릭하고 이미 빌드되었는지 확인합니다.

 

너무 오래 걸리면 (3 분 이상) 애플리케이션을 다시 시작해야 할 수 있습니다. 이렇게하려면 화면 오른쪽에있는 해당 아이콘을 사용하십시오.

 

최종 테스트

 

이제 MongoDB가있는 서버, 서버로 데이터를 전송하는 프로젝트, 두 가지를 결합하는 웹 서비스가 있으므로 테스트를 시작할 수 있습니다.

 

기능을 확인하는 중요한 동료는 Rock Mongo입니다. OpenShift에서 매우 간단하게 활성화 할 수 있습니다. & ldquo; Rock Mongo 1.1 추가 & rdquo; & ldquo; 애플리케이션 & rdquo; 탭.

 

또 다른 중요한 기능은 콘솔에서 활성화 할 수있는 & ldquo; 테일 파일 & rdquo;입니다. Eclipse 콘솔로 이동하여 OpenShift Explorer를 클릭하고 애플리케이션에 도달 할 때까지 모든 옵션을 확장합니다 (이 경우 & ldquo; mongodb & rdquo ;. 마우스 오른쪽 버튼을 클릭하고 & ldquo; 테일 파일 & rdquo; 선택권.