4 |
use Sack::Shard; |
use Sack::Shard; |
5 |
|
|
6 |
use Data::Dump qw(dump); |
use Data::Dump qw(dump); |
|
use Data::Structure::Util qw(unbless); |
|
7 |
use autodie; |
use autodie; |
8 |
|
|
9 |
use MongoDB; |
use MongoDB; |
10 |
|
|
11 |
my $name = 'dns'; |
my $name = 'pxelator'; |
12 |
my $shard_size = 5000; |
my $shard_size = 5000; |
13 |
|
|
14 |
|
|
16 |
my $database = $connection->get_database('pxelator'); |
my $database = $connection->get_database('pxelator'); |
17 |
my $collection = $database->get_collection('audit'); |
my $collection = $database->get_collection('audit'); |
18 |
|
|
19 |
my $q = {"package.name" => "dnsd", "source" => "upstream"}; |
my $q; |
20 |
|
#$q = {"package.name" => "dnsd", "source" => "upstream"}; |
21 |
|
|
22 |
warn "# mongodb query: ", dump($q), $/; |
warn "# mongodb query: ", dump($q), $/; |
23 |
|
|
26 |
Sack::Shard::create( $name, $cursor->count, $shard_size ); |
Sack::Shard::create( $name, $cursor->count, $shard_size ); |
27 |
|
|
28 |
while( my $o = $cursor->next ) { |
while( my $o = $cursor->next ) { |
29 |
$o->{_id} .= ''; |
$o->{_id} .= ''; # convert _id to scalar |
30 |
Sack::Shard::add( $o ); |
Sack::Shard::add( $o ); |
31 |
} |
} |
32 |
Sack::Shard::finish; |
Sack::Shard::finish; |