PetabyteDatabasesSql+.Net

Download Report

Transcript PetabyteDatabasesSql+.Net

Building Petabyte Databases SQL+.Net
Jim Gray
Microsoft research
http://research.microsoft.com/~gray/talks
VSlive! SQL To The Max
15 February 2002 @ San Francisco
Objects are closer
than they appear
in the mirror
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
PhotoServer:
Tom Barclay
Ya Feng Sung
TerraServer
Tom Barclay
USGS
SkyServer
Alex Szalay
Ani Thakar
Peter Kunszt
Tanu Malik
Jordan Raddick
Don Slutz
Jan vandenBerg
Some Slides
Robert Brunner
1
SQLserver™: Past and Future History

SQL 2000
–
–
–
–
–
–
–
–
–
–
–

.Net

SQL 200x
SQL
– XML schema support
– Beta late this year
XML
– updategrams
– Trustworthy:
Availability
Replication x, y, z,…
– More xPath support
Privacy
Auto Admin
– SPs and templates
Security
as
web
services
Data Transformation
– CLR (objects)
OLAP
– XML (xQuery,….)
Data Mining
– Unify Files & Records
Text Indexing
– Manageability,
English Query
– Scalability
Partitioning
Clusters
WebReference.soap proxy = new WebReference.soap();
object[] results1 = proxy.StoredProcedure
(inParam, ref inoutParam, out returnValue);
object[] results2 = proxy.Template(inParam);
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
2
Outline

We will be able to store everything,
– How do we represent it? (objects)
– How will we find it (aka: who cares?)

PhotoServer: Objects vs records vs files,
– XML++ gives us portable objects.
– Similarity search: better than nothing!

Scalability: a solved problem,
– but… Trustworthy & Manageable is not.

TerraServer and TerraService
– Why put everything in the database?
– A prototypical Web Service.

SkyServer and the World Wide Telescope
– Data Mining science data
– Serving Windows/Macintosh/Unix clients with .Net
– Federating Archives with .Net
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
3
Record Everything? What’s that?

Everything
!
Recorded
Disks will get 100x to 1,000x more capacity
– 10x to 30x more bandwidth.

Other technologies in the wings:
– mram,mems, …

The 20TB … 200TB disk drive!
– Library of Congress (books)
– A billion photos
– 2…20 years of video (continuous)
All Books
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
Zetta
Exa
MultiMedia
All LoC books
Peta
(words)
Tera
.Movi
e
A Photo
See Mike Lesk:
How much information is there:
http://www.lesk.com/mlesk/ksg97/ksg.html
See Lyman & Varian:
How much information
http://www.sims.berkeley.edu/research/projects/how-much-info/
Yotta
A Book
Giga
Mega
Kilo
4
Why Put Everything in Cyberspace?
Shrinks time
now or later
Shrinks space
here or there
Automate processing
knowbots
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
Point-to-Point
OR
Broadcast
Immediate OR Time
Delayed
Low rent
min $/byte
Locate
Process
Analyze
Summarize
5
Most storage is personal
90% of disks are IDE/ATA
85% of bytes are
Gordon Bell’s shoebox:






Scans 20 k “pages” tiff@ 300 dpi 1 GB
Music:
2 k “tacks”
7 GB
Photos: 13 k images
2 GB
Video:
Docs:
Mail:
10
hrs
3 k ppt, word,..
50 k messages
3 GB
2 GB
2 GB
16 GB
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
6
How will we find it?
Put everything in the DB (and index it)
More than a file system
 Unifies data and meta-data
 Simpler to manage

Easier to subset and reorganize

Set-oriented access

Allows online updates

Automatic indexing

Automatic replication
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
SQL
7
How do we represent it
to the outside world?
<?xml version="1.0" encoding="utf-8" ?>
- <DataSet xmlns="http://WWT.sdss.org/">



File metaphor too primitive: just a blob
Table metaphor too primitive: just records
Need Metadata describing data context
–
–
–
–
–




Format
Providence (author/publisher/ citations/…)
Rights
History
Related documents
- <xs:schema id="radec" xmlns=""
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element name="radec" msdata:IsDataSet="true">
<xs:element name="Table">
<xs:element name="ra" type="xs:double"
minOccurs="0" />
<xs:element name="dec" type="xs:double"
minOccurs="0" />
…
- <diffgr:diffgram xmlns:msdata="urn:schemasmicrosoft-com:xml-msdata"
xmlns:diffgr="urn:schemas-microsoft-com:xmldiffgram-v1">
- <radec xmlns="">
- <Table diffgr:id="Table1" msdata:rowOrder="0">
<ra>184.028935351008</ra>
<dec>-1.12590950121524</dec>
</Table>
…
- <Table diffgr:id="Table10" msdata:rowOrder="9">
<ra>184.025719033547</ra>
<dec>-1.21795827920186</dec>
</Table>
</radec>
</diffgr:diffgram>
</DataSet>
schema
In a standard format
Data or
difgram
XML and XML schema
DataSet is great example of this
World is now defining standard schemas
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
8
There is a problem:
Need Standard Data AND Methods
Niklaus Wirth:
Algorithms + Data Structures = Programs

XML data is GREAT!!!!
– XML documents are portable objects
– XML documents are complex objects
– WSDL defines the methods on objects (the class)

But will all the implementations match?
– Think of UNIX or SQL or C or…

We need conformance tests.

That’s why Web Services Interoperability
is so important. http://www.ws-i.org/
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
9
Outline

We will be able to store everything,
– How do we represent it? (objects)
– How will we find it (aka: who cares?)

PhotoServer: Objects vs records vs files,
– XML++ gives us portable objects.
– Similarity search: better than nothing!

Scalability: a solved problem,
– but… Trustworthy & Manageable is not.

TerraServer and TerraService
– Why put everything in the database?
– A prototypical Web Service.

SkyServer and the World Wide Telescope
– Data Mining science data
– Serving Windows/Macintosh/Unix clients with .Net
– Federating Archives with .Net
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
10
PhotoServer: Managing Photos

Load all photos into the database

Annotate the photos

View by various attributes

Do similarity Search

Use XML for interchange

Use dbObject, Template for access
SQL, Templates, XML data
jScript
DOM
IIS
XML datasets & mime data
Templates
Schema
SQL
(for xml)
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
11
How Similarity Search Works

For each picture Loader
– Inserts thumbnails
– Extracts 270 Features into a blob

When looking for similar picture
– Scan all photos comparing features
(dot product of vectors)
– Sort by similarity

many black squares
10% orange
…etc
72% match
No black squares
20% orange
…etc
27% match
Feature blob is an array
– Today I fake the array with functions and cast
cast(substring(feature,72,8) as float)
– When SQL Server gets C#, we won’t have to fake it.
– And… it will run 100x faster (compiled managed code).

Idea pioneered by IBM Research,
we use a variant by MS Beijing Research.
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
12
Things I Learned
from PhotoServer

Data:
– XML data sets are a universal way to represent answers
– XML data sets minimize round trips: 1 request/response

Search
– It is BEST to index
– You can put objects and attributes in a row
(SQL puts big blobs off-page)
– If you can’t index,
You can extract attributes and quickly compare
– SQL can scan at 2M records/cpu/second
– Sequential scans are embarrassingly parallel.
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
13
Outline

We will be able to store everything,
– How do we represent it? (objects)
– How will we find it (aka: who cares?)

PhotoServer: Objects vs records vs files,
– XML++ gives us portable objects.
– Similarity search: better than nothing!

Scalability: a solved problem,
– but… Trustworthy & Manageable is not.

TerraServer and TerraService
– Why put everything in the database?
– A prototypical Web Service.

SkyServer and the World Wide Telescope
– Data Mining science data
– Serving Windows/Macintosh/Unix clients with .Net
– Federating Archives with .Net
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
14
Big!
Servers
 ScaleUP: a BIG box
– SMP (32 cpus)
– 64 bit
 ScaleOut: computing by the slice
– 6 years ago: 8ktpmC, today 750ktpmC
– SQL Server is #1, #2, #3 (Windows is best DB2 platform too)
 VLDB
Management
 Availability:
– Clusters, remote logging, replication
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
15

TPC measures peak performance and
Price/Performance
SQL Server always had best price Performance

Now best of both (using scaleout)

SMP performance also impressive
Rank
Company
System
tpmC
32x8 900Mhz Xenon
256GB ram
59 TB disk
price/tpmC
Database
OS
TP Mon
Date
14.96US$
Microsoft SQL
Server 2000
Enterprise
Microsoft
Windows 2000
Advanced
Microsoft
09/19/01
22.58US$
Microsoft SQL
Server 2000
Microsoft
Windows 2000
Datacenter
Microsoft
04/10/01
Microsoft
Windows 2000
Advanced
Microsoft
09/19/01
BEA
Tuxedo6.4
12/21/01
Microsoft
09/19/01
1
ProLiant
DL760-900256P
2
IBM
eSeries370
c/s
3
ProLiant
DL760-900192P
567,882
14.04US$
Microsoft SQL
Server 2000
Enterprise
HP
HP 9000
Superdome
389,435
21.24US$
Oracle 9i
Enterprise
HP UX 11.i 64-bit
Unisys
e-@ction
Enterprise
Server ES7000
21.33US$
Microsoft SQL
Server 2000
Enterprise
Microsoft
Windows 2000
Datacenter LE
7
14
709,220
688,220
165,219
Source:
http://www.tpc.org/tpcc/results/tpcc_perf_results.asp
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
COM+
COM+
COM+
COM+
32 900Mhz Xeon
64GB ram
16
Scale Out: Buy Computing by the Slice
709,202 tpmC! == 1 Billion transactions/day


Slice: 8cpu, 8GB, 100 disks (=1.8TB) 20ktpmC
per slice, ~300k$/slice
clients and 4 DTC nodes not shown
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
17
ScaleUp: A Very Big System!

UNISYS Windows 2000 Data Center Limited
Edition

32 cpus on

32 GB of RAM and

1,061 disks (15.5 TB)

Will be helped by 64bit addressing
24
fiber
channel
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
18
Outline

We will be able to store everything,
– How do we represent it? (objects)
– How will we find it (aka: who cares?)

PhotoServer: Objects vs records vs files,
– XML++ gives us portable objects.
– Similarity search: better than nothing!

Scalability: a solved problem,
– but… Trustworthy & Manageable is not.

TerraServer and TerraService
– Why put everything in the database?
– A prototypical Web Service.

SkyServer and the World Wide Telescope
– Data Mining science data
– Serving Windows/Macintosh/Unix clients with .Net
– Federating Archives with .Net
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
19
TerraServer – A SQL poster child
http://TerraServer.HomeAdvisor.Microsoft.com/

3 x 2 TB databases

18TB disk
tri-plexed
(=6TB)

3 + 1 Cluster

99.96% uptime

1B page views
5B DB queries

Now a .NET
web service
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
20
Image Data
1m
resolution
2m
resolution
12 TB
95 % U.S.
Coverage
1 TB
100% U.S.
Coverage
USGS Topo Maps
USGS Aerial photos “DOQ”
1 Km
resolution
100 % World
Coverage
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
Encarta
Virtual
Globe

All in the database
200x200 pixel tiles
compressed

Spatial access
z-Tranform Btree
21
TerraServer Traffic & Database Growth
Average Day
Peak Day
Sessions
44,320
277,292
Page Views
879,720
2,401,209
Image Tiles
3,786,551 10,475,674
Db Queries
4,566,024 12,388,104
Bytes Xfered
59 GB
163 GB
1998 -2001
44,851,547
890,277087
3,831,989,887
4,620,815,913
59 TB
Jan 2002
900 m Rows
678 m Rows
SQL 2000
298 m Rows
231 m Rows
SQL 2000
217 m Rows
.8 TB Db
173 m Rows
SQL 7.0
.75 TB Db
SQL 7.0
SQL 7.0
1.0 TB Db
1.0 TB Db
1 Server / Win NT 4.0 EE
SQL 2000
1 Server
.8 TB Db
SQL 7.0
1 Server
1.5 TB Db
2nd Server / Win 2k DataCenter
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
1.0 TB Db
SQL 2000
SQL 2000
2.0 TB Db
SQL 2000
2.0 TB Db
1.0 TB Db
SQL 2000
1.0 TB Db
SQL 2000
2.0 TB Db
4 Node / Win2k Datacenter
Failover Cluster
22
Hardware
8 Compaq DL360 “Photon” Web Servers
One SQL database per rack
Each rack contains 4.5 tb
261 total drives / 13.7 TB total
Fiber SAN
Switches
Meta Data
Stored on 101 GB
“Fast, Small Disks”
(18 x 18.2 GB)
Imagery Data
Stored on 4 339 GB
“Slow, Big Disks”
(15 x 73.8 GB)
To Add 90 72.8 GB
Disks in Feb 2001
to create 18 TB SAN
O O
J
E E
J
SQL\Inst1
P Q
K
L
F
G
SQL\Inst2
R S
M N
4 Compaq ProLiant
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
H
8500 Db Servers
I
23
TerraServer Lessons Learned




Hardware is 5 9’s (with clustering)
Software is 5 9’s (with clustering)
Admin
is 4 9’s (offline maintenance)
Network is 3 9’s (mistakes, environment)

Simple designs are best
10 TB DB is management limit
1 PB = 100 x 10 TB DB
this is 100x better than 5 years ago.

Minimize use of tape

99999
99999
9999
999
– Backup to disk (snapshots)
– Portable disk TBs
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
24
TerraService
http://TerraService.Net/

Added .NET web services to
TerraServer
– A great way to learn what Web
Services are
– And what .Net is.

Image server
– Gives arbitrary rectangle/zoom of US
– Overlays features (hospitals,
schools,..)



Census service
You can use it in your app.
USDA is using it today.
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
Demo
Tour API
Demo map maker
Mention location and census services
25
Outline

We will be able to store everything,
– How do we represent it? (objects)
– How will we find it (aka: who cares?)

PhotoServer: Objects vs records vs files,
– XML++ gives us portable objects.
– Similarity search: better than nothing!

Scalability: a solved problem,
– but… Trustworthy & Manageable is not.

TerraServer and TerraService
– Why put everything in the database?
– A prototypical Web Service.

SkyServer and the World Wide Telescope
– Data Mining science data
– Serving Windows/Macintosh/Unix clients with .Net
– Federating Archives with .Net
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
26
Computational Science
The Third Science Branch is Evolving

In the beginning science was empirical.

Then theoretical branches evolved.

Now, we have computational branches.
– Has primarily been simulation
– Growth area data analysis/visualization
of peta-scale instrument data.
 Computational Science
– Data captured by instruments
Or data generated by simulator
– Processed by software
– Placed in a database / files
– Scientist analyzes database / files
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
27
Exploring Parameter Space
Manual or Automatic Data Mining

There is LOTS of data
– people cannot examine most of it.
– Need computers to do analysis.
Manual or Automatic Exploration
– Manual: person suggests hypothesis,
computer checks hypothesis
– Automatic: Computer suggests hypothesis
person evaluates significance

Given an arbitrary parameter space:

–
–
–
–
–
–
Data Clusters
Points between Data Clusters
Isolated Data Clusters
Isolated Data Groups
Holes in Data Clusters
Isolated Points
Nichol et al. 2001
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
28
What’s needed?
(not drawn to scale)
Scientists
Science Data & Questions
Plumbers
Databases to
Store Data
And
Execute Queries
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
Miners
Data Mining
Algorithms
Tools
Question & Answer
Visualization
29
Some science is hitting a wall
FTP and GREP are not adequate

You
You
You
You

Oh!, and 1PB ~10,000 disks






can
can
can
can
GREP
GREP
GREP
GREP
1
1
1
1
MB in a second
GB in a minute
TB in 2 days
PB in 3 years.




You can FTP 1 MB in 1 sec
You can FTP 1 GB / min (= 1 $/GB)
…
2 days and 1K$
…
3 years and 1M$
At some point you need
indices to limit search
parallel data search and analysis
This is where databases can help
Goal Make it easy to
– Publish: Record structured data
– Find: Find data anywhere in the network
Get the subset you need
– Explore datasets interactively
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
30
Web Services are The Key

Web SERVER:
– Given a url + parameters
Your
program
– Returns a web page (often dynamic)

Web
Server
Web SERVICE:
– Given a XML document (soap msg)
– Returns an XML document
– Tools make this look like an RPC.
F(x,y,z) returns (u, v, w)
– Distributed objects for the web.
Your
program
– + naming, discovery, security,..

Internet-scale
distributed computing
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
Web
Service
Data
In your
address
space
31
Data Federations of
Web Services

Massive datasets live near their owners:
–
–
–
–

Near the instrument’s software pipeline
Near the applications
Near data knowledge and curation
Super Computer centers become Super Data Centers
Each Archive publishes a web service
– Schema: documents the data
– Methods on objects (queries)

Scientists get “personalized” extracts

Uniform access to multiple Archives
– A common global schema
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
Federation
32
Why Astronomy Data?
IRAS 25m
It
has no commercial value
–No privacy concerns
–Can freely share results with others
–Great for experimenting with algorithms
It
2MASS 2m
is real and well documented
DSS Optical
–High-dimensional data (with confidence intervals)
–Spatial data
–Temporal data
IRAS 100m
Many
different instruments from
Many different places and
Many different times
Federation is a goal
The questions are interesting
WENSS 92cm
NVSS 20cm
–How did the universe form?
There
is a lot of it (petabytes)
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
ROSAT ~keV
GB 6cm33
Web Services & Grid Enable Virtual Observatory
http://www.astro.caltech.edu/nvoconf/
http://www.voforum.org/

The Internet will be the world’s best telescope:
– It has data on every part of the sky
– In every measured spectral band: optical, x-ray, radio..
– As deep as the best instruments (2 years ago).
– It is up when you are up.
The “seeing” is always great
(no working at night, no clouds no moons no..).
– It’s a smart telescope:
links objects and data to literature on them.

W3C & IETF standards Provide
– Naming
– Authorization / Security / Privacy
– Distributed Objects
Discovery, Definition, Invocation, Object Model
– Higher level services: workflow, transactions, DB,..
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
34
Steps to Virtual Observatory Prototype

Define a set of Astronomy Objects and methods.
– Based on UDDI, WSDL, XSL, SOAP, dataSet

Use them locally to debug ideas
– Schema, Units,…
– Dataset problems
– Typical use scenarios.

Federate different archives
– Each archive is a web service
– Global query tool accesses them

Working on this plan with
– Sloan Digital Sky Survey and CalTech/Palomar.
Especially Alex Szalay et. al. at JHU
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
35
Sloan Digital Sky Survey
http://www.sdss.org/

For the last 12 years astronomers
have been building a telescope
(with funding from Sloan Foundation, NSF, and a dozen universities). 90M$.

Y2000: engineer, calibrate, commission: now public data.
– 5% of the survey, 600 sq degrees, 15 M objects
60GB, ½ TB raw.
– This data includes most of the known high z quasars.
– It has a lot of science left in it but….

New the data is arriving:
– 250GB/nite (20 nights per year) = 5TB/y.
– 100 M stars, 100 M galaxies, 1 M spectra.

http://www.sdss.org/
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
36
Demo of Sky Server
http://skyserver.sdss.org/
Demo sky server
Demo Explorer
Explain need for Unix/Mac clients
Demo Java SQLQA?
Talk about federation plan.
Work is product of
Alex Szalay @ Johns Hopkins
Tanu Malik did SQLQA.
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
37
Two kinds of SDSS data in an SQL DB
(objects and images all in DB)

15M Photo Objects ~ 400 attributes
50K
Spectra with
~30 lines/
spectrum
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
38
Spatial Data Access – SQL extension
(Szalay, Kunszt, Brunner) http://www.sdss.jhu.edu/htm

Added Hierarchical Triangular Mesh (HTM)
table-valued function for spatial joins.

Every object has a 20-deep Mesh ID.
2,3,0
2
2,0
2,3,1
2,3,2
2,3,3
2,1
2,2
2,3

Given a spatial definition:
Routine returns up to ~10 covering triangles.

Spatial query is then up to ~10 range queries.

Very fast: 10,000 triangles / second / cpu.

Based onSQL Server Extended Stored Procedure
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
39
Data Loading

JavaScript of DB loader (DTS)

Web ops interface & workflow system

Data ingest and scrubbing is major effort
– Test data quality
– Chase down bugs / inconsistencies

Other major task is data documentation
– Explain the data
– Explain the schema and functions.

If we supported users, …
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
40
Scenario Design

Astronomers proposed 20 questions
– Typical of things they want to do
– Each would require a week of programming in tcl / C++/ FTP


Goal, make it easy to answer questions
DB and tools design motivated by this goal
– Implemented utility procedures
– JHU Built GUI for Linux clients
Q1: Find all galaxies without unsaturated pixels within 1' of a given point of
ra=75.327, dec=21.023
Q2: Find all galaxies with blue surface brightness between and 23 and 25 mag
per square arcseconds, and -10<super galactic latitude (sgb) <10, and
declination less than zero.
Q3: Find all galaxies brighter than magnitude 22, where the local extinction is
>0.75.
Q4: Find galaxies with an isophotal surface brightness (SB) larger than 24 in
the red band, with an ellipticity>0.5, and with the major axis of the
ellipse having a declination of between 30” and 60”arc seconds.
Q5: Find all galaxies with a deVaucouleours profile (r¼ falloff of intensity on
disk) and the photometric colors consistent with an elliptical galaxy. The
deVaucouleours profile
Q6: Find galaxies that are blended with a star, output the deblended galaxy
magnitudes.
Q7: Provide a list of star-like objects that are 1% rare.
Q8: Find all objects with unclassified spectra.
Q9: Find quasars with a line width >2000 km/s and 2.5<redshift<2.7.
Q10: Find galaxies with spectra that have an equivalent width in Ha >40Å (Ha
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
is the main hydrogen spectral line.)
Q11: Find all elliptical galaxies with spectra that have an anomalous emission
line.
Q12: Create a grided count of galaxies with u-g>1 and r<21.5 over
60<declination<70, and 200<right ascension<210, on a grid of 2’, and
create a map of masks over the same grid.
Q13: Create a count of galaxies for each of the HTM triangles which satisfy a
certain color cut, like 0.7u-0.5g-0.2i<1.25 && r<21.75, output it in a
form adequate for visualization.
Q14: Find stars with multiple measurements and have magnitude variations
>0.1. Scan for stars that have a secondary object (observed at a
different time) and compare their magnitudes.
Q15: Provide a list of moving objects consistent with an asteroid.
Q16: Find all objects similar to the colors of a quasar at 5.5<redshift<6.5.
Q17: Find binary stars where at least one of them has the colors of a white
dwarf.
Q18: Find all objects within 30 arcseconds of one another that have very
similar colors: that is where the color ratios u-g, g-r, r-I are less than
0.05m.
Q19: Find quasars with a broad absorption line in their spectra and at least one
galaxy within 10 arcseconds. Return both the quasars and the galaxies.
Q20: For each galaxy in the BCG data set (brightest color galaxy), in 160<right
ascension<170, -25<declination<35 count of galaxies within 30"of it that
have a photoz within 0.05 of that galaxy.
41
An Easy One
Q15: Find asteroids

Sounds hard but
there are 5 pictures of the object at 5 different times (color
filters) and so can “see” velocity.

Image pipeline computes velocity.
Computing it from the 5 color x,y would also be fast
Finds 1,303 objects in 3 minutes, 140MBps.


(could go 2x faster with more disks)
select objId, dbo.fGetUrlEq(ra,dec) as url
--return object ID & url
sqrt(power(rowv,2)+power(colv,2)) as velocity
from
photoObj
-- check each object.
where (power(rowv,2) + power(colv, 2))
-- square of velocity
between 50 and 1000
-- huge values =error
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
43
Q15: Fast Moving Objects

Find near earth asteroids:

SELECT r.objID as rId, g.objId as gId,
dbo.fGetUrlEq(g.ra, g.dec) as url
FROM PhotoObj r, PhotoObj g
WHERE r.run = g.run and r.camcol=g.camcol
and abs(g.field-r.field)<2 -- nearby
-- the red selection criteria
and ((power(r.q_r,2) + power(r.u_r,2)) > 0.111111 )
and r.fiberMag_r between 6 and 22 and r.fiberMag_r < r.fiberMag_g
and r.fiberMag_r < r.fiberMag_i
and r.parentID=0 and r.fiberMag_r < r.fiberMag_u
and r.fiberMag_r < r.fiberMag_z
and r.isoA_r/r.isoB_r > 1.5 and r.isoA_r>2.0
-- the green selection criteria
and ((power(g.q_g,2) + power(g.u_g,2)) > 0.111111 )
and g.fiberMag_g between 6 and 22 and g.fiberMag_g < g.fiberMag_r
and g.fiberMag_g < g.fiberMag_i
and g.fiberMag_g < g.fiberMag_u and g.fiberMag_g < g.fiberMag_z
and g.parentID=0 and g.isoA_g/g.isoB_g > 1.5 and g.isoA_g > 2.0
-- the matchup of the pair
and sqrt(power(r.cx -g.cx,2)+ power(r.cy-g.cy,2)+power(r.cz-g.cz,2))*(10800/PI())< 4.0
and abs(r.fiberMag_r-g.fiberMag_g)< 2.0

Finds 3 objects in 11 minutes
– (or 52 seconds with an index)
Ugly,
but consider the alternatives (c programs an files and…)
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt

44
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
45
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
46
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
47
Performance (on current SDSS data)

Ghz processors are fast!


IO count

Run times: on 15k$ COMPAQ Server
(2 cpu, 1 GB , 8 disk)
1E+7
Some take 10 minutes
1E+6
Some take 1 minute
1E+5
1E+4
Median ~ 22 sec.

1E+3
~1,000 IO/cpu sec
~ 64 MB IO/cpu sec
1E+1
1E+0
0.01
seconds
10
1
0.1
1. CPU sec 10.
100.
1,000.
time vs queryID
cpu
elapsed
100
1,000 IOs/cpu sec
1E+2
– (10 mips/IO, 200 ins/byte)
– 2.5 m rec/s/cpu
1000
cpu vs IO
ae
Q08
Q01
Q09
Q10A
Q19
Q12
Q10
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
Q20
Q16
Q02
Q13
Q04
Q06
Q11
Q15B
Q17
Q07
Q14
Q15A
Q05
Q03
Q18
48
Sequential Scan Speed is Important

In high-dimension data, best way is to search.

Sequential scan covering index is 10x faster
– Seconds vs minutes

SQL scans at 2M records/s/cpu (!)
500
MBps vs Disk Config
450
memspeed avg.
400
mssql
350
linear quantum
added 4th ctlr
64bit/33MHz pci bus
MBps
300
SQL saturates CPU
250
200
1 PCI bus saturates
added 2nd ctlr
150
100
1 disk controler saturates
50
0
1disk
2disk
3disk
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
4disk
5disk
6disk
7disk
8disk
9disk 10disk 11disk 12disk 12disk
2vol
49
What we learned from the 20 Queries

All have fairly short SQL programs -a substantial advance over (tcl, C++)

Many are sequential
one-pass and two-pass over data

Covering indices make scans run fast

Table valued functions are wonderful
but limitations are painful.

Counting, Binning, Histograms VERY common

Spatial indices helpful,

Materialized view (Neighbors) helpful.
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
50
Cosmo:
Computing the Cosmological Constant

Compares simulated galaxy distribution
to observed distribution

Measure distance between each pair of galaxies
A lot of work  (108 x 108 = 1016 steps)

Good algorithms make this ~Nlog2N

Needs LARGE main memory

Using Itanium
donated by Compaq
and SQL server
for data store

decade
Memory in GB
100000.0
yea
r
1
4
10000.0
32
month
day
(this is Alex Szalay,
Adrian Pope,… of JHU).
CPU time (hrs)
256
1000.0
wee
k
100.0
10.0
1.0
0
10
20
30
40
50
60
70
80
90
100
No of galaxies in Millions
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
51
Summary

We will be able to store everything,
– The challenge is organizing and finding answers.

PhotoServer: Objects vs records vs files,
– XML++ gives us portable objects.
– Similarity search: better than nothing!

Scalability: a solved problem,
– but… Trustworthy & Manageable is not.

TerraServer and TerraService
– Why put everything in the database?
– A prototypical Web Service.

SkyServer and the World Wide Telescope
– Data Mining science data
– Serving Windows/Macintosh/Unix clients with .Net
– Federating Archives with .Net
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
52
References

These Slides
– http://research.Microsoft.com/~Gray/talks/

TerraServer & TerraService
– http://terraService.Net/

Virtual Observatory (aka World Wide Telescope)
– http://www.voforum.org/

SkyServer
– http://SkyServer.SDSS.org/
– See documents at http://SkyServer.SDSS.org/en/help/download/

Download “personal SkyServer” (1GB)
– http://research.Microsoft.com/~Gray/sdss/
http://gray.microsoft.com/~gray/talks/PetabyteDatabasesSql+.Net1.ppt
53