Database Libraries

잘 관리되는 컴포넌트가 필요해 Database Libraries를 사용하고 있다면, Altium의 Workspace Library 컴포넌트를 살펴보는 것도 좋습니다. 컴포넌트 데이터에 대해 안전하고 무결성이 높은 저장소를 제공하는 connected Workspace 에서 호스팅되고 소싱되는 Workspace 라이브러리 컴포넌트는 라이프사이클 관리, 리비전 관리, 그리고 공급망과의 실시간 통합을 제공합니다.

Workspace Library에 대해 더 알아보기.

Altium Designer는 Database Library를 생성하고 사용함으로써 회사 데이터베이스에서 컴포넌트를 직접 배치할 수 있는 기능을 제공합니다. 배치는 Components panel에서 수행되며, 데이터베이스 라이브러리를 설치한 후에는 이 패널이 데이터베이스를 탐색하는 브라우저 역할을 합니다.

배치 후에는 Tools » Update Parameters From Database 명령을 사용하여 배치된 컴포넌트와 데이터베이스에 연결된 해당 레코드 간에 설계 파라미터 정보를 동기화할 수 있습니다. 그래픽 심볼, 모델 참조, 파라미터를 포함한 전체 컴포넌트 업데이트는 Tools » Update From Libraries 명령으로 수행할 수 있습니다. 또한 데이터베이스의 파라메트릭 정보는 최종 BOM(Bill of Materials)에 포함할 수 있어, 부품 조달에 바로 활용할 수 있습니다.

The Move from 32-bit to 64-bit Software

버전 18.0 출시와 함께 Altium Designer는 64비트가 되었습니다. 64비트 버전의 Altium Designer에서 설계 컴포넌트를 데이터베이스에 연결하려면 백엔드 데이터베이스 엔진도 64비트여야 합니다. 32비트 Microsoft Access 데이터베이스 엔진을 통해 연결을 시도하면 다음 오류 메시지가 표시됩니다.

Error dialog, reporting that a 64-bit version of the Microsoft Access Database engine is required for database linking

같은 컴퓨터에서 32비트와 64비트 Altium Designer 모두에서 데이터베이스 라이브러리를 사용해야 한다면, 제공되는 해결 방법을 더 알아보기 위해 다음 페이지를 참고하십시오: Using Database Libraries with 32-bit and 64-bit Altium Designer on the Same Computer page.

또한 64비트 데이터베이스 엔진을 설치한 후에도, ProviderConnection String 세부 정보에 잘못된 구문이 있는 경우와 같은 특정 연결 오류로 인해 잘못된 데이터베이스 엔진이 호출되면서 위에 표시된 오류 대화상자가 나타날 수 있습니다.

직접 배치 - 단순한 링크를 넘어서

Altium Designer는 컴포넌트에서 데이터베이스로 연결하는 세 가지 방법을 제공합니다. 각각 Database Link 파일(*.DbLink), Database Library 파일(*.DbLib), SVN Database Library 파일(*.SVNDbLib)을 사용하는 방식입니다. DbLink 방식은 설계(또는 라이브러리)에서 사용되는 컴포넌트를 데이터베이스에 입력된 데이터와 연결하고 동기화 상태를 유지하는 효율적인 수단을 제공합니다. DbLib/SVNDbLib 방식은 이러한 검증된 링크 효율성에 더해, 데이터베이스에서 컴포넌트를 직접 배치할 수 있는 자유를 제공합니다. 즉, 해당 데이터베이스 레코드에 저장된 정보를 기반으로 컴포넌트를 동적으로 생성하는 것입니다.

데이터베이스 라이브러리 기능을 더 깊이 살펴보기 전에, 이들 방법을 사용하는 방식 측면에서의 차이를 논의해 볼 가치가 있습니다.

Database Link 파일을 사용한 링크

Related page: 기존 컴포넌트를 회사 데이터베이스에 연결

  • 이 방법에서는 Database Link 파일(*.DbLink)이 회로도 컴포넌트와 데이터베이스의 일치하는 레코드 간의 연결을 정의합니다. 레코드 매칭은 키 필드 링크로 설정되며, 단일 키 필드(예: 부품 번호)일 수도 있고, Where 절을 정의하여 여러 키 필드를 사용할 수도 있습니다.
  • 이 링크 방식에서는 컴포넌트의 모델 및 파라미터 정보가 Altium Designer 라이브러리 컴포넌트의 일부로 미리 정의되어 있어야 합니다. 또한 라이브러리 컴포넌트 정의에는 필요한 키 필드 정보도 포함되어야 합니다. 이를 정의한 뒤 Library Package 또는 Design 프로젝트에 Database Link 파일을 추가하면, 컴포넌트 정보(파라미터)를 데이터베이스 필드 내용과 동기화할 수 있습니다.
  • 각 데이터베이스 레코드로 정의되는 각 물리 컴포넌트가 반드시 고유한 Altium Designer 라이브러리 컴포넌트에 매핑될 필요는 없습니다(여러 데이터베이스 컴포넌트가 동일한 컴포넌트 심볼을 공유할 수 있음). 하지만 이 링크 방식은 일반적으로 “데이터베이스 레코드 1개 : Altium Designer 컴포넌트 1개” 형태로 사용됩니다. 고유한 Altium Designer 컴포넌트는 회로도 시트에 배치된 인스턴스일 수도 있고, 컴포넌트 라이브러리 내의 고유 컴포넌트일 수도 있습니다.
  • DbLink 스타일의 데이터베이스 링크에서는 라이브러리 패키지 또는 설계 프로젝트에 Database Link 파일을 포함합니다.

Database Library 파일을 사용한 링크

  • 이 방법에서도 Database Library 파일(*.DbLib)이 회로도 컴포넌트와 데이터베이스의 일치하는 레코드 간의 연결을 정의합니다. 마찬가지로 레코드 매칭은 키 필드 링크로 설정되며, 단일 키 필드(예: 부품 번호) 또는 Where 절을 정의한 다중 키 필드일 수 있습니다.
  • 이 링크 방식의 핵심 차이점은, 컴포넌트의 심볼/모델/파라미터 정보가 외부 데이터베이스에서 해당 컴포넌트 레코드 정의의 일부로 저장된다는 점입니다. 참조되는 회로도 컴포넌트(기저 컴포넌트 라이브러리(*.SchLib)에 저장됨)는 심볼만 포함하며, 연결된 모델도 없고 정의된 설계 파라미터도 없습니다.
  • 컴포넌트를 배치할 때, 매칭된 데이터베이스 레코드의 해당 필드와 정의된 매핑에 따라 파라미터 및 모델 정보가 즉석에서 생성됩니다. 이후 이들 파라미터 중 하나 이상이 정의된 매칭 기준에 따라 데이터베이스로의 지속적인 링크를 유지하는 데 사용되며, 배치 후 향후 동기화를 가능하게 합니다.
  • 이 링크 방식은 배치 시점에 컴포넌트를 동적으로 생성하기 때문에, “여러 데이터베이스 레코드 : Altium Designer 컴포넌트 1개” 형태로 사용하기에 매우 적합합니다.
  • DbLink 스타일의 데이터베이스 링크에서는 DbLink 파일을 라이브러리 패키지(또는 설계 프로젝트)에 포함해야 하는 반면, DbLib/SVNDbLib 파일은 프로젝트에 추가할 필요가 없습니다. 데이터베이스 라이브러리(DbLib)는 Available File-based Libraries에 포함되며, Components panel에서 접근할 수 있습니다. Available File-based Libraries는 Project Libraries, Installed Libraries, 또는 지정된 검색 경로에서 찾은 라이브러리로 구성될 수 있음을 기억하십시오.
  • 일반적으로 DbLib/SVNDbLib 파일은 라이브러리 중심 방식으로 구성합니다. 예를 들어 회사 데이터베이스에 정의된 모든 저항에 대한 파일 하나, 커패시터에 대한 파일 하나 등으로 구성할 수 있습니다.

Database Link 파일과 Database Library 파일을 사용하는 작업 방식의 차이를 반영하여, DbLink가 프로젝트에 추가되면 Settings\Database Link Files 하위 폴더에 표시되는 반면, DbLib 및 SVNDbLib 파일은 아래에 보이는 것처럼 Libraries 폴더 아래의 적절한 하위 폴더에 표시됩니다. 이는 DbLink가 컴포넌트와 관련 데이터베이스 레코드 사이의 인터페이스/링크 파일로 동작하는 반면, DbLib 유형 파일은 라이브러리처럼 사용되어 설계자가 데이터베이스의 컴포넌트 레코드를 탐색할 수 있게 해준다는 점을 반영합니다.

Projects panel showing where each type of database link/library file is included in the project structure

DbLib vs SVNDbLib

SVN Database Library는 Database Library 모델의 확장으로, 소스 심볼과 모델이 버전 관리 하에 저장된다는 점이 다릅니다.

소스 라이브러리는 Subversion 기반 리포지토리 내에서 생성되고, 추가되며, 유지관리됩니다. 리포지토리 및 외부 데이터베이스에 대한 링크는 SVN Database Library 파일(*.SVNDbLib) 내에 정의됩니다. 그리고 이 접근 방식은 Database Library의 확장이므로, 흔히 Version-Controlled Database Library라고도 불립니다.

라이브러리 관리자(Librarian)인가, 설계자(Designer)인가?

버전 관리되는 데이터베이스 라이브러리는 기본적으로 Librarian로 작업하거나, Designer로 작업하는 두 가지 모드가 있습니다.

라이브러리 관리자(Librarian)로서, 심볼 및 모델 라이브러리의 외부 소스 컨트롤 리포지토리를 설정하고 유지관리해야 할 뿐 아니라, SVN Database Library 파일도 설정할 책임이 있습니다. 여기에는 다음이 포함됩니다:

  • 외부 컴포넌트 데이터베이스에 연결.
  • 데이터베이스 레코드에서 컴포넌트 파라미터/모델로의 매핑 정의.
  • 심볼 및 모델 라이브러리가 저장된 SVN 리포지토리에 대한 링크 지정.

설계자(Designer)로서, 라이브러리 관리자(Librarian)가 생성한 SVNDbLib 파일을 받아 Available File-based Libraries 목록에 추가함으로써 Components panel에서 사용할 수 있게 하고, 데이터베이스 컴포넌트를 탐색 및 배치합니다.

Altium Designer는 설계자가 라이브러리 관리자 기반 작업을 수행하는 것을 어떤 방식으로도 금지하지 않습니다. 소스 컨트롤 리포지토리에 대해 정의된 접근 권한/퍼미션이 궁극적으로 설계자가 라이브러리 관리자 “차”를 어디까지 몰 수 있는지를 결정합니다. 예를 들어 설계자는 라이브러리를 체크아웃하고 열어 수정할 수 있지만, 변경 사항을 리포지토리에 커밋하는 것은 차단될 수 있습니다.

이러한 역할의 사용 방식은 회사마다 다릅니다. 대기업의 경우 전담 라이브러리 센터가 있어, 라이브러리 관리자 역할로 소스 컨트롤 리포지토리 내 심볼 및 모델 라이브러리의 설정과 유지관리, 그리고 SVN Database Library 파일 생성만을 담당할 수 있습니다. 이후 SVNDbLib 파일은 해당 회사의 설계자에게 제공되며, 설계자는 이를 설치하고 사용하여 설계에서 컴포넌트를 배치합니다.

소규모 회사에서는 두 역할을 동일 인물이 수행할 수도 있습니다. 그 사람은 라이브러리 리포지토리를 설정하고 유지관리할 뿐 아니라, 정의된 SVNDbLib를 설계 작업에도 사용합니다.

소스 컨트롤 리포지토리

Related article: 외부 버전 관리 사용

심볼 및 모델 라이브러리 파일은 Subversion(SVN) 리포지토리에 추가되어야 합니다. Altium Designer에는 SVN Version Control Provider가 포함되어 있으며, 이는 Data Management - Version Control pagePreferences dialog에서 활성화 및 구성합니다. SVN Version Control Provider를 활성화한 후에는 Data Management - Design Repositories page의 Preferences dialog에서 리포지토리를 생성할 수 있습니다.

SVN 리포지토리는 TortoiseSVN과 같은 외부 SVN 클라이언트 및 서버를 사용하여 Altium Designer 외부에서도 생성 및 관리할 수 있습니다. 기존 리포지토리는 Data Management - Design Repositories page의 Preferences dialog에서 연결할 수 있습니다.

리포지토리에 파일을 추가할 때 주의해야 할 중요한 점은, 각 심볼과 모델이 must be stored in its own library file. 일반 라이브러리(심볼/모델을 얼마든지 포함할 수 있음)에서는 단일 항목만 변경해도 버전 관리 시스템이 전체를 수정된 것으로 표시하게 됩니다. 라이브러리 파일당 심볼/모델을 하나씩 두면 버전 관리의 특성에 맞게 동작하여, 무엇이 수정되었고 무엇이 수정되지 않았는지 정확히 추적할 수 있습니다.

이 문서에서는 리포지토리가 이미 생성되어 있다고 가정합니다.

사용 중인 특정 SVN 클라이언트의 사용 방법에 대해서는 해당 소프트웨어와 함께 제공되는 관련 문서를 참조하십시오. 버전 관리에 대한 자세한 내용은 Using External Version Control을 참고하십시오. 이 문서를 읽을 때, 버전 관리되는 데이터베이스 라이브러리의 경우 사용되는 소스 제어 시스템은 Subversion이어야 한다는 점을 기억하십시오.

Library Splitter Wizard 사용하기

심볼과 모델용 라이브러리를 새로 만드는 경우에는 파일당 심볼/모델을 하나만 두도록 하는 데 문제가 없습니다. 하지만 일반적으로는 소스 라이브러리가 이미 존재합니다. 이러한 라이브러리를 SVN 리포지토리에 추가할 수 있도록 단일 엔티티 파일로 분리하는 작업을 단순화하기 위해, Altium Designer는 분할 도구인 Library Splitter Wizard를 제공합니다. 이 마법사는 다중 컴포넌트 회로도(*.SchLib) 및 PCB(*.PcbLib) 라이브러리를 개별 컴포넌트 라이브러리로 빠르게 분할할 수 있게 해줍니다. 이 마법사는 Schematic Library Editor, PCB Library Editor, SVN Database Library Editor의 Tools 메뉴에서 접근할 수 있습니다.

Library Splitter Wizard를 사용하여 소스 라이브러리를 파일당 심볼/모델 하나로 분할합니다.Library Splitter Wizard를 사용하여 소스 라이브러리를 파일당 심볼/모델 하나로 분할합니다.

분할 프로세스를 위한 설정은 다음 단계를 포함합니다.

  1. 분할하려는 필요한 소스 라이브러리 파일을 추가합니다(같은 폴더에 있을 필요는 없음). Libraries to Split 페이지에서 분할할 회로도 또는 PCB 라이브러리를 선택합니다. Add 버튼을 클릭하면 원하는 라이브러리를 찾아 목록에 추가할 수 있는 대화상자가 열립니다. 추가된 라이브러리는 마법사 후반부에서 개별 컴포넌트 라이브러리로 분할됩니다. 소스 라이브러리는 같은 폴더에 있을 필요가 없습니다. Remove 버튼을 사용하여 목록에서 선택한 라이브러리를 삭제할 수 있습니다.

  2. 출력 디렉터리를 지정합니다. Output Directories 페이지에서 개별 컴포넌트 라이브러리의 출력 디렉터리를 설정합니다. 목록에 표시된 Output Directory는 분할된 라이브러리가 배치될 경로입니다. 필요하면 Change Output Directory를 클릭하여 목록에 표시되고 선택된 디렉터리를 업데이트합니다. 그러면 출력 디렉터리로 사용할 폴더를 찾아 선택할 수 있는 대화상자가 열립니다.

    기본적으로 출력 디렉터리는 소스 라이브러리가 저장된 동일한 디렉터리로 설정됩니다. 원본 소스 라이브러리가 모두 동일한 소스 디렉터리 폴더에 저장되어 있는 경우에는 주의가 필요합니다. 출력 디렉터리를 지정하지 않고 기본값(동일한 소스 디렉터리 폴더를 가리킴)으로 두면, 단일 심볼 및 모델 라이브러리가 매우 많이 뒤섞인 상태가 될 수 있습니다. 리포지토리 구조를 만들 때 이를 분류하는 데 상당한 시간이 소요될 수 있습니다.

    분할된 라이브러리 파일은 SVN 리포지토리에 추가될 것이므로, 심볼/모델 파일 관점에서 리포지토리에서 사용하려는 폴더 구조를 로컬 하드 디스크에 미리 구성해 두는 것이 좋습니다. 구조를 정의한 뒤, 소스 라이브러리를 그 구조 내의 해당 폴더로 복사하십시오. 그러면 각 소스 라이브러리에 대해 출력 디렉터리 설정을 기본값으로 그대로 둘 수 있습니다. 분할 후 생성된 단일 라이브러리 파일이 이미 올바른 위치에 있게 됩니다. 이후 각 폴더에서 원본 소스 라이브러리를 삭제하고, 선택한 SVN 클라이언트를 사용해 해당 폴더들을 리포지토리에 추가하면 됩니다.
  3. 소스 라이브러리가 분할되는 방식을 제어하기 위한 추가 옵션을 구성합니다. 여기에는 회로도 컴포넌트 라이브러리의 경우, 각 구성 컴포넌트에서 파라미터 및/또는 모델 정보를 제거하여 심볼만 남기도록 하는 옵션이 포함됩니다.

    Split Libraries 페이지의 두 가지 예; 왼쪽: .PCBLib  파일을 변환할 때의 Split Libraries 페이지. 오른쪽: .SCHLib  파일을 변환할 때의 Split Libraries 페이지. 
    Split Libraries 페이지의 두 가지 예; 왼쪽: .PCBLib 파일을 변환할 때의 Split Libraries 페이지. 오른쪽: .SCHLib 파일을 변환할 때의 Split Libraries 페이지.

    Options 페이지를 사용하여 라이브러리 분할 방식을 제어할 수 있습니다. 드롭다운(위 이미지 참조)에서 새 파일을 처리하는 방식을 선택합니다. Overwrite Existing Files(기본값)를 선택하면 새로 생성된 파일이 기존 파일을 덮어씁니다. Append Incrementing Number To File Names 를 선택하면, 라이브러리 분할기가 이전 페이지(Output Directories)에서 선택한 모든 출력 디렉터리를 스캔하여 덮어쓰지 않도록 보호할 파일 목록을 생성합니다. 동일한 이름의 새 컴포넌트 라이브러리에는 접미사 "_#Increment Number"가 추가됩니다.

  4. 소스 라이브러리와 옵션을 지정하면 마법사가 분석을 수행하며, 그 결과로 생성될 단일 심볼/모델 라이브러리 세트가 목록으로 제공되어 검토할 수 있습니다. 생성될 각 분할 라이브러리의 이름과, 해당 라이브러리 내부의 실제 회로도 컴포넌트/풋프린트 모델 이름이 표시됩니다. 원본 소스 라이브러리도 함께 나열됩니다. 라이브러리에 사용되는 이름은 구성 컴포넌트/모델에 사용된 이름과 동일합니다.

    컴포넌트/모델 이름에 다음 문자가 사용된 경우, 라이브러리 이름을 생성할 때 밑줄로 대체됩니다: '\', '/', '!', ''', '[', ']'.

    생성될 컴포넌트 라이브러리는 Review 페이지에서 검토할 수 있습니다. Splitted Library Name, Component Name 및 Source Library가 나열되어 분할 과정에서 생성될 새 파일을 보여줍니다. 각 열 오른쪽에 있는 아래쪽 화살표를 클릭하면 해당 열의 데이터에 대한 드롭다운 목록에 쉽게 접근할 수 있습니다. 이 기능은 매우 큰 라이브러리의 파일을 검토할 때 특히 유용합니다.

  5. 생성될 라이브러리 목록을 검토한 다음 Next을 클릭하여 분할 프로세스를 진행하고, 최종적으로 소스 제어 리포지토리에 추가할 라이브러리를 얻습니다. 마법사를 성공적으로 완료한 후에는 Finish을 클릭하여 닫습니다.

SVN Database Library Conversion Wizard 사용하기

기존 라이브러리를 SVN 유형의 데이터베이스 라이브러리로 변환하는 또 다른 방법은 SVN Database Library Conversion Wizard입니다. 이 마법사는 회로도, PCB, 데이터베이스 및 통합 라이브러리를 SVN 데이터베이스 라이브러리로 변환합니다. 이 마법사에는 변환 관련 옵션이 다수 포함되어 있으며, 소스 라이브러리를 어떻게 분할할지, 어떤 리포지토리의 어떤 디렉터리에 저장할지, 생성되는 SVNDbLib 및 MDB 데이터베이스 파일의 출력 디렉터리를 어디로 할지 등을 설정할 수 있습니다. 

이 마법사는 PCB 또는 Schematic 라이브러리 문서를 편집할 때 Tools 메뉴에서 접근할 수 있습니다.

이 마법사는 심볼 및 풋프린트 라이브러리를 분할하여 리포지토리에 체크인하고, SVNDbLib 및 Access 데이터베이스 파일을 생성합니다.이 마법사는 심볼 및 풋프린트 라이브러리를 분할하여 리포지토리에 체크인하고, SVNDbLib 및 Access 데이터베이스 파일을 생성합니다.

다음 단계는?

데이터베이스 라이브러리 작업의 다양한 측면을 더 알아보려면 다음 페이지를 참조하십시오.

AI-LocalizedAI로 번역됨
만약 문제가 있으시다면, 텍스트/이미지를 선택하신 상태에서 Ctrl + Enter를 누르셔서 저희에게 피드백을 보내주세요.
기능 제공 여부

사용 가능한 기능은 보유하고 계시는 Altium 솔루션에 따라 달라집니다. 해당 솔루션은 Altium Develop, Altium Agile의 에디션(Agile Teams 또는 Agile Enterprise), 또는 활성기간 내의 Altium Designer 중 하나입니다.

안내된 기능이 고객님의 소프트웨어에서 보이지 않는 경우, 보다 자세한 내용을 위해 Altium 영업팀 에 문의해 주세요.

구버전 문서

Altium Designer 문서는 더 이상 버전별로 제공되지 않습니다. 이전 버전의 Altium Designer 문서가 필요하신 경우, Other Installers 페이지의 Legacy Documentation 섹션을 방문해 주세요.