통계 다운로드 | 메이븐 | PyPI | 콘다 포지 | 크란 | 도커허브 |
---|---|---|---|---|---|
아파치 세도나 | 225,000/월 | ||||
보관된 GeoSpark 릴리스 | 10,000/월 |
새로운 소식을 보려면 트위터에서 Sedona를 팔로우하세요: Sedona@Twitter
Sedona Discord 커뮤니티에 가입하세요:
세도나 월간 커뮤니티 오피스 아워에 참여하세요: Google Calendar, 화요일 오전 8시부터 오전 9시(태평양 표준시), 4주마다
Sedona JIRA: 버그, 끌어오기 요청 및 기타 유사한 문제
Sedona 메일링 리스트: [email protected]: 프로젝트 개발, 일반적인 질문 또는 튜토리얼.
Apache Sedona™는 개발자가 Apache Spark 및 Apache Flink와 같은 최신 클러스터 컴퓨팅 시스템 내에서 모든 규모의 공간 데이터를 쉽게 처리할 수 있도록 하는 공간 컴퓨팅 엔진입니다. Sedona 개발자는 공간 데이터 처리 작업을 Spatial SQL, Spatial Python 또는 Spatial R로 표현할 수 있습니다. 내부적으로 Sedona는 사용자가 모든 규모의 공간 데이터를 효율적으로 분석할 수 있도록 공간 데이터 로딩, 인덱싱, 파티셔닝 및 쿼리 처리/최적화 기능을 제공합니다.
Apache Sedona의 주요 기능 중 일부는 다음과 같습니다.
이는 Apache Sedona의 주요 기능 중 일부이지만 특정 버전 및 구성에 따라 추가 기능을 제공할 수도 있습니다.
대화형 Sedona Python Jupyter Notebook을 즉시 클릭하고 플레이해 보세요!
Apache Sedona는 공간 데이터 작업에 널리 사용되는 프레임워크이며 다양한 사용 사례와 애플리케이션을 갖추고 있습니다. Apache Sedona의 주요 사용 사례는 다음과 같습니다.
이 예에서는 AWS S3에 .CSV 파일로 저장된 NYC 택시 여행 기록과 택시 구역 정보를 Sedona 공간 데이터 프레임에 로드합니다. 그런 다음 택시 여행 데이터 세트에 대해 공간 SQL 쿼리를 수행하여 뉴욕 맨해튼 지역 내의 레코드를 제외한 모든 레코드를 필터링합니다. 또한 이 예에서는 택시 여행이 구역의 지리적 범위 내에 있는지 여부에 따라 택시 여행 기록을 구역과 일치시키는 공간 조인 작업을 보여줍니다. 마지막으로 마지막 코드 조각은 Sedona의 출력을 GeoPandas와 통합하고 두 데이터 세트의 공간 분포를 표시합니다.
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 )
Python JupyterLab 및 단일 노드 클러스터와 함께 Apache Sedona용 Docker 이미지를 제공합니다. 이미지는 DockerHub에서 사용할 수 있습니다.
Python 패키지를 설치하려면 다음 안내를 따르세요.
pip install apache-sedona
소스코드를 컴파일하려면 Sedona 웹사이트를 참조하세요.
소스 코드의 모듈
이름 | API | 소개 |
---|---|---|
흔한 | 자바 | 핵심 기하학적 연산 로직, 직렬화, 인덱스 |
불꽃 | 스파크 RDD/DataFrame 스칼라/자바/SQL | Apache Spark의 분산 지리공간 데이터 처리 |
깜박거리다 | Scala/Java/SQL의 Flink DataStream/테이블 | Apache Flink의 분산 지리공간 데이터 처리 |
눈송이 | 눈송이 SQL | Snowflake의 분산 지리공간 데이터 처리 |
불꽃처럼 그늘진 | 소스코드 없음 | 세도나 스파크용 그늘진 항아리 |
깜박이는 | 소스코드 없음 | Sedona Flink용 그늘진 항아리 |
눈송이 테스터 | 자바 | Sedona Snowflake 테스터 프로그램 |
파이썬 | 스파크 RDD/DataFrame Python | Apache Spark의 분산 지리공간 데이터 처리 |
아르 자형 | R의 스파크 RDD/DataFrame | 세도나용 R 래퍼 |
제플린 | 아파치 제플린 | Apache Zeppelin 0.8.1+용 플러그인 |
자세한 내용은 Apache Sedona 웹사이트를 참조하세요.