{ "info": { "author": "", "author_email": "", "bugtrack_url": null, "classifiers": [], "description": "# python gridfs fuse\nA FUSE wrapper around MongoDB gridfs using python and llfuse.\n\n## Usage\n\n```bash\ngridfs_fuse --mongodb-uri=\"mongodb://127.0.0.1:27017\" --database=\"gridfs_fuse\" --mount-point=\"/mnt/gridfs_fuse\" # --options=allow_other\n```\n\n### fstab example\n```\nmongodb://127.0.0.1:27017/gridfs_fuse.fs /mnt/gridfs_fuse gridfs defaults,allow_other 0 0 \n```\nNote this assumes that you have the `mount.gridfs` program (or `mount_gridfs` on MacOS X) symlinked \ninto `/sbin/` e.g. \n```bash\nsudo ln -s $(which mount.gridfs) /sbin/`\n```\n\n## Requirements\n * pymongo\n * llfuse\n\n## Install\nUbuntu 16.04:\n```bash\nsudo apt-get install libfuse python-llfuse\nsudo -H pip install gridfs-fuse\n```\n\nMacOSX:\n```bash\nbrew install osxfuse\nsudo -H pip install gridfs-fuse\n```\n\n\n## Operations supported\n * create/list/delete directories => folder support.\n * read files.\n * delete files.\n * open and write once (like HDFS).\n * rename\n\n\n## Operations not supported\n * modify an existing file.\n * resize an existing file.\n * hardlink\n * symlink\n * statfs\n\n\n## Performance\n### Setup\n* AWS d2.xlarge machine.\n * 4 @ 2.40Ghz (E5-2676)\n * 30 gigabyte RAM\n* filesystem: ext4\n* block device: three instance storage disks combined with lvm.\n```\nlvcreate -L 3T -n mongo -i 3 -I 4096 ax /dev/xvdb /dev/xvdc /dev/xvdd\n```\n* mongodb 3.0.1\n* mongodb storage engine WiredTiger\n* mongodb compression: snappy\n* mongodb cache size: 10 gigabyte\n\n### Results\n* sequential write performance: ~46 MB/s\n* sequential read performance: ~90 MB/s\n\nWrite performance was tested by copying 124 files, each having a size of 9 gigabytes and different content.\nCompression factor was about factor three.\nFiles were copied one by one => no parallel execution.\n\nRead performance was tested by randomly picking 10 files out of the 124.\nFiles were read one by one => no parallel execution.\n\n```bash\n# Simple illustration of the commands used (not the full script).\n\n# Write\npv -pr /tmp/big_file${file_number} /mnt/gridfs_fuse/\n\n# Read\npv -pr /mnt/gridfs_fuse${file_number} > /dev/null\n```\n\n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/axiros/py_gridfs_fuse", "keywords": "", "license": "BSD License", "maintainer": "", "maintainer_email": "", "name": "gridfs-fuse", "package_url": "https://pypi.org/project/gridfs-fuse/", "platform": "", "project_url": "https://pypi.org/project/gridfs-fuse/", "project_urls": { "Homepage": "https://github.com/axiros/py_gridfs_fuse" }, "release_url": "https://pypi.org/project/gridfs-fuse/0.1.2.dev1/", "requires_dist": [ "llfuse", "pymongo" ], "requires_python": "", "summary": "A FUSE wrapper around MongoDB gridfs using python and llfuse.", "version": "0.1.2.dev1" }, "last_serial": 3564495, "releases": { "0.1.2.dev1": [ { "comment_text": "", "digests": { "md5": "f64c725266395f6a974956ae98b52b72", "sha256": "e5fbf92c3383c7458e03bdbf3b6091d7eb53a170d6d1818dd315778d75705c67" }, "downloads": -1, "filename": "gridfs_fuse-0.1.2.dev1-py2-none-any.whl", "has_sig": false, "md5_digest": "f64c725266395f6a974956ae98b52b72", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 12608, "upload_time": "2018-02-08T16:49:59", "url": "https://files.pythonhosted.org/packages/7f/3e/8beb97e02e7bad6276230a29a59016dae9ada4585ba12d579940cabbc320/gridfs_fuse-0.1.2.dev1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dbbe975400974aaa4d318c84f02c3ab2", "sha256": "2759848858121cfc5120c2bc82f2232894c57dd0dd5d3e8061f7df9ea7b8dff3" }, "downloads": -1, "filename": "gridfs_fuse-0.1.2.dev1-py3-none-any.whl", "has_sig": false, "md5_digest": "dbbe975400974aaa4d318c84f02c3ab2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12639, "upload_time": "2018-02-08T16:48:38", "url": "https://files.pythonhosted.org/packages/c4/a9/c57fae09b6f977d6a67d6e6a178db2bdfa4b2e40fbc611f8ba88afce235d/gridfs_fuse-0.1.2.dev1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4a4f4fe788cc264b00bb443fdfa878d4", "sha256": "9b7b75c54c100f10ef6afc9ab0d950c5df9a17cb1c8a352ea7e54c3e45be690e" }, "downloads": -1, "filename": "gridfs_fuse-0.1.2.dev1.tar.gz", "has_sig": false, "md5_digest": "4a4f4fe788cc264b00bb443fdfa878d4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10399, "upload_time": "2018-02-08T16:50:24", "url": "https://files.pythonhosted.org/packages/15/40/4bca1eb18a2e21a16859ade87737c8191b8686dc9491bd267a5d4e2153df/gridfs_fuse-0.1.2.dev1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f64c725266395f6a974956ae98b52b72", "sha256": "e5fbf92c3383c7458e03bdbf3b6091d7eb53a170d6d1818dd315778d75705c67" }, "downloads": -1, "filename": "gridfs_fuse-0.1.2.dev1-py2-none-any.whl", "has_sig": false, "md5_digest": "f64c725266395f6a974956ae98b52b72", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 12608, "upload_time": "2018-02-08T16:49:59", "url": "https://files.pythonhosted.org/packages/7f/3e/8beb97e02e7bad6276230a29a59016dae9ada4585ba12d579940cabbc320/gridfs_fuse-0.1.2.dev1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dbbe975400974aaa4d318c84f02c3ab2", "sha256": "2759848858121cfc5120c2bc82f2232894c57dd0dd5d3e8061f7df9ea7b8dff3" }, "downloads": -1, "filename": "gridfs_fuse-0.1.2.dev1-py3-none-any.whl", "has_sig": false, "md5_digest": "dbbe975400974aaa4d318c84f02c3ab2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12639, "upload_time": "2018-02-08T16:48:38", "url": "https://files.pythonhosted.org/packages/c4/a9/c57fae09b6f977d6a67d6e6a178db2bdfa4b2e40fbc611f8ba88afce235d/gridfs_fuse-0.1.2.dev1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4a4f4fe788cc264b00bb443fdfa878d4", "sha256": "9b7b75c54c100f10ef6afc9ab0d950c5df9a17cb1c8a352ea7e54c3e45be690e" }, "downloads": -1, "filename": "gridfs_fuse-0.1.2.dev1.tar.gz", "has_sig": false, "md5_digest": "4a4f4fe788cc264b00bb443fdfa878d4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10399, "upload_time": "2018-02-08T16:50:24", "url": "https://files.pythonhosted.org/packages/15/40/4bca1eb18a2e21a16859ade87737c8191b8686dc9491bd267a5d4e2153df/gridfs_fuse-0.1.2.dev1.tar.gz" } ] }