Jim Paris
1beae5024e
Bulkdata extract works now.
11 years ago
Jim Paris
c7c65b6542
Work around CherryPy bug #1200 ; related cleanups
Spent way too long trying to track down a cryptic error that turned
out to be a CherryPy bug. Now we catch this using a decorator in the
'extract' and 'intervals' generators that transforms exceptions that
trigger the bugs into one that does not. fun!
11 years ago
Jim Paris
f41ff0a6e8
Inserting bulk data is essentially done, not tested
11 years ago
Jim Paris
389c1d189f
Make option to turn off chunked encoding for debugging more clear.
11 years ago
Jim Paris
487298986e
More work towards bulkdata
11 years ago
Jim Paris
d4cd045c48
Fix path stuff, build packer in bulkdata.Table
11 years ago
Jim Paris
3816645313
More work on BulkData
11 years ago
Jim Paris
83b937c720
More Pytables -> bulkdata conversion
11 years ago
Jim Paris
b3e6e8976f
More work towards flat bulk data storage.
Cleaned up OS-specific path handling in nilmdb, bulkdata.
11 years ago
Jim Paris
c890ea93cb
WIP switching away from PyTables
11 years ago
Jim Paris
84c68c6913
Better documentation, cache Tables
11 years ago
Jim Paris
6f1e6fe232
Isolate all PyTables stuff to a single file.
This will make migrating to my own data storage engine easier.
11 years ago
Jim Paris
b0d76312d1
Add must_close() decorator, use it in nilmdb
Warns at runtime if a class's close() method wasn't called before the
object was destroyed.
11 years ago
Jim Paris
19c846c71c
Remove outdated files
11 years ago
Jim Paris
f355c73209
Refactor utility classes into nilmdb.utils subdir/namespace
There's some bug with the testing harness where placing e.g.
from du import du
in nilmdb/utils/__init__.py doesn't quite work -- sometimes the
module "du" replaces the function "du". Not exactly sure why;
we work around that by just renaming files so they don't match
the imported names directly.
11 years ago
Jim Paris
173014ba19
Use nilmdb.lrucache for caching interval sets
11 years ago
Jim Paris
24d4752bc3
Add LRU cache memoizing decorator for functions
11 years ago
Jim Paris
a85b273e2e
Remove compression.
Messes up extraction, since we random access for the timestamp binary
search. In the future, maybe switching to multiple tables (one for
timestamp, one for compressed data) would be smart.
11 years ago
Jim Paris
7f73b4b304
Use compression in pytables
11 years ago
Jim Paris
f3eb6d1b79
Time it!
11 years ago
Jim Paris
9082cc9f44
Merging adjacent intervals is working now!
Adjust test expectations accordingly, since the number of intervals
they print out will now be smaller.
11 years ago
Jim Paris
bf64a40472
Some misc test additions, interval optimizations. Still need adjacency test
11 years ago
Jim Paris
32dbeebc09
More insertion checks. Need to get interval concatenation working.
11 years ago
Jim Paris
66ddc79b15
Inserting works again, with proper end/start for paired blocks.
timeit.sh script works too!
11 years ago
Jim Paris
7a8bd0bf41
Don't include layout on client side
11 years ago
Jim Paris
ee552de740
Start reworking/fixing insert timestamps
11 years ago
Jim Paris
6d1fb61573
Use 'repr' instead of 'str' in Interval string representation.
Otherwise timestamps get truncated to 2 decimal places.
11 years ago
Jim Paris
f094529e66
TODO update
11 years ago
Jim Paris
5fecec2a4c
Support deleting streams with new 'destroy' command
11 years ago
Jim Paris
85bb46f45c
Use pytable's createparents flag to avoid having to create group
structure manually.
11 years ago
Jim Paris
17c329fd6d
Start to be a little more strict about how intervals are half-open.
11 years ago
Jim Paris
437e1b425a
More speed tests, some whitespace cleanups
11 years ago
Jim Paris
c0f87db3c1
Converted rbtree, interval to Cython. Serious speedups!
11 years ago
Jim Paris
a9c5c19e30
Start converting interval.py to Cython.
11 years ago
Jim Paris
f39567b2bc
Speed updates
11 years ago
Jim Paris
99ec0f4946
Converted rbtree.py to Cython
About 3x faster
11 years ago
Jim Paris
f5c60f68dc
Speed tests.
test_interval_speed is about O(n * log n), which is good -- but the
constants are high and it hits swap on a 4G machine for the 2**21
test. Hopefully cython helps!
11 years ago
Jim Paris
bdef0986d6
rbtree and interval tests fully pass now.
On to benchmarking...
11 years ago
Jim Paris
c396c4dac8
rbtree tests complete
11 years ago
Jim Paris
0b443f510b
Filling out rbtree tests, search routines
11 years ago
Jim Paris
66fa6f3824
Add rendering test
11 years ago
Jim Paris
875fbe969f
Some documentation and other cleanups in rbtree.py
11 years ago
Jim Paris
e35e85886e
add .gitignore
11 years ago
Jim Paris
7211217f40
Working on getting the RBTree working. Intersections are busted.
git-svn-id: https://bucket.mit.edu/svn/nilm/nilmdb@11380 ddd99763-3ecb-0310-9145-efcb8ce7c51f
11 years ago
Jim Paris
d34b980516
RBTree seems generally OK now
git-svn-id: https://bucket.mit.edu/svn/nilm/nilmdb@11379 ddd99763-3ecb-0310-9145-efcb8ce7c51f
11 years ago
Jim Paris
6aee52d980
Deletion is still broken. F.
git-svn-id: https://bucket.mit.edu/svn/nilm/nilmdb@11378 ddd99763-3ecb-0310-9145-efcb8ce7c51f
11 years ago
Jim Paris
090c8d5315
More progress
git-svn-id: https://bucket.mit.edu/svn/nilm/nilmdb@11377 ddd99763-3ecb-0310-9145-efcb8ce7c51f
11 years ago
Jim Paris
1042ff9f4b
add RBtree C++ example that I based this on; update tests
git-svn-id: https://bucket.mit.edu/svn/nilm/nilmdb@11376 ddd99763-3ecb-0310-9145-efcb8ce7c51f
11 years ago
Jim Paris
bc687969c1
Work in progress switching to my own RBTree. Currently creates loops
somewhere, need to figure out what's going on.
git-svn-id: https://bucket.mit.edu/svn/nilm/nilmdb@11375 ddd99763-3ecb-0310-9145-efcb8ce7c51f
11 years ago
Jim Paris
de27bd3f41
Attempt at using a sentinel instead of class instances for the leaf node.. doesnt quite work for deletion
git-svn-id: https://bucket.mit.edu/svn/nilm/nilmdb@11361 ddd99763-3ecb-0310-9145-efcb8ce7c51f
11 years ago