Baixar estatísticas | Maven | PyPI | Conda-forja | CRAN | Docker Hub |
---|---|---|---|---|---|
Apache Sedona | 225 mil/mês | ||||
Versões arquivadas do GeoSpark | 10k/mês |
Siga Sedona no Twitter para novidades: Sedona@Twitter
Junte-se à comunidade Sedona Discord:
Participe do horário comercial mensal da comunidade de Sedona: Google Agenda, terças-feiras, das 8h às 9h, horário do Pacífico, a cada 4 semanas
Sedona JIRA: Bugs, solicitações pull e outros problemas semelhantes
Listas de discussão de Sedona: [email protected]: desenvolvimento de projetos, dúvidas gerais ou tutoriais.
Apache Sedona™ é um mecanismo de computação espacial que permite aos desenvolvedores processar facilmente dados espaciais em qualquer escala em sistemas modernos de computação em cluster, como Apache Spark e Apache Flink. Os desenvolvedores de Sedona podem expressar suas tarefas de processamento de dados espaciais em Spatial SQL, Spatial Python ou Spatial R. Internamente, Sedona fornece carregamento de dados espaciais, indexação, particionamento e funcionalidade de processamento/otimização de consulta que permite aos usuários analisar dados espaciais com eficiência em qualquer escala.
Alguns dos principais recursos do Apache Sedona incluem:
Esses são alguns dos principais recursos do Apache Sedona, mas podem oferecer recursos adicionais dependendo da versão e configuração específicas.
Clique e jogue o Sedona Python Jupyter Notebook interativo imediatamente!
Apache Sedona é uma estrutura amplamente utilizada para trabalhar com dados espaciais e possui muitos casos de uso e aplicações diferentes. Alguns dos principais casos de uso do Apache Sedona incluem:
Este exemplo carrega registros de viagens de táxi em Nova York e informações sobre zonas de táxi armazenadas como arquivos .CSV no AWS S3 em dataframes espaciais de Sedona. Em seguida, ele executa consultas SQL espaciais nos conjuntos de dados de viagens de táxi para filtrar todos os registros, exceto aqueles dentro da área de Manhattan, em Nova York. O exemplo também mostra uma operação de junção espacial que corresponde registros de viagens de táxi a zonas com base no fato de a viagem de táxi estar dentro das extensões geográficas da zona. Finalmente, o último trecho de código integra a saída do Sedona com o GeoPandas e traça a distribuição espacial de ambos os conjuntos de dados.
taxidf = sedona . read . format ( 'csv' ). option ( "header" , "true" ). option ( "delimiter" , "," ). load ( "s3a://your-directory/data/nyc-taxi-data.csv" )
taxidf = taxidf . selectExpr ( 'ST_Point(CAST(Start_Lon AS Decimal(24,20)), CAST(Start_Lat AS Decimal(24,20))) AS pickup' , 'Trip_Pickup_DateTime' , 'Payment_Type' , 'Fare_Amt' )
zoneDf = sedona . read . format ( 'csv' ). option ( "delimiter" , "," ). load ( "s3a://your-directory/data/TIGER2018_ZCTA5.csv" )
zoneDf = zoneDf . selectExpr ( 'ST_GeomFromWKT(_c0) as zone' , '_c1 as zipcode' )
taxidf_mhtn = taxidf . where ( 'ST_Contains(ST_PolygonFromEnvelope(-74.01,40.73,-73.93,40.79), pickup)' )
taxiVsZone = sedona . sql ( 'SELECT zone, zipcode, pickup, Fare_Amt FROM zoneDf, taxiDf WHERE ST_Contains(zone, pickup)' )
zoneGpd = gpd . GeoDataFrame ( zoneDf . toPandas (), geometry = "zone" )
taxiGpd = gpd . GeoDataFrame ( taxidf . toPandas (), geometry = "pickup" )
zone = zoneGpd . plot ( color = 'yellow' , edgecolor = 'black' , zorder = 1 )
zone . set_xlabel ( 'Longitude (degrees)' )
zone . set_ylabel ( 'Latitude (degrees)' )
zone . set_xlim ( - 74.1 , - 73.8 )
zone . set_ylim ( 40.65 , 40.9 )
taxi = taxiGpd . plot ( ax = zone , alpha = 0.01 , color = 'red' , zorder = 3 )
Fornecemos uma imagem Docker para Apache Sedona com Python JupyterLab e um cluster de nó único. As imagens estão disponíveis no DockerHub
Para instalar o pacote Python:
pip install apache-sedona
Para compilar o código-fonte, consulte o site de Sedona
Módulos no código-fonte
Nome | API | Introdução |
---|---|---|
comum | Java | Lógica de operação geométrica central, serialização, índice |
fagulha | Spark RDD/DataFrame Scala/Java/SQL | Processamento distribuído de dados geoespaciais no Apache Spark |
piscar | Flink DataStream/Tabela em Scala/Java/SQL | Processamento distribuído de dados geoespaciais no Apache Flink |
floco de neve | SQL floco de neve | Processamento distribuído de dados geoespaciais no Snowflake |
sombreado | Sem código-fonte | jarra sombreada para Sedona Spark |
sombreado | Sem código-fonte | jarra sombreada para Sedona Flink |
testador de floco de neve | Java | programa testador para Sedona Snowflake |
píton | Faísca RDD/DataFrame Python | Processamento distribuído de dados geoespaciais no Apache Spark |
R | Faísca RDD/DataFrame em R | Invólucro R para Sedona |
zepelim | Apache Zepelim | Plug-in para Apache Zeppelin 0.8.1+ |
Visite o site do Apache Sedona para obter informações detalhadas