Пример #1
0
    def get_conn(self) -> Any:
        """Establish a connection to pinot broker through pinot dbapi."""
        conn = self.get_connection(self.pinot_broker_conn_id)  # type: ignore

        pinot_broker_conn = connect(
            host=conn.host,
            port=conn.port,
            path=conn.extra_dejson.get('endpoint', '/query/sql'),
            scheme=conn.extra_dejson.get('schema', 'http'),
        )
        self.log.info('Get the connection to pinot broker on %s', conn.host)
        return pinot_broker_conn
Пример #2
0
 def get_conn(self):
     """
     Establish a connection to pinot broker through pinot dbapi.
     """
     conn = self.get_connection(self.pinot_broker_conn_id)  # pylint: disable=no-member
     pinot_broker_conn = connect(
         host=conn.host,
         port=conn.port,
         path=conn.extra_dejson.get('endpoint', '/pql'),
         scheme=conn.extra_dejson.get('schema', 'http'))
     self.log.info('Get the connection to pinot ' 'broker on %s', conn.host)
     return pinot_broker_conn
Пример #3
0
 def get_conn(self):
     """
     Establish a connection to pinot broker through pinot dbqpi.
     """
     conn = self.get_connection(self.pinot_broker_conn_id)
     pinot_broker_conn = connect(
         host=conn.host,
         port=conn.port,
         path=conn.extra_dejson.get('endpoint', '/pql'),
         scheme=conn.extra_dejson.get('schema', 'http'))
     self.log.info('Get the connection to pinot '
                   'broker on {host}'.format(host=conn.host))
     return pinot_broker_conn
Пример #4
0
 def get_conn(self):
     """
     Establish a connection to pinot broker through pinot dbqpi.
     """
     conn = self.get_connection(self.pinot_broker_conn_id)
     pinot_broker_conn = connect(
         host=conn.host,
         port=conn.port,
         path=conn.extra_dejson.get('endpoint', '/pql'),
         scheme=conn.extra_dejson.get('schema', 'http')
     )
     self.log.info('Get the connection to pinot '
                   'broker on {host}'.format(host=conn.host))
     return pinot_broker_conn
Пример #5
0
from pinotdb import connect

## Start Pinot Quickstart Batch
## docker run --name pinot-quickstart -p 2123:2123 -p 9000:9000 -p 8000:8000 -d apachepinot/pinot:latest QuickStart -type batch
conn = connect(host="localhost", port=8000, path="/query/sql", scheme="http")
curs = conn.cursor()
sql = "SELECT * FROM baseballStats LIMIT 5"
print(f"Sending SQL to Pinot: {sql}")
curs.execute(sql)
for row in curs:
    print(row)

sql = "SELECT playerName, sum(runs) FROM baseballStats WHERE yearID>=2000 GROUP BY playerName LIMIT 5"
print(f"\nSending SQL to Pinot: {sql}")
curs.execute(sql)
for row in curs:
    print(row)

sql = "SELECT playerName,sum(runs) AS sum_runs FROM baseballStats WHERE yearID>=2000 GROUP BY playerName ORDER BY sum_runs DESC LIMIT 5"
print(f"\nSending SQL to Pinot: {sql}")
curs.execute(sql)
for row in curs:
    print(row)

from sqlalchemy import *
from sqlalchemy.engine import create_engine
from sqlalchemy.schema import *

## Start Pinot Quickstart Batch
## docker run --name pinot-quickstart -p 2123:2123 -p 9000:9000 -p 8000:8000 -d apachepinot/pinot:latest QuickStart -type batchpy
Пример #6
0
from pinotdb import connect
import pandas as pd
import streamlit as st
import numpy as np
import altair as alt
import plotly.express as px

st.title('SpaceX Launch Statistics')
st.markdown(
    "Perform exploratory data analysis on SpaceX launch data set with Apache Pinot"
)

conn = connect(host='localhost', port=8000, path='/query/sql', scheme='http')
curs = conn.cursor()

# Breakdown of the landing outcome
st.subheader('Breakdown of landing outcome')
st.markdown(
    "What are difference landing outcomes with their frequencies? What's the % of successul launches?"
)
curs.execute("""
    SELECT
     landing_outcome,count(landing_outcome) as frequency
    FROM launches
    GROUP BY landing_outcome
    LIMIT 200
""")
df = pd.DataFrame(curs, columns=[item[0] for item in curs.description])
fig = px.pie(df, values='frequency', names='landing_outcome')
st.plotly_chart(fig, use_container_width=True)