北向資料庫
1. 空間資料庫的組成部分
空間資料庫指的是地理信息系統在計算機物理存儲介質上存儲的與應用相關的地理空間數據的總和,一般是以一系列特定結構的文件的形式組織在存儲介質之上的。《空間資料庫》范圍及重點 1. 第一章:緒論 1) 空間資料庫基本概念、組成部分、名稱簡寫之間的聯系與區別與聯系; 答;利用當代的系統方法,在地理學、地圖學原理的指導下,對地理空間進行科學的認識與抽象,將地理資料庫化為計算機處理時所需的形式與結構,形成綜合性的信息系統技術——空間資料庫 或者SDBMS是海量SD的存儲場所、提供SD處理與更新、交換與共享,實現空間分析與決策的綜合系統。 組成:存儲系統、管理系統、應用系統 是SDBS的簡稱 2) 目前空間資料庫實現方案; 答:ORDBMS 3) GIS,RS與空間資料庫之間的聯系; 4) 常見的空間資料庫產品 答:輕量級: MS的Access、FoxPro、 SUN的Mysql 中等:MS的SQL Server系列 重量級:Oracle的Oracle 不太熟悉的有: Sybase、Informix、DB2 、Ingress、 PostgreSQL(PG)等 5) 產生空間資料庫的原因; 答:直接利用? SD特徵 :空間特性 非結構化特徵 空間關系特徵 多尺度與多態性 海量數據特性 存在的問題:復雜圖形功能:空間對象 復雜的空間關系 數據變長記錄 6)空間資料庫與普通關系資料庫的主要區別。 答:關系資料庫管理屬性數據,空間數據採用文件庫或圖庫形式;增加大二進制數據類型(BLOB),解決變長數據存儲問題;將空間數據/屬性數據全部存放在資料庫中;但空間特性由程序處理 2. 第二章:空間資料庫模型 1) 如何理解空間資料庫模型; 2) 空間數據及空間關系; „ (1) 空間數據類型 幾何圖形數據 影像數據 屬性數據 地形數據 元數據:對空間數據進行推理、分析和總結得到的關於數據的數據, 數據來源、數據權屬、數據產生的時間 數據精度、數據解析度、元數據比例尺 地理空間參考基準、數據轉換方法… (2) 空間關系 指地理空間實體之間相互作用的關系: 拓撲關系:形狀、大小隨投影改變。在拓撲變換下不變的拓撲變數,如相鄰、包含、相交等,
反映空間連續變化的不變性 方位關系:地理空間上的排列順序,如前後、上下、左右和東、南、西、北等方位 度量關系:距離遠近等 3) 空間資料庫如何建模; DB設計三步驟 ‹ Conceptual Data Model:與應用有關的可用信息組織、數據類型、聯系及約束、不考慮細節、E-R模型 Logic Data Model 層次、網狀、關系,都歸為關系,SQL的關系代數(relational algebra, RA) Physical Data Model:解決應用在計算機中具體實現的各種細節,計算機存儲、數據結構等 4) 模型之間如何轉換? 5) 可行的空間資料庫建模方案。 面向對象的空間資料庫模型GeoDatabase 3. 第三章:空間資料庫存儲與索引 1) 空間數據如何組織、存儲的,採用什麼技術或者方法; 為有效表達空間信息內容,空間數據必須按照一定的方式進行組織與存儲:適合外存操作的數據結構、記錄和文件的多種組織方式 SDB空間數據組織:數據項、記錄、文件、資料庫 SDB空間數據存儲:二級存儲器、緩沖區管理器、空間聚類(clustering)、空間索引 2) 空間近似與空間聚類; 目的:降低響應大查詢的尋道時間和等待時間,在二級存儲中空間上相鄰的/查詢上有關聯的空間對象在物理上存放在一起, 內部聚類(internal clustering):加快單個對象的訪問,一個對象都存放在一個磁碟塊(頁面);如超出則存放在連續扇區,本地聚類(local clustering):加快多個對象訪問。一組空間相鄰對象存放在一個頁面 空間聚類比傳統聚類技術復雜。多維空間對象無天然的順序 磁碟:一維存取,高維:將高維映射到一維, 一一對應,保持距離(distance preserving):一一對應,容易;距離不變,近似,映射技術、Z序(z-order)、Hilbert曲線 3) 空間資料庫性能提升的關鍵問題是什麼?如何提升; 資料庫索引,基於樹:ISAM、B樹、B 樹等,基於Hash:靜態、可擴展、線性等 4) 空間索引技術是什麼?為什麼產生?有哪些常見的空間索引;各有何特點及適用范圍? 依據空間對象的位置和形狀或者空間對象之間的空間關系,按一定順序排列的一種數據結構,介於空間操作演算法和空間對象之間,通過篩選,大量與特定空間操作無關的空間對象被排除,提高效率,空間資料庫關鍵的技術 空間索引產生的原因:空間數據的特點:空間定位、空間關系、多維、多尺度、海量、復雜,傳統資料庫索引處理的一維的字元、數字,對多維處理採用組合欄位 1、基於二叉樹的索引技術:二分索引樹結構主要用於索引多維數據點;對復雜空間目標(線、面、體等)的索引卻必須採用近似索引方法和空間映射技術 2、 基於B樹的索引技術 ‹B樹的變體如R樹系列,外包矩形;對大型資料庫具有出色表現;需要解決:減少區域重疊,提高搜索效率 3、基於哈希的網格技術
2. 全站儀N(北向坐標)代表的是X軸還是Y軸
全站儀里的N輸入的是坐標X。
全站儀幾乎可以用在所有的測量領域。電子全站儀由電源部分、測角系統、測距系統、數據處理部分、通訊介面、及顯示屏、鍵盤等組成。
同電子經緯儀、光學經緯儀相比,全站儀增加了許多特殊部件,因此而使得全站儀具有比其它測角、測距儀器更多的功能,使用也更方便。這些特殊部件構成了全站儀在結構方面獨樹一幟的特點。
坐標計算一般主要應用於測繪工程、建設工程之中,具體在建築設計,工程測量,測繪制圖等領域。總的來說坐標計算分為坐標正算和坐標反算兩種,這兩種在實際中是較常見的。
坐標反算
根據直線的起點和終點的坐標,計算直線的水平距離和坐標方位角的過程叫坐標反算。
坐標正算
根據直線的起點坐標、直線的水平距離以及坐標方位角來計算終點的坐標的過程叫坐標正算。
(2)北向資料庫擴展閱讀
在使用全站儀測量時,使用坐標測量應該注意:建站建好後在建立一個文件,將該文件作為存儲數據的文件夾,以便導出數據,根據一起的不同,操作也不一樣,比如南方的就比較好用。
坐標文件與測量文件是同時存儲在一個文件里,不需要再去建立一個坐標文件,而蘇州一光的就要在坐標資料庫里選擇一個存儲數據的坐標文件夾來專門來存儲坐標文件。
參考資料來源:網路-全站儀
3. 如何學習資料庫知識
好像武俠小說里邊說的:「你的招式忘了沒有?」,回答:「差不多忘了」,「忘了就好」。
這與資料庫編程有什麼關系?關系可大了。同志們學過Pascal、BASIC、C(C++)沒有?如果沒有,FOXBASE、FOXPRO應該學過吧?按以上這些語言編程,都是過程化的,說白一點就是一個數據一個數據、一條記錄一條記錄去處理(FOXBASE、FOXPRO不完全這樣,但書上也經常是這樣介紹的),當初我接觸ACCESS
97時,一下子沒有了IF、FOR這些語句(指數據處理),都用SQL語句,真是找不到北了,好在我學SQL語言時,也盡量忘掉這個IF、FOR,到我忘得差不多時,功夫也進了一大步,原來要編一大段程序,現在一兩條SQL語句搞定,就算用多幾條SQL語句,由於是在圖形界面下做,可視化操作,拉拉扯扯,再修改一下生成的SQL語句,也就省事多了。
由於ACCESS具備完整的SQL語言(FOXBASE沒有、FOXPRO不完整),我從ACCESS
97開始用ACCESS編程,到現在為止,DAO、ADO很少用,加上最近從愛賽思上接觸的一些技術,基本上不用DAO、ADO都可以了,可以從我的「未完工的庫存管理」中看出,只是在特殊情況下才偶爾用一下。(少用,但不是不用,還得學,不要誤解)
如何學好資料庫編程?下面介紹一下本人的一些經驗,僅供參考:
1.首先要把原來一個數據一個數據、一條記錄一條記錄的數據處理方式忘掉,越徹底越好。
現在用成批處理了。少用記錄集一條記錄一條記錄地處理,盡量用SQL語句。
2.學好關系資料庫的理論,尤其是規范化理論,表的設計一定要規范化,最起碼要規范化到第三範式。集合運算(並、交、差)。關系運算(選擇、投影、連接)。其中連接與規范化是緊密結合的。
3.運用面向對象的技術:面向對象的分析OOA、面向對象的設計OOD、面向對象的編程OOP,根據表的關系,用窗體和子窗體、報表和子報表,模擬面向對象,這樣可以增加程序的可讀性和可維護性。(這是高級技術,同志們不要輕視,做大項目你就知道有用了)
4.用查詢時,通常一步做不出來,可以分幾步做,本人通常是這么做的,從我給網友回復的例子中也可以看得出。為什麼要這樣做?(1)有些是SQL語言的限制,沒辦法一步做出來,逼的;(2)可以檢查每一步查詢的結果,容易調試;(3)增加可讀性,便於日後維護。
5.查詢的結果用窗體顯示或用報表列印,兩者的技術差不多。通常改變打開窗體或報表的條件就可控制顯示或列印的記錄范圍。另外用查詢做數據源時,動態改變查詢中的SQL語句,比在查詢中引用窗體的控制項要方便,因為SQL語句生成是在VBA中,可以先存放在字元變數中,然後再更新查詢的SQL語句,這樣就可以用斷點來檢查變數值對不對,如果在查詢中引用窗體的控制項,尤其是包含IIF()函數時,調試是很困難的。
6.開發一個系統,首先要解決技術問題,即演算法,用簡單例子,把演算法弄懂了,再詳細設計,這一點從網友的提問中可以看出,有很多人問題表達不清楚,有的人其中夾了很多與演算法無關的東西,尤其是很專業的東西,別人不容易看得明白,由於演算法沒搞清楚,程序就無法編了。
7.不要使用過多的工具特性,使用過多的工具特性會使可讀性降低,可維護性差,要別人幫忙時難以得到幫助,更要命的是可移植性差,從MDB到ADP就可以體會到了,所以在編程時可讀性很重要,可移植性更重要,你甘心自己的程序就固定在一個環境下運行嗎?你甘心永遠用一個工具搞開發嗎?為了你的「錢途」,不要玩弄太多的技巧,當然技術研究是另外一碼事。
4. 常用的資料庫有哪些
1. IBM 的DB2
作為關系資料庫領域的開拓者和領航人,IBM在1997年完成了System R系統的原型,1980年開始提供集成的資料庫伺服器—— System/38,隨後是SQL/DSforVSE和VM,其初始版本與SystemR研究原型密切相關。DB2 forMVSV1 在1983年推出。該版本的目標是提供這一新方案所承諾的簡單性,數據不相關性和用戶生產率。1988年DB2 for MVS 提供了強大的在線事務處理(OLTP)支持,1989 年和1993 年分別以遠程工作單元和分布式工作單元實現了分布式資料庫支持。最近推出的DB2 Universal Database 6.1則是通用資料庫的典範,是第一個具備網上功能的多媒體關系資料庫管理系統,支持包括Linux在內的一系列平台。
2. Oracle
Oracle 前身叫SDL,由Larry Ellison 和另兩個編程人員在1977創辦,他們開發了自己的拳頭產品,在市場上大量銷售,1979 年,Oracle公司引入了第一個商用SQL 關系資料庫管理系統。Oracle公司是最早開發關系資料庫的廠商之一,其產品支持最廣泛的操作系統平台。目前Oracle關系資料庫產品的市場佔有率名列前茅。
3. Informix
Informix在1980年成立,目的是為Unix等開放操作系統提供專業的關系型資料庫產品。公司的名稱Informix便是取自Information 和Unix的結合。Informix第一個真正支持SQL語言的關系資料庫產品是Informix SE(StandardEngine)。InformixSE是在當時的微機Unix環境下主要的資料庫產品。它也是第一個被移植到Linux上的商業資料庫產品。
4. Sybase
Sybase公司成立於1984年,公司名稱「Sybase」取自「system」和 「database」 相結合的含義。Sybase公司的創始人之一Bob Epstein 是Ingres 大學版(與System/R同時期的關系資料庫模型產品)的主要設計人員。公司的第一個關系資料庫產品是1987年5月推出的SybaseSQLServer1.0。Sybase首先提出Client/Server 資料庫體系結構的思想,並率先在Sybase SQLServer 中實現。
5. SQL Server
1987 年,微軟和 IBM合作開發完成OS/2,IBM 在其銷售的OS/2 ExtendedEdition 系統中綁定了OS/2Database Manager,而微軟產品線中尚缺少資料庫產品。為此,微軟將目光投向Sybase,同Sybase 簽訂了合作協議,使用Sybase的技術開發基於OS/2平台的關系型資料庫。1989年,微軟發布了SQL Server 1.0 版。
6.PostgreSQL
PostgreSQL 是一種特性非常齊全的自由軟體的對象——關系性資料庫管理系統(ORDBMS),它的很多特性是當今許多商業資料庫的前身。PostgreSQL最早開始於BSD的Ingres項目。PostgreSQL 的特性覆蓋了SQL-2/SQL-92和SQL-3。首先,它包括了可以說是目前世界上最豐富的數據類型的支持;其次,目前PostgreSQL 是唯一支持事務、子查詢、多版本並行控制系統、數據完整性檢查等特性的唯一的一種自由軟體的資料庫管理系統.
7.mySQL
mySQL是一個小型關系型資料庫管理系統,開發者為瑞典MySQL AB公司。在2008年1月16號被Sun公司收購。目前MySQL被廣泛地應用在Internet上的中小型網站中。由於其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,許多中小型網站為了降低網站總體擁有成本而選擇了MySQL作為網站資料庫。MySQL的官方網站的網址是: www.mysql.com
5. 走資料庫方向 要學什麼知識。
第一步,初級:看一本資料庫原理方面的書,學一種資料庫管理系統,如sql server,oracle等都可以。 第二步,中級:學一門編程語言,看看資料庫在實踐中是怎麼被使用的。看一本國外的資料庫原理與實現方面的教材,如北大楊冬青老師翻譯的那本就不錯! 第三步,高級:學離散數學,人工智慧,學習數據挖掘和統計,慢慢往數據倉庫和數據挖掘上轉!