Code Monkey home page Code Monkey logo

sfcs-api's Introduction

sfseize-api

This is a simple project that defines a proposed API for working with space-filling curves (and their attendant utility classes) for the purposes of multi-dimensional indexing in NoSQL data stores.

For an example of an existing space-filling curve library, please see LocationTech's SFCurve project on GitHub. (Full disclosure: I'm a committer on that project, and hope that parts of this API may some day be useful to SFCurve.)

coarse development status by section

area API example implementation notes
discretizer Yes Yes translates between user space and index space
field range Yes Yes a contiguous subset of an ordered field
space Yes Yes a collection of one or more field ranges that together define a sub-space
dimension Kinda' No needs to include more metadata? standard type information?
curve Yes Yes keep this lossless, operating strictly within index-space; helpers can be used to translate to/from user space
query No No this needs to include not only routines for correctness, but for short-circuiting to be faster at the cost of more false positives

issues and developer notes

  1. The issue of floating-point precision for discretization and bin ranges needs to be reconsidered. Having assumed that the end-points are calculated without error will turn out to be a Bad Idea.

sfcs-api's People

Contributors

cne1x avatar

Watchers

James Cloos avatar

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.