GithubHelp home page GithubHelp logo

penberg / pstore Goto Github PK

View Code? Open in Web Editor NEW
26.0 7.0 5.0 806 KB

pstore, a high-performance, read-optimized database system.

License: GNU Lesser General Public License v2.1

Ruby 1.14% C 97.73% C++ 0.92% Shell 0.21%

pstore's Introduction

pstore

Build Status

Pstore is a high-performance, read-optimized database system. The core is implemented as a shared library libpstore that can be embedded in third-party applications.

There's also a CLI application pstore that is used to manipulate and inspect pstore files, and convert CSV files into pstore format.

The design of pstore is loosely based on C-Store which is another Open Source read-optimized database. The main idea is to store tabular data in column-order to improve read performance for special purpose workloads.

Installation

First, install dependencies:

Fedora:

$ yum install openssl-devel

Debian:

$ apt-get install libssl-dev

Then install pstore:

$ make install

The command installs an executable pstore to $HOME/bin.

Usage

The first step is to create a database file. You can import a CSV file into a pstore database with the following command:

pstore import dataset.csv dataset.out

After that, you can use the pstore cat command to look into the imported database:

pstore cat dataset.out

With pstore import --append you can append more data into a pstore database:

pstore import --append moredata.csv dataset.out

Running Tests

Pstore's test suite requires Ruby 1.9 and Bundler. If your operating system does not have Ruby 1.9, take a look at rbenv or RVM.

When you have both Ruby 1.9 and Bundler, install Rubygem dependencies:

bundle install

Then run the tests:

make check

License

Pstore is distributed under the LGPL version 2.1 license.

pstore's People

Contributors

jvirtanen avatar penberg avatar kro avatar kare avatar

Stargazers

Eason Wang avatar Shun Wang avatar A12 avatar Alex Strizhak avatar Andrey avatar Evgeny Gavrin avatar Max Pleaner avatar Ido Rosen avatar  avatar Ali Ahmed avatar Vishal Belsare avatar Ilya Dmitrichenko avatar Ivan Nemytchenko avatar  avatar Nick Tomlin avatar Steve Loveless avatar Travis Brady avatar Ali Sabil avatar Bryan Thompson avatar  avatar  avatar Erik Rigtorp avatar Aki Saarinen avatar  avatar Ville Peurala avatar  avatar

Watchers

 avatar  avatar  avatar James Cloos avatar Raymond Manaloto avatar  avatar  avatar

pstore's Issues

'libpstore' should not invoke 'die'

At the moment libpstore invokes die upon most errors, terminating the process. This severely limits its applicability elsewhere than in the pstore client.

What are your thoughts on this?

Repository layout

The repository layout in pstore is so 2012 compared to libtrading. What if it was organized as follows?

Documentation/
deps/
  fastlz/
  fields/
  snappy/
features/
include/
lib/
  compat/
scripts/
test/
tools/

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.