13 Aralık 2015 Pazar

Bulutta Website

 Bulut sunucu müşteri nerede ise sanal sunucunun orada olduğu web hosting türüdür. Kaynağı dinamik bir şekilde ihtiyaca göre ayarlanabilen bir altyapıya sahiptir. Kısacası, sizin web sitenizin asla kapanmayacağı anlamına gelir. Eğer daha fazla alan veya bant genişliği gerekiyorsa, bulut hosting barındırma ihtiyaçlarına uygun şekilde otomatik olarak ayarlar. Daha az kaynak gerekiyorsa, çok çabuk uyum sağlar. Ve en iyi tarafı ise, size her ay sadece kullandığınız kadar ödemeyle mükellef tutar.
Cloud hosting, birden fazla sunucunun birbiri ile bağlanmasından oluşan bir servistir. Sunucuların aynı veri merkezi içinde olma zorunluluğu da yoktur, bir network ile birbirlerine bağlı olmaları yeterlidir.
Hatta yurtdışındaki bazı firmalar sunucularını farklı kıtalardaki farklı veri merkezlerinden tutmaktadır. Cloud hosting üzerinde çalışan siteye erişmek isteyen birisi hangi verimerkezine daha yakın ise, site o veri merkezi üzerinde çalışabilmektedir. Bu da sitenin çalışırken kullanıcıya hızlı cevap vermesini sağlar. Ayrıca bir veri merkezinde sorun oluşur ise diğer veri merkezleri çalıştığı için,  bu sorundan uygulama ve son kullanıcı etkilenmez.
Cloud hosting, load balanced (yük dengeli) çalışmaktadır. Yani uygulamanız çalışırken, ne kadar kaynağa ihtiyaç duyuyorsa o kadarını kullanırsınız ve kullandığınız kaynak kadar para ödersiniz. Klasik sunucu hizmetlerinde eğer uygulamanız bir vps'de çalışamayacak kadar büyük ise dedicated kiralamanız gerekmektedir. Ama bazen dedicated sunucu da ihtiyacınızdan fazla işlem gücüne, belleğe ve depolama alanına sahip olabiliyor. Bu durumda gereksiz yere kullanmadığınız kaynağa para ödemiş oluyorsunuz. Cloud hosting, ihtiyacın kadar kullan ve kullandığın kadar para öde mantığı ile çalıştığı için, dedicated sunucu kiralayacak kadar bütçesi olmayan bir çok web geliştiricisi cloud hosting kullanmaktadır.

      Bulut web hosting temeli;
      Bulut hosting, kişisel ya da kurumsal web site barındırmak için mükemmel bir çözümdür. Kaynak kullanımı ayarlanabilir. Web hosting hizmeti için çok fazla ödeme yapıp çok az kaynak kullanma gibi sorunları ortadan kaldırır. Bulut Web siteleri, birden fazla sunucu üzerinde olduğundan, kaynağa ihtiyacınızı duyulduğu an, istediğiniz kadar kaynağa erişmeniz mümkündür.
      Bulut web hosting faydaları;
      Bulut web hosting, günümüzün web hosting türlerine göre yeni bir kavramdır, ama pek çok özelliğiyle ağır basmaktadır.
      Ölçeklenebilirlik: Klasik web hostinglerde kaynak yetersiz geldiği zaman siteniz kapanır, ya da ekstra ödeme yapmadan kaynak yükseltilmesine gidilmez. Bulut barındırmada daha fazla alan, bant genişliği ve sunucunuza ekstra kaynak gerekiyorsa otomatik olarak size verir. Kaynak ihtiyaçlarınızı bulut sunucu karşılar ve buna göre bir ödeme çıkarır.
      Etkin maliyet: Sadece ne kadar kaynak kullanırsanız o kadar ödeme yapmanız, talep edilir. Hiçbir zaman kullanmadığınız kaynaklar için para ödemezsiniz. Örnek verecek olursak klasik web hosting sunucularında 3 gb trafik limiti aldığınız zaman, o ay sadece 1 gb trafik limiti kullansanız bile, 3 gb trafik limitinin, ücretini ödemeniz gerekecektir. Bulut sunucuda, sadece kullandığınız kadar ödersiniz.
      Daha güvenilir: Web siteniz, birden çok sunucu üzerinde barındırılır ve biri kapanır ise diğer sunucu devreye girer. Web siteniz hiçbir etkilenme yaşamadan daima çalışmaya devam eder.
      Sizin için en uygun hosting, bulut hosting mi?
      Bulut barındırma, kişisel ve firma web siteleri olmak üzere binlerce kişi tarafından kabul edilmiş ve barındırma alanında büyümeye devam ediyor. Güvenilir olması ve ihtiyaçlarınıza göre ayarlanabiliyor olması tercih nedenidir. Çok az kaynak isteyen web siteleri için bulut hosting her zaman avantajlı olmaya bilir. Eğer portallar, blog ya da kurumsal web sitesi için kuşku yoktur ki bulut web hosting mükemmel bir tercih olacaktır. Daha küçük, kişisel web siteleri için bulut web hosting henüz erken olabilir, ama teknoloji ilerledikçe bulut hosting her türlü web sitesi için uygun olup olmadığı daha net ortaya çıkacaktır. Herkes gelecekte, web sitelerini bulut sunucu üzerinde barındırıyor olacak

12 Aralık 2015 Cumartesi

BULUT BİLİŞİM VE  BULUT BİLİŞİM HİZMET MODELLERİ NELERDİR ?



Bulut bilişim (Cloud computing) veya işlevsel anlamıyla çevrim içi bilgi dağıtımıbilişim aygıtları arasında ortak bilgi paylaşımını sağlayan hizmetlere verilen genel ad. Bulut bilişim bu yönüyle bir ürün değil, hizmettir; temel kaynaktaki yazılım ve bilgilerin paylaşımı sağlanarak, mevcut bilişim hizmetinin; bilgisayarlar ve diğer aygıtlardan elektrik dağıtıcılarına benzer bir biçimde bilişim ağı (tipik olarak İnternet'ten) üzerinden kullanılmasıdır.






Bulut Bilişim’in hizmet modelleri nelerdir? IaaS, PaaS ve SaaS nedir?

cloud-computing-iaas-paas-saas
Bulut Bilişim (Cloud Computing), kullanıcıların yerel konumlarında yazılım, veri erişimi veya servis altyapısı gerekmeksizin alınacak ihtiyacın hizmet olarak sağlanmasıdır. Bulut Bilişim hizmeti Infrastructure as a Service (IaaS), Platform as a Service (PaaS), Software as a Service (SaaS) olarak 3 şekilde sunulmaktadır.
İngilizcesi Software as a Services (SaaS) olan Yazılım hizmeti, kullanıcıların ihtiyaç duyduğu CRM, ERP, finans ve muhasebe yazılımları gibi programları bulut üzerinde sağlar.
Farklı lokasyonlarda faaliyet gösteren firmalar için SaaS ekstra yazılım maliyeti oluşturmayarak ciddi ekonomik avantaj sağlar. SaaS için en uygun örnek Gmail’dir. Google’ın sunduğu bu hizmet ile mail gönderebilir, dokümanlarınızı düzenleyebilir ve dosyalarınızı yedekleyebilirsiniz. Yazılım bilginiz olmasa dahi tüm işlemlerinizi gerçekleştirebilirsiniz.
İngilizcesi Platform as a Service (PaaS) olan Platform hizmeti,  uygulama geliştiricilere donanım ve yazılım katmanları sunarak projelerini geliştirme imkanı sağlar.
Bu hizmet sistem yönetimi, işletim sistemi, programlama dili ortamı, veri tabanı vs. gibi platformlar sunar. Sistem yönetimi hizmet sağlayıcı tarafından gerçekleştirildiği için siz sadece uygulamaları ve verilerinizi yönetirsiniz. Örneğin PHP ile bir yazılım kodladınız. Kodladığınız yazılımın SQL ve web sunucu altyapısı ile uğraşmak zorunda kalmazsınız. PaaS, sadece yazılımınızın çalışması gereken platformları sağlar.
İngilizcesi Infrastructure as a Service (IaaS) olan Altyapı hizmeti, Bulut Bilişim’in en temel hizmetidir. IaaS ile sanal sunucu oluşturulup kullanıcılara bulut sunucu hizmeti sunulmaktadır.
Bulut altyapısı ile sanal sunucu kaynakları size özel olarak tahsis edilir. IaaS ile esnek altyapıya sahip olursunuz. Örneğin tatil organize eden web sitelerinde tatil sezonlarının başlangıcına yakın sunucu kaynak ihtiyacı artar. Kullanılan kaynaklar, Bulut Bilişim’in esnek yapısından faydalanılarak istendiği zaman arttırılıp/azaltılabilir.
Infrastructure as a Service (IaaS) ile bulut sunucu ihtiyacınızı karşılayan Radore, sanallaştırma altyapısında VMWare, sanallaştırılmış depolama altyapısında Dell EqualLogic ve ağ altyapısında Brocade switch ve routerlar kullanır. Bulut sunucu, fiziksel sunucunun VMware yazılımı ile sanallaştırılarak hizmet olarak sunulmasıdır.
Bulut depolama hizmetlerine en iyi örnekler:


Google Drive   
Bulut içinde kullanabileceğiniz, oluşturabileceğiniz ve kaydedip saklayacağınız kelime işlemci, tablolama ve sunum uygulamalarıyla beraber email ve takvim hizmetlerini içeren bir paket sunuyor. Kişisel kullanım ile beraber, dosyalar üzerindeki ortak çalışma teknolojisiyle firmalar için de inovatif bir çözüm platformu oluşturmaktadır


iCloud
Sadece Mac ve iOS yani Apple kullanıcıları için olsa bile, dosya saklama ve cihazlar arasında senkronizasyonu her Apple ürünü gibi en basit haline indiren bir web uygulaması ve bir veri saklama yeridir. iPhone„da çektiğiniz fotoğrafları hiç bir şey yapmadan Mac„inizde görüntüleyebilir, Mac„de güncellediğiniz adres defterine anında iPhone„unuzdan ulaşabilirsiniz

Dropbox 
Dosyalarınızı bulut ortamında saklamamıza olanak vererek, zaman ve sabit disk kullanımında büyük ölçüde tasarruf etmeniz sağlayacaktır. Online yedekleme işleri için de kullanabileceğiniz gibi, değişik donanımlarda çalışıyorsanız ya da farklı donanımlardaki farklı kişilerin erişip kullanabileceği bir alan istenildiği durumda kullanılmakta

Zoho 
Kendi içinde kelime işlemci, hesap tablosu, CRM, Proje yönetimi, Veritabanı, Raporlama araçları gibi 29 ayrı web uygulamasını barındıran bir yapı. Bu yapının içinde bu uygulamalar ile ürettiğiniz verileri kişisel olarak ya da firma hesabıyla saklayıp kullanabiliyorsunuz. Gelişmiş web uygulamalarıyla (SAAS) bulut teknolojisinin her türlü nimetlerinden yararlanan Zoho, kendisine bu alanda Google ve Microsoft ile bir yer edinmeye çalışıyor. 

Office 

Microsoft‟un ofis yazılımları içinde markalaşmış olan MS Office„i bulut üzerinde çalıştıran bir altyapıdır. Office 365, Microsoft Business Productivity Online Suite (BPOS) ve Microsoft Office SharePoint Online, Exchange Online ve Lync Online ile beraber yeni bir oluşum sunmaya hazırlanmaktadır

21 Mayıs 2015 Perşembe


TEKNE TAKİP VE MARİNE YÖNETİM SİSTEMİ PROJE YAPIM AŞAMALARI

A.Temel Uygulama Aşamaları
1.)   Spatial type bulunan bir database oluştur.
a.     Mytrack ile alınan verilerin gösterilmesi (manuel el ile database e yazıp uygulamadan okutuyoruz.)
2.)   Buna bir EF model oluştur.
3.)   Bir kontroller oluştur.
a.      Belirlenen tekneye ve o tekneye belirlenen uzaklıktaki tekneler nedir? (Gerekli sql sorgusu yazılacak)
b.    Search edilen tekne ismini  alıp bunu map te gösterme. (Gerekli sql sorgusu yazılacak)
      4.) Bu controller ait view i düzenle ( Markerlara tooltip ekleme, ajax, jquery kullanma)


A.1. Spatial Type Bulunan Bir Database Oluştur
1.) Ödevin yapımında Microsoft Sql Server Management Studio kullanacağız.

2.) İlk olarak MARİNE_TAKİP adında bir database olusturalım:
           
            CREATE DATABASE MARİNE_TAKİP

            USE MARİNE_TAKİP


3.) Olusturduğumuz bu database' e " tekne " adında bir table olusturalım:

            CREATE TABLE tekne (id int primarykey, tekne_ad nvarchar(20), marine                                                         nvarchar(20), konum geography)


4.) Olusturduğumuz bu tablonun Column Name leri sırasıyla id, tekne_ad, marine, konum olarak belirleyelim.Data Type' larını sırasıyla int, nchar, nchar ve söz konusu ödevimizin yapılış amacı olan Spatial Type olan geography.Her column Not Allow nulls yapılarak değer girilmesini zorunlu hale getirelim.


1.)    Bu yeni tablomuza değerler girelim.Bunu için şu iki komutu kullanalım:

INSERT INTO tekne(id, tekne_ad, marine, konum) VALUES(1, 'topcu', 'bandırma',geography::STGeomFromText(‘POINT (40.364002 27.969935)', 4326);


INSERT INTO tekne(id, tekne_ad, marine, konum) VALUES(2, 'tansever', 'gokceada',geography::STGeomFromText(‘POINT (40.164898 25.834468)', 4326);


INSERT INTO tekne(id, tekne_ad, marine, konum) VALUES(3, 'cobanogulları', 'bozcaada',geography::STGeomFromText(‘POINT (39.845114 26.052821)', 4326);

INSERT INTO tekne(id, tekne_ad, marine, konum) VALUES(4, 'seabird', 'antalya',geography::STGeomFromText(‘POINT (36.880226 30.699222)', 4326);

INSERT INTO tekne(id, tekne_ad, marine, konum) VALUES(5, 'martı', 'trabzon',geography::STGeomFromText(‘POINT (41.010664 39.729426)', 4326);

INSERT INTO tekne(id, tekne_ad, marine, konum) VALUES(6, 'yakamoz', 'izmir',geography::STGeomFromText(‘POINT (38.440569 27.114534)', 4326);

A.2. Bir EF Model Oluştur

1 - Visual Studio 2013 üzerinde yeni bir WepApplication projesi oluşturalım.
2 - Projemize sağ tıklayıp New Item'a tıklayalım. Ardından sol taraftan Data sekmesine gelelim ve karşımıza çıkan ADO.NET Entity Data Model seçeneğini seçelim. Name kısmına da MARİNE_TAKİPModel yazalım.
3 - Modelimizi ekledikten sonra bize aşağıdaki gibi bir pencere açılacaktır. Burada bize 4 adet seçenek sunulmakta. Entity Framework ile çalışmak için birden fazla yaklaşım söz konusudur. Şu anda bize 3 adet farklı yaklaşım ile kullanım imkanı sunulmakta. Bunları kısaca anlatmak gerekirse; EF Designer from database seçeneği önce database yaklaşımı sunar, Emtpy EF Designer model seçeneği önce model yaklaşımı sunar, Emtpy Code First model ve Code First from Database seçenekleri ise önce kod yaklaşımını sunar. Bizim seçeneğimiz basit anlamda giriş projesi oluşturduğumuz için ve fazla karışıklığa mahal vermemek adına ilk seçenek yani EF Designer from database seçeneği olacaktır. Bu seçeneği seçip Next diyelim.
4 - Gelen pencerede var olan bir bağlantıyı seçebilir yada New Connection diyerek yeni bir bağlantı oluşturabiliriz. Bağlantımızı oluşturduktan sonra Save Connection settings in App.Config as seçeneğini işaretleyelim. Bu seçeneği işaretlemezsek bağlantı bilgilerimiz direkt kod içinde belirtilecektir. Biz daha sonra da değişiklik yapılabileceğini düşündüğümüz için App.Config dosyasına eklenmesini istiyoruz. Bu seçenek işaretlendiğinde bir Name alanı gelmekte. Buraya girdiğimiz değere göre App.Config içerisine bir ConnectionString tanımlanacak ve yine bu isme göre Context sınıfımız oluşturulacak. O yüzden bu ismi kendinize göre düzenleyebilirsiniz.

5- Bir sonraki adımda veritabanı objelerimiz (table, views, stored procedure, functions) ekranda listelenecektir. Burada istediklerimizi işaretleyelim.
6- Son olarak Finish butonuna tıklayarak modelimizi oluşturabiliriz.
A-3- Bir Controller Oluştur

1-      Solution Explorer -> Controller -> Add -> Controller
1-      Bu aşamada Scaffold yapısı bize bir çok seçenek sunmakta, biz burdan Entity Framework Data Modelini kullanarak View’lerimizi de oluşturan Controller’ı seçiyoruz.
A-3-a- Belirlenen tekneye ve o tekneye belirlenen uzaklıktaki tekneler nedir? (Gerekli sql sorgusu yazılacak)

-          teknesController classı içindeki Search2 metodu
-          Bu kod kısmında; sql sorgusunu result değişkenine atıyor. Daha sonra lm adında mekan türünde yeni bir list oluşturuyor. Foreach döngüsü ile tekne içindeki sql sorgularını tek tek uygulayıp sonuçları myL ye alıyor. Bunları mekan türünde yeni bir nM nesnesi oluşturarak gerekli değişkenlere atama işlemi yapıyor. Sonra bunları lm listesine ekliyor. Ve son olarak ta json metodunu çalıştırıp  geri döndürüyor.
A-3-b- a. Search edilen tekne ismini  alıp bunu map te gösterme. (Gerekli sql sorgusu yazılacak)

-          Search metodu ve devamındaki json metodu. Temel mantık yine aynı fakat burada ki search metodu girlen tekne_ad a göre database ten map te gösterebileceği gerekli olan değerleri çekiyor.



1-      Bu controller ait view i düzenle ( Markerlara tooltip ekleme, ajax, jquery kullanma)


-          Bu kısım da controller da oluşturduğumuz search2 metodu çağrılarak sql sorgusunda geri dönen değerler script yardımıyla Google map te görsel veri haline gelmiştir.

-          Aynı zamanda ajax kullanılarak dinamik bir sayfa elde edilmiş sayfa yenilenmeden yapılan değiklikler görüntülenmiştir.
-          Aynı script kodları projemde search ve search4 metodları içinde kullanılmıştır.
ÇALIŞAN EKRAN GÖRÜNTÜSÜ
GİTHUP LİNK
https://github.com/Huseyincobanoglu/ileri-veritabani


           Geosocial Networking hakkında bilgilendirme

Geosocial ağ, coğrafi kodlama ve coğrafi etiketleme gibi yetenekleri olan ve coğrafi hizmetler veren  sosyal ağ türüdür. Kullanıcıdan gönderilen konum verisi ile diğer sosyal ağlar, kullanıcı izni ile koordine edilerek  kişiler birbiri ile coğrafi olarak sosyalleştirilmesi hedeflenir.
Örnek olarak bugün kullandığımız swarm, foursquare, runkeeper  gibi uygulamalar sayılabilir.


Location-Based Service Hakkında Bilgilendirme


Konum tabanlı hizmetler kişinin mobil cihazında aldığı konum bilgisine göre hizmetler vermeyi amaçlayan servislerdir. Konum tabanlı hizmetler birçok alanda kullanılmaktadır, bunlara örnek vermek gerekirse; sağlık sektöründe ( en yakın hastane, eczane),araç takip sistemlerinde, en yakın bankamatik bulma,yakındaki restorantlar, eğlence yerleri, oteller gibi alanlarda kişinin konumuna göre ihtiyaç duyduğu hizmeti en kısa yoldan ve hızlıca almasını sağlar. 
 NOKİA SPORT, RUNKEEPER, FOURSQUARE-SWARM gibi uygulamalar ne yapar,ne amaçla kullanılır.

1.) Kullanıcılar temel olarak, bu uygulamalarla bulundukları yeri haritadan çekip, paylaşımda bulunabiliyor.
2.) Swar uygulamasında, check-in yaparak yakında bulunan arkadaşları bulmak, iletişime geçmek maksatlı kullanılır.Aynı zamanda sosyal etkileşim platformu halindedir.
3.) Bu uygulamalarla bulunduğunuz konumlar, kendi hesabınızdaki veritabanında tutulur.Diğer etkileşimde olduğunuz kullanıcıların veritabanındaki veriler sayesinde geçmişte nerede olduğunuzu, tarih bilgisi ve yorumlarla birlikte tutar.
4.)Ayrıca diğer kullanıcılarında bulunduğu yerler, anlık olarak alınarak size olan uzaklığı hesaplanır.
5.)Nokia Sport, Runkeeper gibi uygulamalar gps' i kullanarak bulunulan yeri, yol alınan mesafeyi, anlık ve ortalama hızı, güzergahı işaretlemegibi işlevleri bulunur. Güzergahı Google Map üzerinde görebiliyoruz. Street team olarak belirlediğimiz arkadailarımızın ya dabulunduğumuz lokasyona yakın diğer runkeeper kullanıcıları ile motivasyon amaçlı aktiviteleri paylaşıp karşılaştırabiliriz.

NOKİA SPORT
·         Parça ve performansları analiz, ilerlemeyi izlemek
·         Kişisel egzersiz günlüğü, tüm egzersiz verileri, hız ve yükseklik,  yakılan kaloriler ve toplam yapılan egzersiz planı incelemek
·         Kullanım haritalar, zaman ve mesafe hesap makineleri
·         Sports Tracker, Facebook ve Twitter ve diğer sosyal paylaşın sitelerinde egzersiz verilerini paylaşma olanağı, Fotoğraf çekme özelliği
·         Bluetooth kalp hızı kemer ile Polar Wearlink + verici destekleme



RUNKEEPER
·         GPS yeteneklerini kullanarak bir koşucunun mesafe, zaman, hız, tempo (pace), zaman, yakılan kalori miktarı, eğim ve harita üzerindeki rotasını gösterme.
·         Birde web sitesi hizmeti de sunuyor uygulamanın geliştiricileri.
·         Çalışmalarınızın tüm verisi, harita üzerinde işaretlenmiş rotası, eğim, hız vb. grafikleri içeren kayıtlar isterseniz herkese açık isterseniz ise size özel databaselerde  saklanıyor.
FOURSQUARE - SWARM
·         Foursquare, mobil cihazlardaki GPS teknolojisinden faydalanan, kullanıcıların bulundukları ortamda check-in yapmasına olanak tanıyan ve çeşitli ödül sistemleriyle katılımı arttırmayı hedefleyen mobil bir sosyal ağ hizmeti.
·         internet erişimi olan mobil bir cihaza ihtiyacınız var.
·         Arkadaş olarak Foursquare listenize eklediğiniz kişilerin check-in durumlarını görürsünüz.
·         GPS’in konumunuzu algılaması sonucunda Foursquare size çeşitli mekanları öneriyor ve size yakın olan yerlere check-in yapabiliyorsunuz. Size yakın olan yerleri mekanın özelliğine göre aratabiliyorsunuz.Restoranlar, kafeler, gece klupleri,dükkanlar,açık hava mekanları…
·         Swarm temel olarak foursquare devamı niteliğindedir.


DATABASE' E SPATİAL TYPE VERİ EKLEME VE İLGİLİ İŞLEMLER YAPMA

1.) Proje Microsoft Sql Server Management Studio kullanacağız.

2.) İlk olarak MARİNE_TAKİP adında bir database olusturalım:
           
            CREATE DATABASE MARİNE_TAKİP

            USE MARİNE_TAKİP


3.) Olusturduğumuz bu database' e " tekne " adında bir table olusturalım:

            CREATE TABLE tekne (id int primarykey, tekne_ad nvarchar(20), marine                                                         nvarchar(20), konum geography)

4.) Olusturduğumuz bu tablonun Column Name leri sırasıyla id, tekne_ad, marine, konum olarak belirleyelim.Data Type' larını sırasıyla int, nchar, nchar ve söz konusu ödevimizin yapılış amacı olan Spatial Type olan geography.Her column Not Allow nulls yapılarak değer girilmesini zorunlu hale getirelim.

5.) Bu yeni tablomuza değerler girelim.Bunu için şu iki komutu kullanalım:

INSERT INTO tekne(id, tekne_ad, marine, konum) VALUES(1, 'seabird', 'canakkale',geography::STGeomFromText('POINT(40.123 26.123)', 4326);

INSERT INTO tekne(id, tekne_ad, marine, konum) VALUES(2, 'tansever', 'antalya',geography::STGeomFromText('POINT(36.123 30.123)', 4326);

Böylece tablomuzun iki satırı doldurulmuş olacak.Burada önemli olan konu database  Spatial type verinin nasıl atandığını görmektir. Görüldüğü üzere konum bilgisini girmek amcıyla kullandığımız komutta geometry spatial type tanımlanmaktadır.Geometry türünde POINT örneği tanımladık.POINT' le bulunduğumuz konumlar enlem ve boylam olarak verilmektedir, parantez içlerine bu değerleri giriyoruz. Devamında yer alan 4326  ise bulunduğumuz konumun uluslararası çoğrafya sisteminde tanımlı olduğu alanı göstermektedir.POINT yanında LINESTRING, POLYGON, MULTIPOINT, MULTILINESTRING, MULTIPOLYGON gibi türlerde tanımlanmaktadır.






ÇALIŞTIRILAN KOMUTLAR:

SELECT *
FROM tekne;


SELECT konum.STAsText()
FROM tekne;


SELECT tekne_ad,konum.STAsText() as konum
FROM tekne;


SELECT tekne_ad,konum.STAsText() as konum
FROM tekne
WHERE id='1';


DECLARE @marine geography
SELECT @marine = tekne.konum
FROM tekne
WHERE id= '1'


SELECT t2.*,t2.konum.STAsText() as konum
FROM tekne t1, tekne t2
WHERE  t1.tekne_ad='seabird' and  t1.konum.STDistance(t2.konum)<200*1000
ORDER BY t1.konum.STDistance(t2.konum) DESC


SELECT t2.*,t1.konum.STDistance(t2.konum) as mesafe
FROM tekne t1, tekne t2
WHERE  t1.tekne_ad='tansever' and  t1.konum.STDistance(t2.konum)<200*1000

ORDER BY mesafe DESC

Tekne Takip ve Marine Yönetim Sistemi Proje Tanımı

TEKNE TAKİP VE MARİNE YÖNETİM SİSTEMİ

 1)Projenin Tanımı ve Amacı

      Proje Tekne Takip ve Marine Yönetim Sistemi olarak adlandırılmaktadır.Bu proje yardımıyla marinemizde bulunan teknelerin her birinin, hem marine yönetimi hem de tekne sahibi tarafından anlık olarak konum bilgisinin alınması sağlanmaktadır.Alınan konum bilgileri yardımıyla veri tabanı olusturulup, teknemizin tarihlere göre izlediği rota bilgisine ulasılabilmektedir.Ayrıca olusturulmus veri tabanına teknin ortalama hızı, yol aldığı mil miktarı, seyir sonu yakıt tüketimi gibi bilgiler yer almaktadır.Bu sistemle tekne sahibi ve marine yönetimi ortak veri tabanını kullanarak koordineli bir şekilde teknenin güvenliğini sağlayacaktır.

 2)Projede Olusturulacak İşlevler

      a) Teknelerin deniz üzerindeki anlık konum ve hız bilgisinin bulunması
      b) Teknenin izleyceği rotanın çizilmesi
      c) Teknenin yabancı devlet kara sularına girişinin kontrolde tutulması
      d) Markalama işlev eklenerek teknenin daha önce demir attığı yerlerin bilinmesi
      e) Marine içinde farklı bir yere alındığında rahatlıkla konumunun bulunması
      f) Teknenin bir limandan diğer bir limana tarnsferi sırasında rotayı belirleyip bu rotayı takip                     etmişmi diye kontrol edilmesi
      g) Teknemizin kimlik bilgilerinin kayıt altına alınması
      h) Teknemizin seyirde bulunduğu rota üzerindeki hız bilgisinin,rota bilgisinin ve seyir sonu yakıt            tüketimi bilgisinin veri tabnında tutulması
      ı) Marine yönetimi için yeni tekne ekleme ve çıkarma işlemlerinin yapılması
      i) Belirlenen bir mesafeye olan uzaklığın bulunması

 3) Projenin Yapım Aşamaları

 a) Sisteme tekne sahibi ve marine yönetimi olamak üzere 2 giriş yapılmalıdır

 Tekne Sahibi
 I)Teknenin anlık konum ve hız bilgisini alamalı
 II)Günlük yakıt tüketimini takip edebilmeli
 III)Çeşitli amaçlarla markalama işlemi yapabilmeli
 IV)Rota belirleyebilmeli

Marine Yönetimi
I)Teknenin anlık konum ve hız bilgisini almalıdır
II)Yeni tekne ekleme ve çıkarma işlemlerinin
III)Rota belirleyebilmeli

4) Projede Kullanılacak Yazılım  ve Teknolojiler

C# ,ASP.Net,ORM,Google Map ve GPS modülü