DB2(러시아어에서는 "dibi two"로 발음되며 영어 "dibi tu"의 트레이싱 페이퍼도 일반적입니다) - 가족 소프트웨어 제품 IBM의 정보 관리에서.

대부분의 경우 DB2는 IBM에서 개발 및 출시한 관계형 데이터베이스 관리 시스템 DB2 Universal Database(DB2 UDB)를 의미합니다.

"DB/2"라는 철자가 가끔 보이지만 이 철자는 올바르지 않습니다. IBM 표기법에서 분수의 분모에 있는 숫자는 플랫폼을 의미하고 "/2"는 제품을 의미합니다. 운영 체제 OS/2(또는 PS/2 시리즈 컴퓨터). 예를 들어, OS/2용 DB2 버전은 "DB2/2"로 지정되었습니다.

구현

DB2 DBMS는 현재 다음 플랫폼에서 사용할 수 있습니다.

  • Linux, UNIX 및 Windows v9용 DB2 AIX, HP-UX, Linux, Solaris, Windows 플랫폼용 및 Mac OS X 플랫폼용 베타
  • z/OS v9용 DB2 z/OS 및 OS/390 플랫폼용
  • VSE 및 VM v7용 DB2 서버 z/VM 및 z/VSE 플랫폼용
  • i용 DB2 IBM i 플랫폼용(하드웨어 및 소프트웨어 레벨에서 시스템에 통합됨)

과거에는 OS/2, UnixWare, PTX용 DB2 데이터베이스 서버 버전이 릴리스되었습니다.

나열된 플랫폼 외에도 DB2 DBMS 클라이언트는 SINIX, IRIX, 클래식 Mac OS 및 MS-DOS용으로 다양한 버전으로 출시되었거나 출시되었습니다. 모바일 버전 DB2 에브리플레이스 Windows CE, Palm OS, Symbian OS, Neutrino 및 가상 기기자바.

현재 IBM은 제품군의 상용 제품 외에도 무료 배포판을 배포합니다. DB2 익스프레스-C Linux(x86, x86-64, POWER), Windows(x86, x86-64), Solaris(x86-64), Mac OS X(x86-64 베타) 플랫폼용. 무료 버전은 1개의 듀얼 코어 프로세서 및 DBMS용 2GB 이하의 사용에 대한 제한이 있습니다. 랜덤 액세스 메모리(시스템의 총 프로세서 및 메모리 수는 제한이 없지만 지정된 제한을 초과하는 리소스는 DBMS에서 사용되지 않습니다.)

이야기

DB2는 오랜 역사를 가지고 있으며 일부에서는 SQL을 사용한 최초의 DBMS로 간주합니다.

1975년부터 1982년까지 DB2 프로토타입은 IBM에서 System Relational 또는 System R이라는 이름으로 개발되었습니다. SQL 언어는 IBM System R에서 처음 구현되었지만 이 시스템은 연구 성격이었고 SQL을 포함한 상용 제품은 1979년 Oracle에서 처음 출시되었습니다.

DB2는 1982년 SQL/DS용 첫 상용 릴리스와 함께 그 이름을 얻었고 그 다음에는 DB2라고 하는 MVS용으로 출시되었습니다. 오랫동안 "DB2"와 함께 IBM의 상표이기도 한 "Database 2" 변형이 사용되었습니다. 분명히 이것은 이전의 계층적 IMS DBMS에 이어 두 번째 주력 IBM DBMS를 의미했습니다.

DB2의 개발은 1970년대 초로 거슬러 올라갑니다. 당시 IBM에서 근무한 Dr. E. F. Codd는 관계형 데이터베이스 이론을 개발하고 1970년 6월 데이터 조작 모델을 발표했습니다. 이 모델을 구현하기 위해 그는 관계형 데이터베이스 언어를 개발했으며 이를 Alpha라고 불렀습니다. IBM은 추가 개발을 Codd 박사의 통제 밖에 있는 프로그래머 그룹에 아웃소싱하기로 결정했습니다. 관계형 모델의 일부 원칙을 위반하여 "구조화된 영어요청”, 약칭은 SEQUEL입니다. SEQUEL은 이미 등록 상표였기 때문에 이름이 SQL - "Structured Query Language"로 단축되었으며 현재까지 그대로 유지되고 있습니다.

따라서 역사적으로 DB2는 MVS용 DB2(z/OS용 DB2가 하위임)와 VM용 자매 SQL/DS(VSE 및 VM용 DB2 Server가 하위임)에서 발전했습니다. 나중에 IBM의 다른 개발자 팀이 OS/2 EE 데이터베이스 관리자 서버를 구현했는데, 이 서버는 나중에 OS/2, AIX, Windows용 DB2 v2로 발전한 다음 DB2 UDB로 발전했습니다(그 후손은 Linux, UNIX 및 Windows용 DB2입니다. ). 다른 팀은 DB2 아키텍처와 임베디드 AS/400 데이터베이스(하위 항목 - i용 DB2)의 통합을 완료했습니다. IBM은 이러한 모든 지점을 통합하는 방향으로 점차 나아가고 있습니다.

특색

에게 고유 한 특징 DB2에는 드문 예외를 제외하고는 순수하게 선언적인 언어 구조의 의미를 정의하는 SQL 언어의 방언과 이러한 선언적인 구조를 기반으로 효과적인 쿼리 실행 계획을 구축하는 강력한 다단계 최적화 프로그램이 포함되어 있습니다. 다른 SQL 방언과 달리 DB2 SQL 방언은 옵티마이저에 대한 힌트가 거의 없으며 개발이 제대로 이루어지지 않았습니다. 오랫동안일반적으로 없었음) 저장 프로시저 언어, 따라서 모든 것은 쿼리 작성의 선언적 스타일을 유지하는 것을 목표로 합니다. 동시에 DB2 SQL 언어는 계산적으로 완전합니다. 즉, 잠재적으로 소스 데이터와 결과 간의 계산 가능한 대응을 선언적 형식으로 정의할 수 있습니다. 이것은 무엇보다도 테이블 표현식, 재귀 및 기타 고급 데이터 조작 메커니즘을 사용하여 달성됩니다.

관계형 개발에 대한 IBM의 초점과 컴퓨터 산업에서의 회사의 위치로 인해 DB2 SQL 언어는 ANSI/ISO SQL 표준에 상당한 영향을 미칩니다.

저장 프로시저는 DB2에서 널리 사용되지 않으며 전통적으로 기존의 고급 프로그래밍 언어(C, Java, PL/I, Cobol 등)를 사용하여 저장 프로시저를 작성하므로 프로그래머가 쉽게 형식을 지정할 수 있습니다. 클라이언트에서 실행하는 것이 더 적합한지 아니면 서버에서 실행하는 것이 더 적절한지에 따라 애플리케이션의 일부로 또는 저장 프로시저로 동일한 코드를 사용할 수 있습니다. DB2는 현재 절차적 SQL 확장 ANSI SQL/PSM 표준에 따른 저장 프로시저용.

DB2 옵티마이저는 테이블 분산 통계를 광범위하게 사용하므로(데이터 수집 프로세스가 DBA에 의해 수행된 경우) 동일한 SQL 쿼리가 처리하는 데이터의 통계적 특성에 따라 완전히 다른 실행 계획으로 변환될 수 있습니다.

역사적으로 DB2는 메인프레임의 다중 사용자 시스템에서 진화했기 때문에 DB2 아키텍처에서는 보안 문제와 DB2를 유지 관리하는 전문가의 역할 분배에 많은 관심을 기울였습니다. 특히, 다른 많은 DBMS와 달리 DB2는 DBMS 관리자에 대해 별도의 역할을 가지고 있습니다(DB2 소프트웨어 구성 요소를 구성하고 최적의 실행을 담당합니다. 컴퓨터 시스템) 및 데이터베이스 관리자(특정 데이터베이스의 데이터 관리 책임).

필요한 경우 프로그램에서 정적 SQL을 사용하고 패키지 개념을 사용하면 대부분의 다른 DBMS와 달리 이러한 권한이 없는 경우 특정 작업을 수행할 권한이 응용 프로그램에 부여될 수 있는 경우 이러한 보안 모델을 구현할 수 있습니다. 이러한 프로그램으로 작업하는 사용자를 위한 것입니다. 이 경우 사용자가 프로그램을 실행할 수 있는 권한만 있고 데이터를 독립적으로 조작할 수 없는 경우 응용 프로그램을 우회하여 데이터베이스 작업을 할 수 없음을 보장할 수 있습니다.

컴퓨터 시스템에서 보안 도구의 통합 수준을 높이는 개념의 일부로 DB2에는 운영 체제 도구 또는 특수 보안 서버와 통합하여 사용자를 인증하는 자체 수단이 없습니다. DB2 내에서 시스템에 의해 인증된 사용자만 권한이 부여됩니다.

DB2는 하드웨어/소프트웨어 수준에서 구현되는 유일한 범용 관계형 DBMS입니다(IBM i 시스템, DB2 지원은 IBM System z 메인프레임 하드웨어에서도 구현됨).

최신 버전의 DB2는 XML 문서의 개별 요소에 대한 작업을 포함하여 XML 데이터 사용에 대한 향상된 지원을 제공합니다.

오류 처리

DB2 SQL Server의 유용한 기능은 오류를 처리하는 기능입니다. 이를 위해 SQLCA 구조가 사용됩니다. SQL 통신 영역- SQL 링크 영역) 각 SQL 문 실행 후 응용 프로그램에 오류 정보를 반환합니다.

SQLCODE 구조 필드 및 해당 값

항상 유용한 것은 아니지만 주요 오류 진단이 필드에 포함되어 있습니다. SQLCODE(데이터 유형 - 정수) SQLCA 블록 내부. 다음 값을 사용할 수 있습니다.

  • 0은 성공을 의미합니다.
  • 양수는 하나 이상의 경고와 함께 성공을 의미합니다. 예를 들어 +100은 열을 찾을 수 없음을 의미합니다.
  • 음수는 오류와 함께 실패를 의미합니다. 예를 들어, -911은 순차적 롤백을 트리거하는 감지된 만료된 잠금 대기 간격(또는 교착 상태)을 의미합니다.

SQLERRM(데이터 유형 - 71자의 문자열). 포함 텍스트 문자열 SQLCODE 필드가 0보다 작은 경우 오류에 대한 설명과 함께.

SQLERRD(데이터 유형 - 배열, 6개의 정수). 마지막 SQL 문을 실행한 결과를 설명합니다.

  • 1 요소 - 내부 정보;
  • 두 번째 요소 - INSERT 문에 대해 서버에서 생성한 SERIAL 유형 필드 값 또는 추가 오류 코드를 포함합니다.
  • 세 번째 요소 - 처리된 레코드 수와 동일합니다.
  • 네 번째 요소 - 이 연산자를 실행하는 대략적인 비용.
  • 다섯 번째 요소 - SQL 문의 텍스트 레코드에서 오류 오프셋.
  • 여섯 번째 요소 - 내부 정보.

메모

연결

  • IBM 웹사이트의 프로그램 페이지
  • developerWorks의 DB2 - DB2 기사 및 교육
  • PlanetDB2 - DB2 블로그

문학

  • 날짜 K. DB2 관계형 DBMS 안내서. - M.: 재무 및 통계, 1988. - 320 p. - ISBN 5-279-00063-9
  • Zikopoulos P.K., Baklarz J., deRus D., Melnik R.B. DB2 버전 8: 공식 안내서 = DB2 버전 8: 공식 안내서. - M.: KUDITS-OBRAZ, 2004. - 400p. - ISBN 5-9579-0031-1
  • 스미르노프 S.N. IBM DB2 작업: 튜토리얼. - M.: Helios, 2001. - 304 p. - ISBN 5-85438-007-2 (지역 UMO 대학 추천 정보 보안"자동화 시스템의 통합 정보 보안"및 "컴퓨터 보안"전문 분야의 교습 보조로)
  • 수잔 비서, 빌 웡. 21일 만에 DB2 Universal Database 학습 = Sams는 21일 만에 DB2 Universal Database 학습. - 2판. - M.: Williams, 2004. - 528 p. - ISBN 0-672-32582-9
  • Hook J., Harbus R., Snow D. DB2에 대한 보편적인 안내서 윈도우용 NT®. - 뉴저지: Prentice Hall PTR, 1999. - P. 504. - ISBN 0-13-099723-4

위키미디어 재단. 2010년 .

다른 사전에 "IBM DB2"가 무엇인지 확인하십시오.

    IBM DB2- 개발자(들) IBM 초기 릴리스 1983(1983) ... Wikipedia

    IBM DB2- DB2 ist ein kommerzielles relationshipales Datenbank Management System(RDBMS) der Firma IBM, dessen Ursprünge auf das System R und die Grundlagen von E. F. Codd vom IBM Research aus dem Jahr 1970 zurückgeht. Inhaltsverzeichnis 1 Eigenschaften 1.1… … Deutsch Wikipedia

    IBM DB2- 개발자 IBM Dernière 버전 ... Wikipedia en Français

    IBM DB2 공통 저장소- 이메일 메시지 또는 SAP ERP 데이터를 관리하기 위해 IBM에서 생산한 DB2 CommonStore Archiving 소프트웨어. DB2 데이터베이스 플랫폼을 기반으로 하는 IBM Information Management 포트폴리오의 일부입니다. DB2 CommonStore는 다음과 같은 여러 제품 중 하나입니다. … Wikipedia

    Enterprise Edition - 안정적인 트랜잭션 처리와 풍부한 기능이 필요한 대규모 조직을 위한 솔루션입니다.

    Advanced Edition - 이 버전은 무제한 연결, 클러스터링 및 확장성을 제공하므로 고성능을 달성할 수 있습니다(버전은 2단계 트랜잭션 확인 및 자동 장애 조치를 제공하지 않음).

    Small Business Edition - 이 버전은 인터넷 응용 프로그램을 지원하도록 설계되었습니다. 허용되는 최대 IIOP/CORBA 연결 수는 10개로 클러스터링, 메인프레임 지원, 2단계 트랜잭션 확인 및 자동 장애 조치가 필요하지 않은 시스템에 적합합니다.

    Sybase EAServer를 사용하여 응용 프로그램을 구축하고 테스트하는 개발자를 위한 옵션인 Developer Edition은 모든 기능을 갖추고 있지만 5개의 ​​IIOP 연결로 제한됩니다.

Sybase EAServer는 다음과 같은 여러 가지 중요한 이점을 제공합니다.

    제공함으로써 시스템의 안정적인 운영 자동 복구서버 메모리, 로드 밸런싱 및 클러스터링 수준에서의 상태;

    기존 내부 시스템과의 통합을 통한 투자 보호

    구성 요소 인스턴스 캐싱, 트랜잭션 관리, 프로세스 캐싱 및 그래픽 구성 요소 매개변수화와 같은 포괄적인 구성 및 관리 기능을 통해 관리를 단순화합니다.

하위 DB2

DBMS 회사인 IBM DB2는 80년대 초반에 처음 등장했습니다. 이 제품의 버전은 현재 AS/400AIX, S/390, Windows, OS/2, AIX, HP-UX, SCO UnixWare, Linux, NUMA-Q 및 Sun Solaris에서 실행됩니다.

DB2 Enterprise Server Edition은 풍부한 관리 도구 세트와 함께 제공됩니다. DB2 데이터 액세스 메커니즘은 ODBC, JDBC 및 ADO/OLE DB 드라이버와 Microsoft 사용자를 지원합니다. 비주얼 스튜디오 Stored Procedure Builder와 같은 환경에 포함된 추가 모듈을 사용할 수 있습니다. Windows 버전의 DB2를 사용하여 저장 프로시저를 생성할 수도 있습니다. 시각적 언어기초적인. Borland 개발 도구는 ADO/OLE DB 및 ODBC뿐만 아니라 자체 범용 데이터 액세스 메커니즘인 Borland Database Engine 및 dbExpress를 통해 DB2에 대한 액세스를 지원합니다.

DB2 DBMS는 데이터 웨어하우스 생성을 지원하며, 웨어하우스로 데이터를 전송하기 위한 도구 외에도 Data Warehouse Center를 클라이언트 부분의 일부로 포함하므로 생성 및 지원과 관련된 모든 프로세스를 관리할 수 있습니다. 웨어하우스 스키마 생성, 초기 데이터 소스 결정, 스토리지의 데이터 업데이트 일정 생성, 잘못된 데이터 확인 및 수정을 포함한 데이터 웨어하우스. OLAP 스토리지를 지원하기 위해 DB2 Universal Database Server에는 Hyperion Essbase OLAP Server를 기반으로 하는 OLAP Starter Kit가 포함되어 있습니다.

DB2 DBMS는 요소 및 속성별로 XML 문서를 저장하고 검색하는 것을 지원합니다. SOAP 프로토콜을 사용하여 DB2 저장 프로시저 및 데이터에 대한 액세스를 제공하는 웹 서비스에 액세스할 수 있습니다(웹 서비스는 IBM WebSphere 애플리케이션 서버에서 관리됨).

DB2 Universal Database의 가장 중요한 기술적 특성에는 개체 확장을 사용한 관계형 및 복합 데이터 지원, 다중 프로세서 플랫폼에서 작업할 수 있는 기능, 클러스터 지원, 64비트 메모리 아키텍처, 쿼리 병렬화, 이기종 관리 및 데이터 처리를 위한 도구 가용성, 분산 트랜잭션 지원 .

DB2는 Linux, 메인프레임, Windows를 포함한 모든 플랫폼에서 실행되는 동안 .Net에서 개발할 수 있는 유일한 데이터베이스입니다. DB2에는 Java 저장 프로시저가 있습니다.

Visual Studio에 대한 확장 지원에는 웹 서비스 지원, XML 데이터를 변환하지 않고 저장하기 위한 완전한 지원, 코드를 작성하지 않고 응용 프로그램 및 웹 사이트를 만드는 기능이 포함됩니다.

DB2는 XML을 광범위하게 지원하는 관계형 기술을 기반으로 구축되어 데이터 개발 및 통합을 단순화합니다. XML은 DB2의 메타데이터 생성 프로세스 및 메타데이터 제어의 핵심 구성요소입니다.

DB2 버전 9에는 pureXML 기술, 혁신적인 Venom 데이터 압축 기술 및 오프라인 데이터 관리가 도입되었습니다. DB2는 Oracle 및 MySQL DBMS에 저장된 정보에 대한 액세스를 제공합니다.

구현 DBMS향상된 기능을 통해 개발자는 XML 및 관계형 데이터 저장소와 동시에 작동하는 응용 프로그램 생성을 크게 단순화하고 가속화할 수 있습니다. 예를 들어, pureXML 기술은 XML 데이터 처리를 위해 특별히 설계된 표준인 XQuery 언어를 지원합니다. 관계형 또는 XML 데이터를 검색하기 위해 애플리케이션 개발자는 XQuery, XPath, 표준 SQL 언어- 또는 동시에 세 가지.

DB2 Developer Workbench 종합 개발 환경을 사용하면 저장 프로시저와 사용자 정의 함수를 생성, 편집, 디버그, 테스트 및 배포할 수 있습니다. Developer Workbench를 사용하여 애플리케이션을 개발하고 SQL 문 및 XML 쿼리를 생성, 편집 및 실행할 수 있습니다.

DB2 버전 9 데이터베이스 서버는 형식, 플랫폼 및 위치( http://www-306.ibm.com/software/data/db2/v9/).

DB2는 또한 오늘날 다른 DBMS가 할 수 없는 인덱스와 임시 테이블을 압축합니다. 대기 데이터베이스가 있는 서버를 보고에 사용할 수 있는 내결함성 2-서버 구성의 구현.

DB2는 DB2 Workgroup 및 DB2 Enterprise Edition의 두 가지 버전으로 제공됩니다. DBMS는 쿼리 처리 병렬화, 전체 복제 도구 세트, 데이터베이스 성능을 개선하기 위한 쿼리 피벗 테이블, 객체 지향 데이터베이스 설계 기능 및 Java 언어 도구를 구현합니다.

DB2는 텍스트, 사운드, 비디오, 이미지 및 지리 데이터를 저장하고 조작하기 위한 완전한 멀티미디어 확장 세트를 갖추고 있습니다. DB2의 주요 단점은 관리가 상대적으로 복잡하다는 것입니다.

DB2에서는 Index Smart Guide 덕분에 데이터베이스에 대한 일반적인 로드를 특징짓는 주어진 히트 수에 대해 최적의 인덱스를 형성하여 조정할 수 있습니다. DB2 DBMS를 사용하면 데이터 웨어하우스로서의 작업 효율성을 크게 높이는 피벗 테이블을 생성할 수 있습니다. 피벗 테이블은 DBMS에서 자주 받는 쿼리에 대한 답변을 저장하는 데 사용하는 임시 작업 영역입니다.

공간 데이터 작업을 위한 DB2 Spatial 확장은 ESRI [ http://www.esri.com/partners/alliances/ibm/solutions.html,http://www.esri.com/partners/alliances/ibm/index.html].

IBM은 한 번에 3개의 DB2 에디션을 출시합니다. 기업 고객, SMB용(DB2 Express) 및 개발자용(DB2 Express-C).

IBM은 DBMS의 단순화된 버전을 가지고 있습니다. DB2 익스프레스-C, 관계형이지만 XML을 지원합니다.

DBMS 인포믹스

IBM이 인수하기 전에 Informix의 주력 제품은 UNIX 및 Windows 플랫폼을 지원하고 단일 및 다중 프로세서 시스템은 물론 클러스터에서도 효율적인 운영을 제공하는 Informix Dynamic Server(IDS)였습니다. 이 제품은 강력한 병렬 처리 기능을 가지고 있습니다. Informix Dynamic Server의 주요 특징 중 관리에 사용된다는 점에 유의해야 합니다. 디스크 공간 OS 도구로; OS 제한을 우회하고 메모리 공유를 관리할 수 있는 자체 기능도 있습니다. 동적 흐름 제어; 여러 디스크에 대한 테이블 및 인덱스 조각화 지원 쿼리 병렬화; 데이터 미러링. IDS 서버는 이기종 트랜잭션(이 경우 다른 서버가 트랜잭션에 참여할 수 있음)뿐만 아니라 트랜잭션의 2단계 완료를 지원합니다. 특히 주목할만한 것은 시계열에 대한 서버의 지원입니다.

서버 기능 확장은 C 언어로 된 데이터베이스 개체 및 서브루틴의 모음인 DataBlade를 기반으로 구현되며, 데이터베이스에 연결되고 DBMS 제조업체와 여러 독립 제조업체에서 모두 출시합니다.

데이터 액세스 메커니즘 중 IDS는 ODBC, JDBC 및 ADO/OLE DB 드라이버를 지원합니다. Borland 개발 도구는 Borland 데이터베이스 엔진, dbExpress, Microsoft .NET 메커니즘을 사용하여 IDS에 대한 액세스를 지원합니다.

최근에는 관계형 DBMS에서 객체 지향 DBMS로의 전환이 이루어지고 있습니다. Informix는 이러한 개념에 따라 Informix Dynamic Server 7.3 관계형 데이터베이스와 Informix Universal Data Option 객체-관계형 데이터베이스를 기반으로 하고, 범용성과 멀티미디어가 있는 데이터 작업 시 Dynamic Server의 고성능을 결합하여 Centaur DBMS에서 솔루션을 제시합니다. 범용 데이터 옵션의 기능. 이 구현은 인터넷 시스템의 개발을 위한 것입니다. DBMS는 유연한 개발 환경, 인터넷의 집약적인 워크로드에 맞는 확장성, 웹의 발달과 함께 유비쿼터스화된 새로운 유형의 데이터 작업을 위한 도구를 갖추고 있습니다. 이 시스템에 구현된 Java 도구를 사용하면 개발자가 이 언어로 저장 프로시저, 사용자 프로그램 및 DataBlade 구성 요소를 만들 수 있습니다.

Centaur 패키지에는 ActiveX 개체 처리 기능이 내장되어 있습니다. 이렇게 하면 Visual Basic 언어로 데이터베이스 저장 프로시저를 만들 수 있습니다.

Centaur는 Informix Dynamic Server의 추가 기능이며 이 패키지의 기존 데이터베이스 형식으로 작동하므로 사용자가 모든 이전 기능을 유지하고 시스템을 새 버전 수준으로 업그레이드하는 것은 그리 어렵지 않습니다. 시스템은 객체 지향 데이터베이스 설계, 특수 테이블 생성 및 인덱싱 프로그램을 위한 시설을 갖추고 있습니다. 사용자가 표준 SQL 도구에만 의존하지 않고 쿼리에 자신의 기능을 포함할 수 있습니다.

지식 기반에서 좋은 작업을 보내는 것은 간단합니다. 아래 양식을 사용하십시오

잘 했어사이트로">

연구와 업무에 지식 기반을 사용하는 학생, 대학원생, 젊은 과학자들은 매우 감사할 것입니다.

http://www.allbest.ru/에서 호스팅

민스크 경영대학

자동화과 정보 시스템

일반 엔지니어링 관행의 통과에 대한보고

인턴십 기간: 2012년 11월 19일부터 2012년 12월 16일까지

학생 그룹 111201-z

그들을. 바이토비치

수석 수석

TV. 러시아어 선생님,

기술 과학 석사

Allbest.ru에서 호스팅

사립 교육 기관

민스크 경영대학

교수진: 엔지니어링 및 정보

부서: 자동화된 정보 시스템

전문 분야: 1-40 01 02 - 정보 시스템 및 기술(방향별)

학생 Khobotova Anastasia Mikhailovna 그룹 No. 111201z의 일반 엔지니어링 실습을 위한 개별 작업

1. 초록의 주제:

IBM DB2 데이터베이스 관리 시스템.

2. 개별 작업:

4. 일정:

교육(종합공학)실습행사명

날짜

IIP 조직회의

연습을 위한 개별 과제 받기

11.09.12 - 24.09.12

투어(전시)

19.11.12 - 24.11.12

세미나, 회의, 회담 진행

19.11.12 - 30.11.12

추상 준비

01.12.12 - 09.12.12

개별 작업 완료

01.12.12 - 16.12.12

실습 보고서 준비

17.12.12 - 11.03.13

부서에 실무보고 제공

실습 보고서의 보호

19.03.13 - 23.03.13

헤드 TV 토끼

소개

1. 데이터베이스 관리 시스템

1.1 DBMS의 개념

1.2 DBMS 생성의 역사

1.6 큰 물체

1.8 트리거

1.9 관계형 익스텐더

1.11 IBM DB2 에디션 개요

2. 실용적인 부분

2.1 문제 진술

2.2 솔루션 알고리즘

2.3 소프트웨어 구현

2.4 프로그램 테스트

결론

신청

소개

일반 공학 실습의 목적은 학습 과정에서 학생이 얻은 지식을 통합하고 확장하여 미래 직업에 대한 아이디어를 얻는 것입니다. 실습의 목표는 다음과 같습니다. - 주제 블록의 분야 강의에서 제시된 이론적 자료의 통합;

Windows OS 및 표준 사무용 제품군으로 컴퓨터 기술 습득;

연구된 프로그래밍 언어에서 고전 알고리즘을 사용, 개발 및 구현하는 방법에 대한 컴퓨터 과학의 기본 과정을 연구하는 동안 얻은 지식과 기술의 통합

방법을 마스터 전문 검색인터넷상의 정보;

실습 결과에 대한 보고서를 작성하기 위한 보고 요구 사항, 방법 및 응용 환경을 연구합니다.

사무기기로 작업합니다.

보고서의 첫 번째 섹션에서는 IBM DB2 데이터베이스 관리 시스템에 대해 설명합니다. DBMS의 개념, 유형 및 에 대한 간략한 설명 DBMS IBM DB2.

보고서의 두 번째 부분에서는 배열 B에서 배열 A의 최대 요소를 찾는 알고리즘과 C 프로그램을 개발했습니다.

1. IBM DB2 데이터베이스 관리 시스템

1.1 데이터베이스 관리 시스템의 개념

데이터베이스(DB)는 명명된 컬렉션 DBMS의 통제하에 상호 연결된 데이터.

데이터베이스 관리 시스템(DBMS) - 소프트웨어 및 일반 언어 도구 세트 특수 목적, 데이터베이스 생성 및 사용에 대한 제어를 제공합니다.

1.2 DBMS 생성의 역사

활성 검색 활동 허용되는 방법지속적으로 증가하는 정보량의 사회화로 인해 60년대 초 특수 소프트웨어 시스템"데이터베이스 관리 시스템"(DBMS)이라고 합니다.

DBMS의 주요 특징은 데이터 자체뿐만 아니라 구조에 대한 설명도 입력하고 저장하는 절차가 있다는 것입니다. 그 안에 저장되고 DBMS에 의해 제어되는 데이터에 대한 설명이 제공되는 파일은 데이터 뱅크, 그리고 "데이터베이스"(DB)라고 불리기 시작했습니다.

언제부터 생산이 시작되었나요 컴퓨터 ES 컴퓨터 제품군. 작업은 두 가지 방향으로 수행되었습니다. 먼저, 독자적인 국산 DBMS를 만들기 위한 시도를 하였다. 동시에 국내 하드웨어 및 소프트웨어 플랫폼에서 작동할 수 있는 해외에서 널리 사용되는 일부 DBMS의 유사체가 가속 모드로 개발되었습니다. 하드웨어 플랫폼용 DBMS를 생성할 때도 유사한 접근 방식이 사용되었으며, 대량 생산 ES 컴퓨터 플랫폼의 등장보다 늦게 국내에서 시작된 - SM 컴퓨터용, ASVT, IBM 호환 개인용 컴퓨터등등..

1.3 IBM DB2 DBMS의 역사

DB2는 IBM에서 생산한 관계형 데이터베이스 관리 시스템 제품군입니다. 이것은 기술 구현, 확장성 등의 측면에서 성능의 지속적인 리더인 "성숙한" 세계 DBMS 중 하나입니다.

DB2는 오랜 역사를 가지고 있습니다. SQL을 사용한 최초의 DBMS입니다. 1975년부터 1982년까지 DB2 프로토타입은 IBM에서 System Relational 또는 System R이라는 이름으로 개발되었습니다.

DB2는 1982년 SQL/DS라는 VM용 첫 번째 상용 릴리스와 DB2라는 MVS용 릴리스로 이름을 얻었습니다.

DB2의 개발은 Dr. E.F. IBM에서 근무한 Codd는 관계형 데이터베이스 이론을 개발하고 1970년 6월 데이터 조작 모델을 발표했습니다. 이 모델을 구현하기 위해 그는 관계형 데이터베이스 언어를 개발했으며 이를 Alpha라고 불렀습니다.

IBM DB2는 세계에서 가장 강력한 고성능 DBMS입니다. 주요 고유 이점은 DB2용으로 작성된 모든 애플리케이션이 DB2가 지원하는 모든 분산 플랫폼(Windows, HP-UX, Sun Solaris, Linux, Mac OS X 및 AIX®)에서 실행되는 DB2 데이터 서버와 함께 작동한다는 것입니다.

DB2는 다양한 에디션과 패키지로 제공됩니다. DB2의 모든 에디션과 패키지는 동일한 데이터베이스에 구축됩니다. 소스 코드; 각각의 시장 부문 및 가격 그룹에 대한 DB2의 기능, 기능 및 이점을 대상으로 하는 기능 및 라이센스 조건만 다릅니다.

DB2 개체 확장을 사용하여 해결할 수 있는 작업의 범위는 고전적인 관계형 접근 방식에 비해 상당히 증가합니다. 객체 지향 모델에서 가장 필요한 것을 차용하여 현대 응용 프로그램요소에서 DB2는 관계형 DBMS의 모든 이점을 유지했습니다. 이를 통해 기반으로 기업 정보 시스템을 구축할 때 관계형 및 객체 지향 접근 방식을 모두 사용할 수 있습니다.

1.4 DB2 기능

DB2 기능:

멀티플랫폼.

고급 복사 서비스(ACS). DB2 ACS를 사용하면 빠른 스토리지 복사 기술을 사용하여 백업 및 복원 작업에서 데이터 복사 작업을 수행할 수 있습니다. 저장 장치를 사용하여 데이터를 복사하는 기능은 백업 및 복원 작업의 속도를 크게 높입니다. DB2 ACS를 사용한 백업이 호출됩니다. 지원스냅샷 백업을 통해

온라인 테이블 재구성을 통해 사용자는 중단 없이 테이블을 재구성할 수 있습니다. 전체 권한그녀에게.

고가용성 재해 복구(HADR) 지원. DB2 HADR 기능은 DB2 데이터베이스에 대한 고가용성 및 장애 조치 지원을 제공합니다.

구체화된 쿼리 테이블(구체화된 쿼리 테이블), 쿼리 병렬 처리(쿼리 병렬 처리), 다차원 클러스터링 테이블(MDC, 다차원 테이블 클러스터링) 지원.

백업 시 데이터 압축 지원.

SQL 복제 지원.

데이터베이스 파티셔닝(데이터베이스 파티셔닝) 지원. 이 기능을 사용하면 여러 물리적 서버에 단일 데이터베이스 이미지를 배포할 수 있습니다.

DB2 텍스트 검색. DB2 텍스트 검색 기능을 사용하면 DB2 테이블의 텍스트 열을 검색할 수 있습니다.

IBM Data Studio는 전체를 포괄하는 도구 플랫폼입니다. 라이프 사이클모든 IBM 관계형 DBMS에 대한 응용 프로그램(설계, 개발, 배포, 지원 및 관리)을 지원하고 추가로 지원을 확장할 수 있습니다. 즉, 이식 가능한 SQL API뿐만 아니라 전사적 비즈니스 로직을 구현할 수 있는 도구 세트도 있습니다.

1.5 사용자 정의 데이터 유형

DB2는 사용자에게 새 데이터 유형을 정의할 수 있는 기능을 제공합니다. 새 데이터 유형은 시스템에서 제공하는 기본 유형 중 하나와 일치해야 하지만 고유한 의미 체계를 정의할 수 있습니다. 동시에 DB2는 데이터에 대해 정의된 논리에 따라 이러한 데이터를 조작할 수 있습니다. 기본 유형에서 데이터 유형을 변경하여 데이터 유형에 허용되는 작업 세트를 지정할 수 있습니다.

DB2는 강력한 유형 지정 메커니즘을 구현합니다. 이 경우 기본 클래스가 아닌 자체에 대해 정의된 작업만 무기한 유형의 데이터에 적용할 수 있습니다. DBMS의 경우 이 접근 방식은 데이터 무결성 제어를 위한 강력한 메커니즘을 제공합니다.

따라서 정수에서 파생된 "우편 번호" 유형을 정의할 수 있지만 동시에 이 유형의 데이터에 대한 곱셈 및 나눗셈 연산을 의미가 없는 것으로 금지하고 기본 클래스의 경우 이러한 연산이 유효합니다.

1.6 큰 물체

DB2/2 및 DB2/6000은 BLOBS(Binary Large Object) 및 CLOBS(텍스트 대형 개체)와 같은 새로운 데이터 유형을 사용자에게 제공합니다. BLOBS를 사용하면 최대 2GB 크기의 모든 종류의 데이터를 저장할 수 있습니다. CLOBS는 크기 제한이 동일하지만 텍스트를 1바이트 또는 2바이트 문자 시퀀스로 저장하도록 설계되었으며 특정 코드 페이지와 연관될 수 있습니다. 이러한 데이터 유형이 있으면 주로 멀티미디어와 같은 비전통적 유형의 데이터가 있는 관계형 테이블을 포함할 수 있습니다. 이 기능은 예를 들어 직원 사진을 HR 데이터베이스에 저장하고, 그래픽 이미지, 사운드, 비디오, 큰 텍스트. 동시에 고성능 및 신뢰성을 달성하고 대형 물체의 사용에 대한 제한을 제거하는 데 주요 관심을 기울입니다. 따라서 2GB 개체가 포함된 10개 이상의 필드가 포함된 테이블을 만들 수 있습니다.

큰 개체로 작업할 때의 좋은 기회는 새로운 데이터 유형 및 기능의 정의를 제공합니다. 이를 통해 요소별로 그림을 검색하거나 텍스트를 비교하는 작업 등의 가능성을 설정할 수 있습니다.

1.7 사용자 정의 기능

사용자 정의 함수를 사용하면 데이터의 일부 캡슐화를 제공하여 애플리케이션에서 데이터의 내부 표현을 숨길 수 있습니다. 또한 기본 데이터와 사용자 정의 유형 모두에 대해 새 작업을 정의할 수 있습니다.

사용자 정의 함수를 사용하면 일반적인 작업을 허용하여 코드를 재사용할 수 있습니다. 다양한 응용, 각 개별 응용 프로그램에 포함되지 않고 서버에 저장됩니다. 이러한 기능을 구현하기 위해 프로그래밍 언어가 사용되며 DBMS에서의 구현을 위해 데이터 정의 언어에 CREATE FUNCTION문이 도입됩니다. 실제로 이 명령문은 사용자 정의 함수를 이 함수가 호출될 때 실행되는 특정 프로그램과 연결합니다. 데이터에 직접 액세스하는 대신 사용자 정의 함수를 사용하면 데이터를 일부 캡슐화하여 사용자에게 내부 구조를 숨길 수 있습니다. 또한 DB2는 OODB에서 사용되는 것과 유사한 사용자 정의 함수 이름을 오버로드하는 메커니즘을 지원하지만 메서드와 개체가 개체 접근 방식에서 연결되기 때문에 함수가 특정 데이터 요소와 연결되는 것을 허용하지 않습니다. 사용자 정의 함수에 유연성을 추가하면 DB2 데이터와 파일과 같은 다른 데이터에서 동시에 작업할 수 있습니다. 이메일사용자 정의 함수가 DB2 서버와 상호 작용할 수 있는 두 가지 방법이 있습니다. 첫 번째는 함수가 데이터베이스에 직접 액세스할 수 있기 때문에 최대 성능을 허용하지만 서버 상태 및 데이터 무결성에 잠재적인 위협이 될 수 있다는 것입니다. 두 번째 옵션에서 함수는 데이터 및 DBMS 보호를 제공하지만 성능이 저하되는 데이터베이스 서버와 별도의 프로세스로 실행됩니다.

사용자는 세부 사항에 따라 자신의 작업에 가장 적합한 접근 방식을 선택할 수 있습니다.

1.8 트리거

트리거는 테이블이 업데이트되는 경우와 같이 데이터베이스에서 특정 이벤트가 발생할 때 수행되는 일련의 작업을 정의합니다.

트리거는 개체 지향 접근 방식에서 메서드(예: 입력 값 유효성 검사) 또는 생성자(새 레코드가 생성될 때 값 할당)에 의해 수행되는 기능을 수행하는 데 사용할 수 있습니다.

트리거를 사용하면 데이터를 "활성화"하여 구조와 속성뿐만 아니라 데이터베이스에 저장된 데이터 개체의 동작을 모델링할 수 있습니다.

1.9 관계형 익스텐더

DB2 Relational Extender는 이러한 새 기능의 좋은 예입니다. 사용자 지정 데이터 유형 및 기능을 정의하는 기능을 사용하여 비전통적인 데이터로 작업할 수 있는 충분한 기회를 제공합니다. 멀티미디어 데이터를 저장하고 링크의 무결성을 유지하기 위해 - 트리거.

현재 복잡한 이미지로 작업할 수 있는 5개의 관계형 익스텐더가 있습니다. 텍스트 문서, 비디오, 오디오, 심지어 지문까지.

1.10 DB2 DBMS의 비판적 분석

DBMS의 장단점을 고려하십시오.

좋은게 있다 무료 버전;

무료 버전은 데이터베이스 크기에 제한이 없습니다.

무료 버전에는 요청 제한이 없으므로 동시에 수십 명의 사용자에게 서비스를 제공할 수 있습니다.

좋은 무료 기술 지원;

PostgreSQL과 달리 제조업체로부터 유료 지원을 받을 수 있으므로 기업 비즈니스 부문에서 사용할 수 있습니다.

1C-Enterprise 구성으로 자동 모드잠금은 PostgreSQL보다 더 잘 작동합니다(우리는 병렬 처리에 대해 이야기하고 있으며 잠금 범위는 테이블이 아닌 행 수준에 있음).

좋은 성능;

고유하지 않은 인덱스의 문제 감소(사실 문제를 해결하려면 데이터베이스를 일시적으로 DB2에 로드하는 것이 좋습니다.)

"1C 서버에 대한 메모리가 충분하지 않음"과 같은 상황을 더 잘 처리합니다.

256개의 테이블에 대한 제한이 없으므로 RLS로 작업할 때 가능성이 확장됩니다.

소수의 전문가와 높은 비용의 우수한 전문가;

작은 유병률;

MS SQL Server와 달리 1C는 새 버전에 대해 "적응된" 버전을 출시합니다.

데이터베이스의 크기는 다른 DBMS보다 큽니다.

DBMS 매개변수의 "미세" 조정이 필요하며 시스템의 자동 조정이 있지만 불완전합니다.

일부 메시지는 플랫폼에서 잘못 처리될 수 있습니다. 솔루션을 위해서는 오류 로깅의 "레벨을 낮추어야" 합니다.

1C-CUP은 긴 요청을 수집하고 잠금을 기다리지만 교착 상태를 수집하지 않습니다.

1.11 IBM DB2 에디션 개요

편집자 이름

기회와 한계

IBM DB2 Express-C

IBM DB2 DBMS의 기본 무료 버전입니다. 기술 지원은 제공되지 않습니다. 저것들. 제한 사항: 최대 2개의 코어와 1개의 프로세서, 2GB RAM을 사용합니다. 복제 및 클러스터링에 대한 지원이 없으며 추가 구매 가능성 및 보장이 없습니다. DBMS의 기능을 확장하는 소프트웨어 패키지. 버전은 서비스 팩 없이 릴리스됩니다. 지원되는 OS: Windows 및 Windows x64, Linux, Linux x86, Linux x64, Linux on Power, Solaris, Mac OS X. 지원되는 OS: Windows, Linux(POWER 및 x86 서버), Mac OS X 및 Solaris x64. 권장 사항: 재정적 용량이 제한되어 있고 사용자가 최대 50-70명인 IBM의 기술 지원이 필요하지 않은 소규모 의료 시설에 적합합니다.

IBM DB2 Express - C FTL(기간 고정 라이센스)

최초의 상용 버전. 이전 제품과 완전히 유사하지만 12개월 IBM 24x7 기술 지원 구독 + 복제 지원 + 2-서버 클러스터 지원 + FixPack 릴리스 및 다중 버전 지원이 포함됩니다. 저것들. 제한 사항: 최대 2개의 코어와 1개의 프로세서, 2GB RAM을 사용합니다. 지원되는 OS: Windows, Linux(POWER 및 x86 서버) 및 Solaris x64. 권장: 중소 의료 시설, 재정적 능력이 제한되어 있지만 최대 50-150명의 사용자가 있는 IBM의 기술 지원이 필요합니다.

IBM DB2 익스프레스 에디션

다음을 포함하는 IBM DB2의 초기 릴리스 기술적 지원 12개월 동안. 저것들. 제한: 최대 4개 코어( 인텔 프로세서) 및 최대 4GB의 RAM. 2 프로세서 2 코어 서버(Intel용) 이하에서만 사용할 수 있습니다. 지원되는 OS: Windows, Linux(POWER 및 x86 서버), AIX, Solaris(SPARC 및 x64), HP-UX(IA-64만 해당) 권장: 최대 70-200명의 IBM 지원 사용자가 필요한 중소 병원용.

IBM DB2 워크그룹 서버 에디션

Server Edition은 DB2 Express와 동일한 기능을 제공하지만 더 많은 메모리를 필요로 하는 더 높은 워크로드 요구 사항을 위해 설계된 DB2 데이터 서버를 나타냅니다. 컴퓨팅 파워, 더 높은 수준의 높은 준비도 없이 추가 세팅, 플랫폼별 배포 옵션이 더 다양합니다. 저것들. 제한 사항: 다양한 고성능 다중 프로세서 서버(Power, Itanium, Ultra SPARC 등 포함)를 사용할 수 있지만 모든 프로세서에 대해 최대 16GB의 RAM을 사용할 수 있습니다. 지원되는 OS: Windows, Linux(POWER, System z 및 x86 서버), AIX, Solaris(SPARC 및 x64), HP-UX(IA-64만 해당). 권장: 사용자 수가 100명에서 IBM의 기술 지원이 필요한 중대형 의료 시설에 적합합니다.

IBM DB2 엔터프라이즈 서버 에디션

가장 큰 기관과 가장 고성능의 컴퓨팅에 적합합니다. 지원되는 OS: Windows, Linux(POWER, System z 및 System x), AIX, Solaris(SPARC 및 x64) 및 HP-UX 서버(DB2 9.5의 IA-64만 해당). 권장 사항: 대규모 의료 시설 및 1000명 이상의 사용자가 있는 IBM의 기술 지원이 필요한 여러 의료 시설 네트워크에 적합합니다.

1.12 차세대 DB2

IBM은 20년 이상 동안 데이터베이스 기술의 가장 중요한 발전인 코드명 Viper라는 차세대 DB2 9 데이터베이스 서버를 공개했습니다.

DB2 9의 출시는 기존의 정적 데이터베이스 기술을 문서, 오디오 및 문서와 같은 모든 유형의 정보에 대한 더 나은 제어를 고객에게 제공하는 대화형 동적 데이터베이스 서버의 개념으로 변환한 5년 간의 IBM 프로젝트의 끝을 표시합니다. 비디오 파일, 이미지, 웹 페이지 및 디지털 서명이 있는 XML 트랜잭션.

새로운 IBM 데이터베이스 서버는 형식, 플랫폼 또는 위치에 관계없이 관계형 및 XML 데이터의 원활한 병렬 이동을 가능하게 하는 업계 최초입니다.

8개국의 750명 이상의 소프트웨어 개발자가 SOA 환경의 정보 관리에 중점을 두고 설계 및 사용자 정의된 Viper 데이터베이스 생성에 기여했습니다.

DB2 9는 특허받은 pureXML 기술, 혁신적인 Venom 데이터 압축 기술 및 고급 오프라인 데이터 관리라는 세 가지 중요한 기술 발전을 도입했습니다. 업계에 새로운 유사한 조합 기능, 보안 및 재해 복구 기능이 향상되어 정보 요청 속도가 빨라지고 고객이 정보에 무제한으로 액세스할 수 있습니다. 게다가, 새 버전 DB2는 공급업체가 동일한 기능을 제공하지 않는 기존 Oracle 및 MySQL 데이터베이스에 저장된 정보에 대한 액세스를 제공합니다.

IBM은 처음으로 엔터프라이즈 고객, 중소기업용(DB2 Express), 개발자용(DB2 Express-C)의 세 가지 DB2 에디션을 동시에 출시합니다.

IBM Information Management의 Ambuj Goyal 총책임자는 "DB2 Viper는 데이터베이스 산업의 경쟁 구도를 변화시킬 것을 약속합니다. 우리 고객은 주문형 정보를 활용하여 비즈니스를 성장시킬 수 있습니다."라고 말했습니다.

DB2 9 사전 테스트 및 평가 고객과 파트너는 매우 긍정적인 피드백을 제공했습니다. 대기업 및 중소기업 고객에게 서비스를 제공하는 선도적인 상업용 손해 보험 제공업체인 Zurich Insurance, N.A.는 DB2 9를 사용하여 액세스 권한을 얻기로 결정했습니다. 새로운 기술순수 XML.

"보험 업계는 방대한 양의 문서를 XML 형식.

pureXML 기술은 맞춤형 기능을 정의하고 레거시 데이터베이스에 저장된 XML 데이터에 대해 외부 작업을 수행하는 데 있어 전례 없는 수준의 유연성을 제공한다고 Zurich Insurance N.A.의 수석 데이터베이스 관리자인 James Surber는 말했습니다. "같은 테이블에 구조가 다른 동일한 XML 문서의 다른 버전을 저장할 수 있으므로 XML 구조가 변경될 때 전체 테이블을 수동으로 언로드하고 다시 로드하는 데 몇 시간을 소비하지 않아도 됩니다."

2. 실용적인 부분

2.1 문제 진술

n개의 요소로 구성된 A와 m개의 요소로 구성된 B의 두 가지 배열이 제공됩니다. 배열 A의 가장 큰 요소가 배열 B에 포함되어 있는지 확인합니다.

2.2 솔루션 알고리즘

솔루션 알고리즘의 구성표는 그림 02.16.011.001에 나와 있습니다.

블록 1에는 행렬 A와 B의 크기가 입력됩니다.

블록 2-11은 키보드에서 행렬을 입력하는 데 사용됩니다.

블록 12-23은 원래 배열을 행렬 형식으로 표시하는 데 사용됩니다.

블록 24-30은 배열 A의 최대 요소를 찾는 데 사용됩니다.

블록 31-37은 배열 B에서 배열 A의 최대 요소를 찾는 데 사용됩니다.

블록 38-40은 문제에 대한 최종 솔루션이며 배열 A의 최대 요소가 배열 B에 있는지 여부를 보여줍니다.

2.3 소프트웨어 구현

목록 소프트웨어 모듈부록에 C 프로그래밍 언어로 문제를 해결하는 방법이 나와 있습니다.

먼저 모든 변수를 선언해야 합니다.

int A, B, n, m, i, k, 최대, x;

여기서 A와 B는 100개의 문자열로 구성된 정수 배열입니다. n과 m은 행렬 행의 수를 저장하는 변수입니다. 나는 그리고 k - 루프 변수; max - 배열 A의 최대 요소를 저장하기 위한 정수 변수. x는 배열 B에서 배열 A의 최대 요소를 찾기 위한 정수 변수입니다.

scanf_s("%d", &n);

scanf_s("%d", &m);)

동안 (n>=100, m>=100);

차원 입력은 do...while 루프를 사용하여 수행되므로 입력된 데이터의 정확성을 확인할 수 있습니다. 왜냐하면 배열의 메모리는 정적으로 할당되기 때문에 행렬의 행 수는 배열을 선언할 때 지정하는 100개를 넘지 않아야 합니다. 잘못된 입력의 경우 배열의 차원을 입력하라는 프롬프트가 다시 나타납니다.

배열 요소는 중첩 배열 내부에 입력됩니다. 루프를 위해: 첫 번째 사이클에서 i는 0에서 n-1로 줄 번호를 변경하고 두 번째 사이클에서는 k - 0에서 m-1로 줄 번호를 변경합니다. 중첩 루프가 반복될 때마다 배열 요소를 입력하라는 프롬프트가 표시되고 배열 요소는 키보드에서 입력됩니다.

(i=0;i에 대해

scanf_s("%d", & A[i]);)

for(k=0;k

printf("배열 A: ");

(i=0;i에 대해

printf("%d", A[i]);

printf("배열 B: ");

for(k=0;k

printf("%d", B[k]);

다음으로 변수 max에 배열의 0 요소와 동일한 초기 값을 할당하고 배열 A의 행 요소를 정렬하면서 if 문을 사용하여 최대 요소를 찾아야 합니다. 배열 A의 최대 요소를 max 값에 할당합니다. 배열 A의 최대 요소가 표시됩니다.

(i=1;i에 대해

만약 (최대

다음으로 변수 x에 0과 같은 초기 값을 할당하고 배열 B의 행 요소를 정렬하여 if 문을 사용하여 배열 A의 최대 요소를 찾습니다. 배열 A의 최대 요소가 배열 B에 있으면 확인 메시지가 표시됩니다. 배열 B에 배열 A의 최대 요소가 포함되어 있지 않으면 이에 대한 확인 메시지가 표시됩니다.

for(k=0;k

(B[k]==최대) x=1인 경우;

2.4 프로그램 테스트

배열 차원의 잘못된 입력을 보여주는 프로그램의 테스트 예는 데이터 n=105 및 m=3에 대한 그림 2.1에 나와 있습니다.

그림 2.1 - 프로그램의 예

그림 2.2에 표시된 프로그램 연산의 테스트 예제는 다음 행렬에 대한 프로그램 연산을 보여줍니다.

그림 2.2 - 프로그램의 예

그림 2.3 - 프로그램의 예

결론

일반적인 엔지니어링 관행의 결과로, 애플리케이션 구축을 위한 효율적이고 안정적인 플랫폼을 갖춘 IBM DB2 DBMS가 연구되었습니다. 제품 포함 1c. IBM의 이 DBMS는 다른 하드웨어 및 소프트웨어 플랫폼(Linux 및 Windows)에서 실행되는 다른 도구(Microsoft Visual Studio, Microsoft Visual Basic, Microsoft Visual C ++ 등)와도 통합할 수 있습니다.

보고서의 실제 부분에서는 배열 B에서 배열 A의 최대 요소를 찾기 위한 알고리즘과 프로그램이 개발되었습니다. 프로그램을 테스트한 결과 양의 정수와 음의 정수 모두에서 작동하는 것으로 나타났습니다. 과제가 완전히 완료되었습니다.

사용된 소스 목록

1. GOST 19.701-90 - 프로그램 문서 통합 시스템 - 알고리즘, 프로그램, 데이터 및 시스템 체계 - 규약 및 실행 규칙

2. 날짜 K. 관계형 DB2 DB2 안내서. - M.: 재무 및 통계, 1988. - 320 p.

3. 코갈로프스키 M.R. "데이터베이스 기술 백과사전" / M.R. 코갈로프스키. - M.: 재정 및 통계, 2002. - 800 p.

4. 디텔 H.M. C/H.M으로 프로그래밍하는 방법 데이텔, P.J. 디텔. - M.: Binom, 2006. - 1037쪽.

5. 라울 F. 총. DB2 Express 9.7 시작하기. 모스크바, 2010.-269 p.

신청

프로그램 모듈 목록

#include "stdafx.h"

# "stdio.h" 포함

#include "conio.h"

# "math.h" 포함

int _tmain(int argc, _TCHAR* argv)

int A, B, n,m,i,k,max,x;

do (printf("Vvedite kol-vo elements massiva A:\n");

scanf_s("%d", &n);

printf("Vvedite kol-vo elements massiva B:\n");

scanf_s("%d", &m);)

동안 (n>=100, m>=100);

(i=0;i에 대해

(printf("Vvedite elementi massiva A [%d]: ",i+1);

scanf_s("%d", & A[i]);)

for(k=0;k

(printf("Vvedite elementi massiva B [%d]: ",k+1);

scanf_s("%d",&B[k]);)

printf("배열 A: ");

(i=0;i에 대해

printf("%d", A[i]);

printf("배열 B: ");

for(k=0;k

printf("%d", B[k]);

(i=1;i에 대해

만약 (최대

printf("최대"nij 요소 질량 A: %d \n",최대);

for(k=0;k

(B[k]==최대) x=1인 경우;

if (x==1) printf ("최대" 요소 질량 A nahoditsia v 질량 B\n");

else printf("최대" 요소 대량 A ne nahoditsia v 대규모 B\n");

데이터베이스 복사 알고리즘

Allbest.ru에서 호스팅

유사한 문서

    자동화된 데이터 뱅크의 필수적인 부분인 데이터베이스 관리 시스템. 데이터베이스 관리 시스템의 구조와 기능. 데이터베이스 접근 방식에 따른 DBMS 분류. 데이터베이스 관리 시스템의 SQL 언어, Microsoft DBMS.

    초록, 2009년 11월 1일 추가됨

    저장된 정보의 특성, 데이터 저장 방법 및 조직 구조에 따른 데이터베이스 분류. 생성을 위한 최신 데이터베이스 관리 시스템 및 프로그램: Microsoft Office Access, Cronos Plus, Base Editor, My SQL.

    프레젠테이션, 2014년 6월 3일 추가됨

    경제에서 정보 관리의 특징. 데이터베이스 관리 시스템의 개념과 기능, 표준 관계형 쿼리 언어의 사용. 데이터베이스를 구성하고 작업하기 위한 도구입니다. 경제의 데이터베이스 관리 시스템.

    테스트, 2010년 11월 16일 추가됨

    데이터 배열을 처리하기 위한 알고리즘. 데이터베이스 관리 시스템. 관계형 데이터 모델. 테이블 형태의 정보 표시. 관계형 데이터베이스 관리 시스템. 그래픽 다중 창 인터페이스.

    제어 작업, 2007년 1월 7일 추가됨

    외부 저장 장치. 데이터베이스 관리 시스템. 많은 사용자와 데이터베이스를 생성, 유지 관리 및 공유합니다. 프로그래밍 시스템의 개념입니다. 데이터 액세스 페이지. 매크로와 모듈. 독점 운영 모드.

    초록, 2011년 10월 10일 추가됨

    데이터베이스 관리 시스템의 주요 분류 기능. 데이터 모델, 프로그램 유형 및 사용 특성. 전문 개발자를 위한 프로그래밍 도구. 컴퓨터 네트워크의 데이터 처리 센터 조직.

    프레젠테이션, 2013년 10월 14일 추가됨

    개념과 목적, 구축 원칙과 데이터베이스 관리 시스템의 내부 구조, 기능적 특징과 능력, 효율성 평가 기준. 언어 및 소프트웨어. SQL, 유형 및 데이터 모델 사용.

    프레젠테이션, 2015년 3월 18일 추가됨

    Access 데이터베이스 관리 시스템의 개체입니다. 요청, 양식, 보고서. 데이터 유형: 텍스트, 메모 필드, 숫자. OLE 개체 필드, 하이퍼링크, 조회 마법사. 데이터베이스 개체를 생성하는 수동, 자동화 및 자동 수단.

    프레젠테이션, 2016년 10월 31일 추가됨

    정보 시스템의 필수적인 부분으로서 데이터베이스. 정보와 데이터의 개념 사이의 관계에 대한 연구. 데이터베이스 관리 시스템. 구조화된 데이터의 예. 논리적 독립성 보장. 운영 체제 보안.

    테스트, 2009년 6월 15일 추가됨

    데이터 저장 및 처리. 데이터베이스 시스템 구성 요소. 데이터의 물리적 구조. MS Access에서 테이블 생성. 데이터 로딩, 데이터베이스 쿼리. MS Access 데이터베이스 관리 시스템을 이용한 정보 시스템 개발.

소개

일반 공학 실습의 목적은 학습 과정에서 학생이 얻은 지식을 통합하고 확장하여 미래 직업에 대한 아이디어를 얻는 것입니다. 실습의 목표는 다음과 같습니다. - 주제 블록의 분야 강의에서 제시된 이론적 자료의 통합;

Windows OS 및 표준 사무용 제품군으로 컴퓨터 기술 습득;

연구된 프로그래밍 언어에서 고전 알고리즘을 사용, 개발 및 구현하는 방법에 대한 컴퓨터 과학의 기본 과정을 연구하는 동안 얻은 지식과 기술의 통합

인터넷에서 정보를 전문적으로 검색하는 방법을 마스터합니다.

실습 결과에 대한 보고서를 작성하기 위한 보고 요구 사항, 방법 및 응용 환경을 연구합니다.

사무기기로 작업합니다.

보고서의 첫 번째 섹션에서는 IBM DB2 데이터베이스 관리 시스템이 고려됩니다. DBMS의 개념이 설명되고 IBM DB2 DBMS의 유형 및 간략한 설명이 제공됩니다.

보고서의 두 번째 부분에서는 배열 B에서 배열 A의 최대 요소를 찾는 알고리즘과 C 프로그램을 개발했습니다.

IBM DB2 데이터베이스 관리 시스템

데이터베이스 관리 시스템의 개념

데이터베이스(DB)는 DBMS에 의해 관리되는 상호 관련된 데이터의 명명된 모음입니다.

데이터베이스 관리 시스템(DBMS) - 데이터베이스 생성 및 사용을 관리하는 일반 또는 특수 목적을 위한 소프트웨어 및 언어 도구 세트입니다.

DBMS 창설의 역사

지속적으로 증가하는 정보량을 사회화할 수 있는 적절한 방법을 찾기 위한 활발한 활동으로 인해 60년대 초에 "DBMS(데이터베이스 관리 시스템)"라는 특수 소프트웨어 시스템이 만들어졌습니다.

DBMS의 주요 특징은 데이터 자체뿐만 아니라 구조에 대한 설명도 입력하고 저장하는 절차가 있다는 것입니다. 그 안에 저장되고 DBMS에 의해 제어되는 데이터에 대한 설명이 제공되는 파일은 데이터 뱅크, 그리고 "데이터베이스"(DB)라고 불리기 시작했습니다.

ES 컴퓨터 제품군의 컴퓨터 생산이 시작되었을 때. 작업은 두 가지 방향으로 수행되었습니다. 먼저, 독자적인 국산 DBMS를 만들기 위한 시도를 하였다. 동시에 국내 하드웨어 및 소프트웨어 플랫폼에서 작동할 수 있는 해외에서 널리 사용되는 일부 DBMS의 유사체가 가속 모드로 개발되었습니다. SM 컴퓨터, ASVT, IBM 호환 개인용 컴퓨터 등 ES 컴퓨터 플랫폼이 등장한 후 국내에서 대량 생산이 시작된 하드웨어 플랫폼용 DBMS를 만드는 데에도 유사한 접근 방식이 사용되었습니다. .

IBM DB2 DBMS 제작의 역사

DB2는 IBM에서 생산한 관계형 데이터베이스 관리 시스템 제품군입니다. 이것은 기술 구현, 확장성 등의 측면에서 성능의 지속적인 리더인 "성숙한" 세계 DBMS 중 하나입니다.

DB2는 오랜 역사를 가지고 있습니다. SQL을 사용한 최초의 DBMS입니다. 1975년부터 1982년까지 DB2 프로토타입은 IBM에서 System Relational 또는 System R이라는 이름으로 개발되었습니다.

DB2는 1982년 SQL/DS라는 VM용 첫 번째 상용 릴리스와 DB2라는 MVS용 릴리스로 이름을 얻었습니다.

DB2의 개발은 Dr. E.F. IBM에서 근무한 Codd는 관계형 데이터베이스 이론을 개발하고 1970년 6월 데이터 조작 모델을 발표했습니다. 이 모델을 구현하기 위해 그는 관계형 데이터베이스 언어를 개발했으며 이를 Alpha라고 불렀습니다.

IBM DB2는 세계에서 가장 강력한 고성능 DBMS입니다. 주요 고유 이점은 DB2용으로 작성된 모든 애플리케이션이 DB2가 지원하는 모든 분산 플랫폼(Windows, HP-UX, Sun Solaris, Linux, Mac OS X 및 AIX®)에서 실행되는 DB2 데이터 서버와 함께 작동한다는 것입니다.

DB2는 다양한 에디션과 패키지로 제공됩니다. DB2의 모든 에디션과 패키지는 동일한 소스 코드 기반에 구축됩니다. 각각의 시장 부문 및 가격 그룹에 대한 DB2의 기능, 기능 및 이점을 대상으로 하는 기능 및 라이센스 조건만 다릅니다.

DB2 개체 확장을 사용하여 해결할 수 있는 작업의 범위는 고전적인 관계형 접근 방식에 비해 상당히 증가합니다. 객체 지향 모델에서 현대 응용 프로그램에 가장 필요한 요소를 차용함으로써 DB2는 관계형 DBMS의 모든 이점을 유지했습니다. 이를 통해 기반으로 기업 정보 시스템을 구축할 때 관계형 및 객체 지향 접근 방식을 모두 사용할 수 있습니다.

IBM DB2 DBMS는 IBM이 거의 30년 동안 연구 개발한 결과입니다. 이 DBMS(6.x)의 최신 버전은 가장 정교한 관리 및 최적화 도구 세트 중 하나와 Windows 95 랩탑에서 OS/390을 실행하는 S/390 메인프레임의 전체 클러스터로 성장할 수 있는 데이터베이스 엔진을 갖추고 있습니다.

DB2 패키지는 DB2 Workgroup 및 DB2 Enterprise Edition의 두 가지 에디션으로 제공됩니다. 이 DBMS는 병렬 쿼리 처리, 전체 복제 도구 세트, 데이터베이스 성능 향상을 위한 쿼리 요약 테이블, 객체 지향 데이터베이스 설계 기능 및 Java 언어 기능과 같이 이전 버전의 DB2에서 알려진 모든 혁신적인 데이터베이스 엔진 기술을 구현합니다. 또한 DB2 시스템에는 텍스트, 사운드 및 비디오 조각, 이미지 및 지리 데이터를 저장하고 조작할 수 있는 완전한 멀티미디어 확장 세트가 장착되어 있습니다. 확장성 면에서 IBM 전문가가 개발한 데이터베이스 클러스터링 기술에는 유사점이 없다고 말할 수 있습니다. 이러한 확장은 사진 이미지와 방대한 텍스트 보고서를 포함하는 프로그램뿐만 아니라 웹용 응용 프로그램 개발 프로세스를 크게 촉진합니다. DB2 시스템은 SQL 문을 적절한 Java 클래스로 자동 변환하고 데이터베이스 구조에 포함시키는 Stored Procedure Builder 도구가 있기 때문에 애플리케이션 개발을 위한 플랫폼으로서도 상당히 경쟁력이 있습니다. DB2 6.1에서는 새로운 데이터베이스 접근 표준인 마이크로소프트의 OLE DB 사양을 사용할 수 있어 다른 DBMS와의 상호 운용성이 크게 향상됐다. 이제 Java로 다시 작성되고 웹에서 사용할 수 있는 DB2 관리 도구는 최고의 찬사를 받을 만합니다.

이 DBMS의 주요 단점은 관리가 상대적으로 복잡하고 LINUX와 같은 널리 사용되는 서버 운영 체제에 대한 구현이 (아직) 부족하다는 것입니다.

이 DBMS에서는 Index Smart-Guide 덕분에 데이터베이스의 일반적인 부하를 특성화하는 주어진 액세스 횟수에 대해 최적의 인덱스를 형성하여 튜닝을 수행할 수 있습니다. DB2는 데이터 웨어하우스로서 DBMS의 효율성을 크게 향상시키는 피벗 테이블을 생성할 수 있는 유일한 패키지입니다. 피벗 테이블은 데이터베이스에서 자주 묻는 질문에 대한 답변을 저장하는 데 사용하는 임시 작업 영역입니다. 글쎄, 새로운 기능과 병렬화, 거의 모든 유형의 조인 및 인덱스(래스터 인덱스 제외)를 선택할 수 있는 기능으로 DB2 6.1 모델은 가장 저렴한 고성능 시스템으로 변모한다고 말할 수 있습니다. 이 DBMS의 관리 도구는 해결 중인 작업 수준에 매우 적합하며 멀티미디어 데이터 작업 및 프로그래밍(Microsoft SQL Server에는 분명히 부족함)을 위한 매우 광범위한 기회를 제공합니다.

Informix의 DBMS.

최근에는 관계형 DBMS에서 객체 지향으로의 전환이 있었습니다(오라클의 예에서 분명히 볼 수 있음). Informix도 이 개념에 따라 Informix Dynamic Server 7.3 관계형 데이터베이스와 Informix Universal Data Option 객체 관계형 데이터베이스를 기반으로 하는 새로운 Centaur DBMS 솔루션을 발표했으며, Universal의 범용성과 멀티미디어 기능이 있는 데이터 작업 시 Dynamic Server의 고성능을 결합했습니다. 데이터 옵션. 이 구현은 인터넷 시스템의 개발을 위한 것입니다. 이 DBMS는 인터넷의 집약적 워크로드 특성에 맞는 확장성을 갖춘 유연한 개발 환경과 웹의 발달과 함께 유비쿼터스화된 새로운 유형의 데이터 작업을 위한 도구를 갖출 것으로 기대된다. 새 시스템에 구현된 Java 기능을 통해 개발자는 이 언어로 저장 프로시저, 사용자 프로그램 및 DataBlade 구성 요소를 생성할 수 있습니다. Informix는 이를 맞춤형 데이터베이스 확장이라고 부릅니다.

Inforix 고객의 관점에서 이것은 큰 진전입니다. 지금까지는 DataBlade로 작업할 때 저장 프로시저를 작성하기 위해 Informix의 내부 언어인 C와 SPL만 사용할 수 있었기 때문입니다. 또한 Centaur 패키지에는 ActiveX 개체 처리 기능이 내장되어 있습니다. 이렇게 하면 예를 들어 Visual Basic 언어로 데이터베이스 저장 프로시저를 만들 수 있습니다. 그러나 Windows NT 환경에서 실행하려면 Centaur 패키지가 필요합니다.

Centaur는 Informix Dynamic Server의 추가 기능이 될 것이며 이 패키지의 기존 데이터베이스 형식으로 작동하므로 사용자는 모든 이전 기능을 마음대로 사용할 수 있으며 시스템을 새 버전으로 업그레이드하는 것은 그리 어렵지 않습니다. 또한 Centaur 패키지는 Informix Universal Server 시스템을 뛰어난 엔지니어링 성과로 만든 모든 설계 및 프로그래밍 기능을 유지합니다. 새로운 시스템은 객체 지향 데이터베이스 설계, 특수 테이블 생성 및 인덱싱 프로그램을 위한 시설을 갖추고 있습니다. 사용자는 표준 SQL 도구에만 의존하지 않고 쿼리에 자신의 기능을 포함할 수 있습니다.

결론.

AIS, 서버 운영 체제 및 DBMS 구축을 위한 아키텍처의 주요 특성을 고려하여 향후 AIS 아키텍처로 인터넷 / 인트라넷 아키텍처를 Linux 서버 OS로, Oracle 8i DBMS로 선택할 것입니다. 요약 표는 Microsoft SQL Server 7.0(NT 기반) 및 Oracle8i(Unix, Linux 기반)를 기반으로 하는 두 가지 가장 일반적인 솔루션의 비교 특성을 보여줍니다.

마이크로소프트 SQL 서버 7.0

행정관리

그래픽 도구

유지 보수 용이성

데이터 엔진

여러 CPU 작업

허용

조인 기능 및 인덱스 선택

여러 사용자의 동시 액세스

멀티미디어 데이터 처리

웹에 연결

오디오, 비디오, 이미지 처리

이 텍스트에서 검색

상호 운용성

허용

다른 데이터베이스와의 인터페이스

싱글 사인온

다양한 운영 체제에서 작업

허용

프로그래밍 옵션

허용

저장 프로시저 및 트리거

내부 프로그래밍 언어

데이터베이스 구축

객체 지향 시스템

브랜치 작업

복제

분산 트랜잭션 처리

원격 관리

데이터 웨어하우스 구성 및 보고서 작성

로딩 도구

분석 도구