{"id":13807476,"url":"https://github.com/tuplejump/snackfs-release","last_synced_at":"2026-01-16T20:00:05.995Z","repository":{"id":15166476,"uuid":"17894196","full_name":"tuplejump/snackfs-release","owner":"tuplejump","description":"The GA Release of SnackFS","archived":false,"fork":false,"pushed_at":"2015-07-09T12:32:04.000Z","size":779,"stargazers_count":14,"open_issues_count":2,"forks_count":5,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-05-14T01:08:32.241Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Scala","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"vinta/awesome-python","license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tuplejump.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-03-19T06:17:11.000Z","updated_at":"2024-09-02T16:06:25.000Z","dependencies_parsed_at":"2022-09-07T20:23:01.991Z","dependency_job_id":null,"html_url":"https://github.com/tuplejump/snackfs-release","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/tuplejump/snackfs-release","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tuplejump%2Fsnackfs-release","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tuplejump%2Fsnackfs-release/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tuplejump%2Fsnackfs-release/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tuplejump%2Fsnackfs-release/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tuplejump","download_url":"https://codeload.github.com/tuplejump/snackfs-release/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tuplejump%2Fsnackfs-release/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28482208,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T11:59:17.896Z","status":"ssl_error","status_checked_at":"2026-01-16T11:55:55.838Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-04T01:01:25.872Z","updated_at":"2026-01-16T20:00:05.978Z","avatar_url":"https://github.com/tuplejump.png","language":"Scala","readme":"[SnackFS @ Calliope](http://tuplejump.github.io/calliope/snackfs.html)\n\n\n# SnackFS\n\nSnackFS is our bite-sized, lightweight HDFS compatible FileSystem built over Cassandra.\nWith it's unique fat driver design it requires no additional SysOps or setup on the Cassanndra Cluster. All you have to do is point to your Cassandra cluster and you are ready to go.\n\nAs SnackFS was written as a dropin replacement for HDFS, your existing HDFS backed applications not only run as-is on SnackFS, but they also run faster!\nSnackFS cluster is also more resilient than a HDFS cluster as there is no SPOF like the NameNode.\n\n## Prerequisites\n\n1. SBT : It can be set up from the instructions [here](http://www.scala-sbt.org/release/docs/Getting-Started/Setup.html#installing-sbt).\n\n2. Cassandra(v1.2.12) : Instructions can be found [here](http://wiki.apache.org/cassandra/GettingStarted). An easier alternative would be using [CCM](https://github.com/pcmanus/ccm)\n\n## Using SnackFS\n\n### Use the binary\n\n* You can download the SnackFS distribution built with [Scala 2.9.x here](http://bit.ly/1eKV1ae) and [Scala 2.10.x here](http://bit.ly/1jI7vVw)\n\n* To add SnackFS to your SBT project use,\n\nFor SBT\n```scala\n\"com.tuplejump\" %% \"snackfs\" % \"0.6.1-EA\"\n```\n\n* To add SnackFS to your Maven project use,\nwith Scala 2.9.3 use,\n\n```xml\n\u003cdependency\u003e\n  \u003cgroupId\u003ecom.tuplejump\u003c/groupId\u003e\n  \u003cartifactId\u003esnackfs_2.9.3\u003c/artifactId\u003e\n  \u003cversion\u003e0.6.1-EA\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\nAnd with Scala 2.10.3,\n```xml\n\u003cdependency\u003e\n  \u003cgroupId\u003ecom.tuplejump\u003c/groupId\u003e\n  \u003cartifactId\u003esnackfs_2.10\u003c/artifactId\u003e\n  \u003cversion\u003e0.6.1-EA\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n### Build from Source\n\n1. Checkout the source from http://github.com/tuplejump/snackfs\n\n2. To build SnackFS distribution run sbt's dist command in the project directory\n```\n[snackfs]$ sbt dist\n```\n\n   This will result in a \"snackfs-{version}.tgz\" file in the \"target\" directory of \"snackfs\".\n   Extract \"snackfs-{version}.tgz\" to the desired location.\n\n3. Start Cassandra (default setup for snackfs assumes its a cluster with 3 nodes)\n\n4. It is possible to configure the file system by updating core-site.xml.\n   The following properties can be added.\n   * snackfs.cassandra.host (default 127.0.0.1)\n   * snackfs.cassandra.port (default 9160)\n   * snackfs.consistencyLevel.write (default QUORUM)\n   * snackfs.consistencyLevel.read (default QUORUM)\n   * snackfs.keyspace (default snackfs)\n   * snackfs.subblock.size (default 8 MB (8 * 1024 * 1024))\n   * snackfs.block.size (default 128 MB (128 * 1024 * 1024))\n   * snackfs.replicationFactor (default 3)\n   * snackfs.replicationStrategy (default org.apache.cassandra.locator.SimpleStrategy)\n\n5. SnackFS Shell provides the fs commands similar to Hadoop Shell. For example to create a directory,\n```\n[Snackfs(extracted)]$bin/snackfs -mkdir snackfs:///random\n```\n\n###To build and use with Hadoop\n\n1. Setup Apache Hadoop v1.0.4.(http://hadoop.apache.org/#Getting+Started). The base directory will be referred as 'hadoop-1.0.4' in the following steps.\n\n2. Execute the following commands in the snackfs project directory.\n```2.\n[snackfs]$ sbt package\n```\n\n   This will result in a \"snackfs_\u0026lt;scala_version\u0026gt;-\u0026lt;version\u0026gt;.jar\" file in the \"target/scala-\u0026lt;scala_version\u0026gt;\" directory of \"snackfs\".\n   Copy the jar to 'hadoop-1.0.4/lib'.\n\n3. Copy all the jars in snackfs/lib_managed and scala-library-\u0026lt;scala_version\u0026gt;.jar\n   (located at '~/.ivy2/cache/org.scala-lang/scala-library/jars') to 'hadoop-1.0.4/lib'.\n\n4. Copy snackfs/src/main/resources/core-site.xml to 'hadoop-1.0.4/conf'\n\n5. Start Cassandra (default setup for snackfs assumes its a cluster with 3 nodes)\n\n6. Hadoop fs commands can now be run using snackfs. For example,\n```\n[hadoop-1.0.4]$ bin/hadoop fs -mkdir snackfs:///random\n```\n\n###To configure logging,\n\n#### In System Environment\n\nSet SNACKFS_LOG_LEVEL in the Shell to one of the following Values\n\n* DEBUG\n* INFO\n* ERROR\n* ALL\n* OFF\n\nDefault value if not set if ERROR\n\n####In code (for further control/tuning)\nIf you want your logs in a File, update LogConfiguration.scala like below\n\n```scala\nval config = new LoggerFactory(\"\", Option(Level.ALL), List(FileHandler(\"logs\")), true)\n```\n\nThe arguments for LoggerFactory are\n\n1. node - Name of the logging node. (\"\") is the top-level logger.\n2. level - Log level for this node. Leaving it None implies the parent logger's level.\n3. handlers - Where to send log messages.\n4. useParents - indicates if log messages are passed up to parent nodes.To stop at this node level, set it to false\n\nAdditional logging configuration details can be found [here](https://github.com/twitter/util/tree/master/util-logging#configuring)\n\n","funding_links":[],"categories":["File System"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftuplejump%2Fsnackfs-release","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftuplejump%2Fsnackfs-release","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftuplejump%2Fsnackfs-release/lists"}