폴더가 아닌 태그를 사용하는 파일 시스템?


122

내 파일이 엉망이어서 재귀 적 클래스 분석의 의미를 설명하는 이름을 가진 폴더로 구성하려고하지만 나중에 파일을 찾을 때 파일을 다시 찾는 데 어려움이 있습니다 (한 파일은 가능할 수 있음). 많은 폴더에 존재).

폴더를 사용하는 대신 태그 조합으로 내 파일을 찾을 수있는 파일 시스템은 무엇입니까?

그러한 파일 시스템이 있다면 OS가 어떻게 대처할 수 있을지 모르겠고 폴더 시스템에 너무 많이 의존하고 있습니다. 나는 너무 나쁘지 않은 tag2find발견했다 . 지금은 물건을 찾는 문제를 해결하지만 파일 시스템이 아닌 응용 프로그램입니다.



2
(2013 년 기준) Gmail에는 이메일 메시지에이 시스템이 이미 설치되어 있습니다. 이제 Google 드라이브에서 구현하도록하십시오!
chharvey 2013 년

이 질문과 유사한 이 한
chharvey

2
나는 이것에 대해 생각했는데, 그러한 시스템은 폴더와 파일 이름을 모두 제거 할 수 있습니다 (확장자 말도 안되는 것은 말할 것도 없습니다). 이렇게하면 파일의 경로, 이름 및 고유 식별자가 파일에 적용되는 태그 집합 일뿐입니다. 그럼에도 불구하고 동일한 태그 세트를 가진 파일이 두 개 이상있을 수 있습니다. 표기법은 동일 할 수 있습니다. 예를 들어 document/report/2015/finance/v2.01태그의 순서는 중요하지 않습니다. 이것에 대한 좋은 점은 전부가 아닌 일부 태그 만 제공해도 원하는 파일을 얻을 수 있다는 것입니다.
Petruza 2015

1
@Petruza 모든 파일에 고유 한 ID 태그가 있으면 태그 관리가 까다로울 수 있습니다. 파일 이름은 더 일반적인 태그 외에도 여전히 유용한 속성입니다.
jiggunjer 2014 년

답변:


34

당신이 요구하는 것은 데이터베이스 파일 시스템 입니다. 나는 DBFS 라는 리눅스 용 실험적 구현을 ​​알고있다 . Microsoft는 Windows Future Storage (WinFS) 개발을 시작했습니다. Vista와 함께 제공 될 예정 이었지만 기술적 인 문제로 인해 프로젝트가 지연되었고 제가 아는 한 마침내 취소되었습니다. NTFS 는 또한 파일에 대한 메타 데이터를 저장할 수 있지만 완전한 기능을 갖춘 데이터베이스 파일 시스템의 확장이 아닙니다.

이러한 파일 시스템을 운영 체제에 통합하는 것은 운영 체제의 핵심에 그렇게 복잡하지 않아야합니다. 단순히 계층 적 모델을 고수 할 수 있습니다. 복잡한 부분은 파일 시스템의 구조와 기능을 사용자에게 노출해야하는 (그래픽) 셸입니다.


2
그렇습니다. WinFS는 2006 년경에 취소되었습니다. 언젠가 DBFS를 사용해 볼 수도 있습니다.
clinux

5
시맨틱 파일 시스템 또는 관계형 파일 시스템 이라고도 합니다.
jiggunjer

37

다음은 Google을 사용하여 찾은 파일 시스템입니다.

TagFS-Stephan Bloehdorn 및 Max Völkel의 "계층 적 파일 시스템에 대한 태그 의미"문서, 2006 http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.60.4187

dhtfs- "태그 기반 파일 시스템, 파일과 관련된 태그를 기반으로 동적 디렉토리 계층 제공"사용 가능한 구현, 2007 년 마지막 릴리스 http://code.google.com/p/dhtfs/

Tagsistant- "Linux 및 BSD를위한 추론 의미 파일 시스템"프로젝트가 활발히 개발 중입니다. http://www.tagsistant.net/

Leaftag- "Linux 데스크탑 용 태그 지정"또 다른 구현, 2006 년 마지막 릴리스 http://www.chipx86.com/w/index.php/Leaftag

OS와의 통합에 있어서는 그렇게 어렵지 않다고 생각합니다. OS는 파일 시스템 계층 구조에 크게 의존하지만 태그 기반 파일 시스템은 디렉토리 구조를 모방 할 수 있습니다. 예를 들어 태그 기반 파일 시스템에서 경로 /etc/init.d는 정확히 두 개의 태그 (예 : 'etc'및 'init.d')로 태그가 지정된 모든 파일을 제공합니다. 다른 태그와이 두 태그로 태그가 지정된 파일의 경우 추가 태그가 /etc/init.d 내부의 디렉토리로 나타날 수 있습니다. 'etc', 'init.d'& 'asdf'와 같은 세 개의 태그가있는 a.txt 파일이있는 경우 'asdf'는 /etc/init.d 내부 디렉토리로 나타나고 a.txt의 전체 경로는 /가됩니다. etc / init.d / asdf / a.txt.


@clinux : 읽기 전용 인 것처럼 보이지만 최근에 또 다른 Fuse :: TagLayer 가 있습니다.
isync 2013

35

저는 파일에 태그를 지정하고 태그 기반 파일 시스템에서 파일을 볼 수 있는 Linux 프로그램 TMSU 의 저자입니다 .

다음은 몇 가지 사용 예입니다.

$ tmsu tag track.mp3 music genre=indie-rock good year=1999
$ tmsu tag melody.mp3 music
$ tmsu tag DC123.jpg photo landscape country=italy year=2014
$ tmsu files music year = 1999
./song.mp3

그리고 가상 파일 시스템 :

$ mkdir mp
$ tmsu mount mp
$ ls mp
query  tags
$ ls tags
country  genre  good  landscape  photo  music  year
$ ls tags/music
genre  good  track.1.mp3  melody.2.mp3 year

파일 이름의 숫자는 파일 이름을 고유하게 유지하기위한 식별자입니다. 이것은 파일의 원래 위치로 돌아가는 심볼릭 링크입니다.

$ ls tags/music/good  # you can drill down
genre  track.1.mp3  year
$ ls "query/music and good"  # this directory gets automatically created
track.1.mp3

아직 개발 중입니다. 작성 시점 (2014 년 10 월) 0.4.2를 사용할 수 있지만 곧 0.5.0을 릴리스 할 예정입니다.


1
Windows에서 이것을 사용하는 방법은 무엇입니까?
Jonathan

1
@Jonathan, 예, 시도 할 수 있는 오래된 Windows 빌드 가 있습니다. 약간 버그가 있으며 VFS 지원이 없습니다. 나는 적절한 포트를 수행하는 것을 계속 의미하지만 먼저 코어를 좋은 상태로 만들고 싶습니다.
Paul Ruane 2015-07-06

폴 굉장한 소리 :)
Jonathan


4

tagfs를 사용해보십시오 . 퓨즈 기반 사용자 공간 파일 시스템입니다. 태그 필터보기에서 소스 디렉토리의 태그가 지정된 디렉토리를 표시 할 수 있습니다.

예를 들어 'india'및 'photos'태그가 지정된 'vacation india'디렉토리와 'spain'및 'photos'태그가 지정된 'vacation spain'디렉토리가 있다고 가정 해 보겠습니다. '/ my_mountpoint / photos'경로를 입력하여 모든 사진을 필터링 할 수 있습니다.

디렉토리는 간단한 텍스트 파일을 통해 태그가 지정됩니다. 디렉토리의 '.tag'파일에는 태그가 포함되어 있습니다. 여러 태그는 줄 바꿈으로 구분됩니다.


3

파일 시스템 파일 태그에 대해 같은 질문을하면서이 질문을 보았습니다. 내가 다음 Windows XP에 대한이 응용 프로그램을 통해 온 / 비스타라는 TaggedFrog을 트릭을 할. 아직 시도하지 않았지만 유망 해 보입니다.

하지만 1000 개의 파일을 거치는 것을 기대하지 않습니다! 어쨌든 필자는 언젠가는 Win7로 업그레이드해야하며 기본 태깅을 시도 할 수 있습니다.


TaggedFrog는 최신 버전의 Windows도 지원한다고 생각합니다.
jiggunjer


2

TagsForAll는 Windows 용. 태그를 기반으로하는 파일 관리자입니다. 태그는 계층 구조를 가질 수 있습니다. 사용자 인터페이스는 매우 간단하지만 훌륭합니다. 무료 버전은 완전히 기능하고 데이터베이스에 태그를 저장하고, Pro 버전은 NTFS 스트림 내에서 태그를 파일로 저장합니다.


2

Elyse 의 UI 디자인 이 훌륭 하다는 것을 알았 습니다. 그러나 폴더를 감시하고 기본 태그로 새 파일에 자동으로 태그를 지정할 수없는 정적 시스템입니다.


1

나는 오랫동안 태그 기반 파일 시스템에 대해서도 생각하고 있습니다. 더 급진적이고 단순한 접근 방식에 대해 생각한 사람이 있습니까? 폴더를 완전히 잊고 (프로그램의 호환성을 위해 시뮬레이션 된 폴더 만) 모든 태그를 파일 이름에 직접 넣습니다.

(기본 파일 이름) _Tag1_Tag2_Tag3 _..... (파일 확장자)

Mydocument_tag-based-file-system_tags_file-system_stackoverflow_folder_file-name_tagfs.txt

저는 항상 파일 이름에 가능한 한 많은 정보를 입력하고 싶습니다. 가능한 모든 OS에서 수백만 개의 파일에서 모든 것을 찾을 수 있습니다.

유일한 제한은 evey OS에서 다른 파일 이름 길이이며 현재 시스템에서는 지저분합니다.

고급 OS는 다음과 같은 파일에 액세스 할 수 있습니다. Mydocument.txt 그리고 태그는 오늘날 파일 이름을 변경하는 것처럼 OS의 가장 낮은 수준에서 편집 할 수 있습니다. 갑자기 다른 Mydocument.txt가 있으면 Mydocument (2) .txt 등으로 자동 이름이 변경됩니다.

나는이 아이디어가 여기에 언급되지 않은 추가적인 문제가 없다는 것을 안다 .....

그러나 아이디어는 과거와 미래의 모든 파일 시스템에서 액세스 할 수있는 가장 기본적인 저수준 가능성에 태그를 저장하려고합니다. 그리고 모든 FS의 공통점은 파일 이름입니다.


이것은 DBFS의 매우 조잡한 구현처럼 들립니다.
Chuu

사과와 오렌지를 섞고 있습니다. 이 모든 작업은 계층 구조를 디렉토리에서 파일 이름으로 이동하는 것입니다. 즉, "all in one directory"및 "tags in the file names"는 태그 기반 세계에서 의미가 없습니다. 물론 응용 프로그램이 10,000 개의 파일을 처리해야하므로 OS가 태그 사양에 따라 파일 을 효율적으로 전달 해야하는 것은 원하지 않을 것 입니다. 따라서 앱은 "파일을 식별"하는 데 필요한 "태그"를 OS에 전송합니다. 그러면 여기에 언급 된 디렉토리 또는 대체 파일 시스템 중 하나로 돌아갑니다.
CoolHandLouis

Windows 탐색기의 경로 제한은 255 자이며 쉽게 도달 할 수 있습니다. 그렇지 않으면 파일 이름에 대한 FS 제한이 제한을 지정해야합니다. 꽤 조잡하지만 그래도 좋은 생각입니다. 파일에 메타 데이터를 저장하고 낮은 수준에서 필터링하려는 경우 파일에 데이터를 추가하거나 앞에 추가하거나 파일 이름은 같지만 다른 메타 데이터를 포함합니다. 또 다른 문제는 단순히 태그 이름을 바꾸는 데 수백만 개의 파일 수정 작업이 필요할 수 있다는 것입니다.
Rolf

실제로이 아이디어는 TagSpaces에 의해 구현되었습니다 .
Arnie97

0

나는 그 자체로 태깅 지원이 없다고 생각하지만 BFS 는 꽤 멋진 메타 데이터 기능을 지원합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.