blob: ea9285fea15c147c037e681ab143eae26b711ac0 [file] [log] [blame]
~~
~~ Licensed to the Apache Software Foundation (ASF) under one
~~ or more contributor license agreements. See the NOTICE file
~~ distributed with this work for additional information
~~ regarding copyright ownership. The ASF licenses this file
~~ to you under the Apache License, Version 2.0 (the
~~ "License"); you may not use this file except in compliance
~~ with the License. You may obtain a copy of the License at
~~
~~ http://www.apache.org/licenses/LICENSE-2.0
~~
~~ Unless required by applicable law or agreed to in writing,
~~ software distributed under the License is distributed on an
~~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
~~ KIND, either express or implied. See the License for the
~~ specific language governing permissions and limitations
~~ under the License.
~~
Welcome to Lens!
Lens provides an Unified Analytics interface. Lens aims to cut the Data Analytics silos by providing a single view of data across multiple tiered data stores and optimal execution environment for the analytical query. It seamlessly integrates Hadoop with traditional data warehouses to appear like one.
At a high level the project provides these features -
* Simple metadata layer which provides an abstract view over tiered data stores
* Single <<shared schema>> server based on the Hive Metastore - This schema is shared by data pipelines (HCatalog) and analytics applications.
* <<OLAP Cube QL>> which is a high level SQL like language to query and describe data sets organized in data cubes.
* A <<JDBC driver>> and <<Java client libraries>> to issue queries, and a CLI for ad hoc queries.
* <<Lens application server>> - a REST server which allows users to query data, make schema changes, scheduling queries and enforcing quota limits on queries.
* <<Driver based architecture>> allows plugging in reporting systems like Hive, Columnar data warehouses, Redshift etc.
* <<Cost based engine selection>> - allows optimal use of resources by selecting the best execution engine for a given query based on the query cost.
The following diagram shows Lens architecture.
[/images/arch.png] Lens Architecture