FEMTO는 바이트 시퀀스에 대한 쿼리를 위한 색인화 및 검색 시스템입니다. FEMTO는 처리량 최적화를 갖춘 외부 메모리에 대한 FM-지수를 나타냅니다. 이 도구는 MPI와 병렬로 대규모 인덱스를 구축한 다음 다중 스레드 서버로 대규모 인덱스를 검색하는 것을 지원합니다.
FEMTO를 구축하고 테스트하려면 64비트 시스템이 필요합니다. 32비트 시스템은 검색에만 지원됩니다. FEMTO는 Linux/x86-64용 GCC로 구축되는 것으로 알려져 있습니다.
릴리스 tarball에서 FEMTO를 빌드하려면 C++ 컴파일러, libssl-dev 및 선택적으로 MPI가 필요합니다. 소스에서 빌드할 때는 flex, bison, autotools 및 libtool도 필요합니다. 이는 GNU bison 2.5 및 2.4.1에서 작동했습니다.
병렬 인덱스 구성에는 MPI가 필요합니다. MPI는 엔디안이 다른 시스템에서 실행되는 것은 지원되지 않습니다.
MPI 병렬 인덱스 구성을 사용하려면 스레드를 지원하는 MPI 버전을 설치해야 합니다. 우리는 다음과 같은 방식으로 구성된 OpenMPI 1.8.8을 사용했습니다.
./configure --prefix=/opt/openmpi1.8.8 --enable-mpirun-prefix-by-default --enable-mpi-thread-multiple --with-threads 만들다 모든 컴퓨팅 노드에 #을 설치하세요. # mpirun과 mpicc가 FEMTO와 함께 사용할 경로에 있는지 확인하려면 내보내기 PATH=$PATH:/opt/openmpi1.8.8/bin 내보내기 LD_LIBRARY_PATH=/opt/openmpi1.8.8/lib
먼저 요구 사항을 충족했는지 확인하세요!
https://github.com/femto-dev/femto/releases에서 FEMTO 릴리스 tarball로 시작하는 것이 좋습니다.
소스 체크아웃을 사용하려는 경우 추가 빌드 종속성이 있습니다.
다음과 같이 소스 체크아웃으로 시작하는 경우
자식 클론 https://github.com/femto-dev/femto.git CD 펨토
구성 스크립트도 생성해야 합니다.
sh autogen.sh
FEMTO를 빌드하려면 다음 명령을 실행하십시오.
./구성 만들다
선언/정의되었지만 사용되지 않았다는 경고가 많이 표시됩니다. 이는 정상이며 문제가 되지 않습니다. 오류가 발생하고 컴파일이 실패하는 경우 필요한 개발 라이브러리 중 일부가 설치되지 않았을 수 있습니다. (예를 들어 g++를 실행 중이고 -lssl을 찾지 못한 경우 libssl을 설치해야 함을 나타냅니다.)
포함된 단위 테스트를 실행하려면 다음을 사용하세요.
확인하다
특정 위치에 FEMTO를 설치하려면 다음과 같이 구성 라인에 --prefix를 포함해야 합니다.
./configure --prefix ~/femto_install
평소처럼,
설치하다
./configure에 지정된 대상에 FEMTO 도구를 설치합니다.
빌드 디렉터리에서 명령을 실행할 수도 있습니다.
FEMTO 아파치 모듈 설치에 대한 정보는 src/mod_femto/README를 참조하세요.
색인을 작성하려면 다음을 실행하십시오.
femto/src/dcx_cc/femto_index --tmp /path/to/tmp_dir --outfile index.femto files_or_directories_to_index
그런 다음 인덱스를 쿼리하려면 femto_search를 사용합니다. 발생 횟수를 빠르게 계산하려면 다음을 사용하세요.
femto/src/main_cc/femto_search /path/to/index_dir --count '패턴'
일치하는 문서를 보고하려면(시간은 보고된 #에 따라 다름) 다음을 사용하십시오.
femto/src/main_cc/femto_search /path/to/index_dir '패턴'
일치하는 문서 및 오프셋을 보고하려면(시간은 보고된 #에 따라 다름) 다음을 사용하십시오.
femto/src/main_cc/femto_search /path/to/index_dir --오프셋 '패턴'
사용할 수 있는 패턴 종류에 대해 자세히 알아보려면 femto/src/main/QUERY_FORMAT.txt를 참조하세요.
FEMTO 소스에는 Google RE2 패키지, jQuery, jQuery SlickGrid 및 jQuery SVG가 포함되어 있습니다.